diff --git a/src/gtest/test_keys.cpp b/src/gtest/test_keys.cpp index 450bc5708..4b4ff8817 100644 --- a/src/gtest/test_keys.cpp +++ b/src/gtest/test_keys.cpp @@ -5,7 +5,7 @@ #include -TEST(Keys, DISABLED_EncodeAndDecodeSapling) +TEST(Keys, EncodeAndDecodeSapling) { SelectParams(CBaseChainParams::MAIN); diff --git a/src/key_io.cpp b/src/key_io.cpp index 636163638..7ffb61974 100644 --- a/src/key_io.cpp +++ b/src/key_io.cpp @@ -286,11 +286,7 @@ libzcash::PaymentAddress DecodePaymentAddress(const std::string& str) } data.clear(); auto bech = bech32::Decode(str); - bool allowSapling = Params().NetworkIDString() == "regtest" || ( - Params().NetworkIDString() == "test" && - GetBoolArg("-experimentalfeatures", false) && - GetBoolArg("-developersapling", false)); - if (allowSapling && bech.first == Params().Bech32HRP(CChainParams::SAPLING_PAYMENT_ADDRESS) && + if (bech.first == Params().Bech32HRP(CChainParams::SAPLING_PAYMENT_ADDRESS) && bech.second.size() == ConvertedSaplingPaymentAddressSize) { // Bech32 decoding data.reserve((bech.second.size() * 5) / 8); @@ -356,11 +352,7 @@ libzcash::SpendingKey DecodeSpendingKey(const std::string& str) } data.clear(); auto bech = bech32::Decode(str); - bool allowSapling = Params().NetworkIDString() == "regtest" || ( - Params().NetworkIDString() == "test" && - GetBoolArg("-experimentalfeatures", false) && - GetBoolArg("-developersapling", false)); - if (allowSapling && bech.first == Params().Bech32HRP(CChainParams::SAPLING_EXTENDED_SPEND_KEY) && + if (bech.first == Params().Bech32HRP(CChainParams::SAPLING_EXTENDED_SPEND_KEY) && bech.second.size() == ConvertedSaplingExtendedSpendingKeySize) { // Bech32 decoding data.reserve((bech.second.size() * 5) / 8); diff --git a/src/test/rpc_wallet_tests.cpp b/src/test/rpc_wallet_tests.cpp index 6b132d0a1..811b98bab 100644 --- a/src/test/rpc_wallet_tests.cpp +++ b/src/test/rpc_wallet_tests.cpp @@ -383,13 +383,12 @@ BOOST_AUTO_TEST_CASE(rpc_wallet_z_validateaddress) BOOST_CHECK_NO_THROW(retValue = CallRPC("z_validateaddress zs1z7rejlpsa98s2rrrfkwmaxu53e4ue0ulcrw0h4x5g8jl04tak0d3mm47vdtahatqrlkngh9slya")); resultObj = retValue.get_obj(); b = find_value(resultObj, "isvalid").get_bool(); - // TODO: Revert when we re-enable Sapling addresses on mainnet + BOOST_CHECK_EQUAL(b, true); + BOOST_CHECK_EQUAL(find_value(resultObj, "type").get_str(), "sapling"); + b = find_value(resultObj, "ismine").get_bool(); BOOST_CHECK_EQUAL(b, false); - // BOOST_CHECK_EQUAL(find_value(resultObj, "type").get_str(), "sapling"); - // b = find_value(resultObj, "ismine").get_bool(); - // BOOST_CHECK_EQUAL(b, false); - // BOOST_CHECK_EQUAL(find_value(resultObj, "diversifier").get_str(), "1787997c30e94f050c634d"); - // BOOST_CHECK_EQUAL(find_value(resultObj, "diversifiedtransmissionkey").get_str(), "34ed1f60f5db5763beee1ddbb37dd5f7e541d4d4fbdcc09fbfcc6b8e949bbe9d"); + BOOST_CHECK_EQUAL(find_value(resultObj, "diversifier").get_str(), "1787997c30e94f050c634d"); + BOOST_CHECK_EQUAL(find_value(resultObj, "diversifiedtransmissionkey").get_str(), "34ed1f60f5db5763beee1ddbb37dd5f7e541d4d4fbdcc09fbfcc6b8e949bbe9d"); } /* @@ -537,8 +536,6 @@ BOOST_AUTO_TEST_CASE(rpc_wallet_z_importwallet) */ BOOST_AUTO_TEST_CASE(rpc_wallet_z_importexport) { - SelectParams(CBaseChainParams::REGTEST); - LOCK2(cs_main, pwalletMain->cs_wallet); UniValue retValue; int n1 = 1000; // number of times to import/export diff --git a/src/wallet/rpcwallet.cpp b/src/wallet/rpcwallet.cpp index 39d019b92..82b98304a 100644 --- a/src/wallet/rpcwallet.cpp +++ b/src/wallet/rpcwallet.cpp @@ -3141,13 +3141,9 @@ UniValue z_getnewaddress(const UniValue& params, bool fHelp) addrType = params[0].get_str(); } - bool allowSapling = Params().NetworkIDString() == "regtest" || ( - Params().NetworkIDString() == "test" && - GetBoolArg("-experimentalfeatures", false) && - GetBoolArg("-developersapling", false)); if (addrType == ADDR_TYPE_SPROUT) { return EncodePaymentAddress(pwalletMain->GenerateNewZKey()); - } else if (addrType == ADDR_TYPE_SAPLING && allowSapling) { + } else if (addrType == ADDR_TYPE_SAPLING) { return EncodePaymentAddress(pwalletMain->GenerateNewSaplingZKey()); } else { throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid address type");