TEST(wallet_tests, GetNoteNullifier) { CWallet wallet; auto sk = libzcash::SpendingKey::random(); auto address = sk.address(); auto dec = ZCNoteDecryption(sk.viewing_key()); auto wtx = GetValidReceive(sk, 10, true); auto note = GetNote(sk, wtx, 0, 1); auto nullifier = note.nullifier(sk); auto hSig = wtx.vjoinsplit[0].h_sig( *params, wtx.joinSplitPubKey); auto ret = wallet.GetNoteNullifier( wtx.vjoinsplit[0], address, dec, hSig, 1); EXPECT_NE(nullifier, ret); wallet.AddSpendingKey(sk); ret = wallet.GetNoteNullifier( wtx.vjoinsplit[0], address, dec, hSig, 1); EXPECT_EQ(nullifier, ret); }