diff options
author | Andrew Chow <achow101-github@achow101.com> | 2019-06-06 10:00:00 +0200 |
---|---|---|
committer | Andrew Chow <achow101-github@achow101.com> | 2019-06-19 18:06:30 -0400 |
commit | e61de6306fd89fe9aae90253062e7b1b20343f8a (patch) | |
tree | f777e92758b6e5bba1ce33c97889b0e19c1b9671 /src/wallet/test/ismine_tests.cpp | |
parent | 7c611e20007bf5face34d33dffa26c8db67e29ec (diff) | |
download | bitcoin-e61de6306fd89fe9aae90253062e7b1b20343f8a.tar.xz |
Change ismine to take a CWallet instead of CKeyStore
Diffstat (limited to 'src/wallet/test/ismine_tests.cpp')
-rw-r--r-- | src/wallet/test/ismine_tests.cpp | 63 |
1 files changed, 42 insertions, 21 deletions
diff --git a/src/wallet/test/ismine_tests.cpp b/src/wallet/test/ismine_tests.cpp index 37c33cbee0..0cae055676 100644 --- a/src/wallet/test/ismine_tests.cpp +++ b/src/wallet/test/ismine_tests.cpp @@ -3,12 +3,12 @@ // file COPYING or http://www.opensource.org/licenses/mit-license.php. #include <key.h> -#include <keystore.h> #include <script/script.h> #include <script/script_error.h> #include <script/standard.h> #include <test/setup_common.h> #include <wallet/ismine.h> +#include <wallet/wallet.h> #include <boost/test/unit_test.hpp> @@ -27,13 +27,15 @@ BOOST_AUTO_TEST_CASE(ismine_standard) CKey uncompressedKey; uncompressedKey.MakeNewKey(false); CPubKey uncompressedPubkey = uncompressedKey.GetPubKey(); + std::unique_ptr<interfaces::Chain> chain = interfaces::MakeChain(); CScript scriptPubKey; isminetype result; // P2PK compressed { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); scriptPubKey = GetScriptForRawPubKey(pubkeys[0]); // Keystore does not have key @@ -48,7 +50,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // P2PK uncompressed { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); scriptPubKey = GetScriptForRawPubKey(uncompressedPubkey); // Keystore does not have key @@ -63,7 +66,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // P2PKH compressed { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); scriptPubKey = GetScriptForDestination(PKHash(pubkeys[0])); // Keystore does not have key @@ -78,7 +82,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // P2PKH uncompressed { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); scriptPubKey = GetScriptForDestination(PKHash(uncompressedPubkey)); // Keystore does not have key @@ -93,7 +98,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // P2SH { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); CScript redeemScript = GetScriptForDestination(PKHash(pubkeys[0])); scriptPubKey = GetScriptForDestination(ScriptHash(redeemScript)); @@ -115,7 +121,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // (P2PKH inside) P2SH inside P2SH (invalid) { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); CScript redeemscript_inner = GetScriptForDestination(PKHash(pubkeys[0])); CScript redeemscript = GetScriptForDestination(ScriptHash(redeemscript_inner)); @@ -131,7 +138,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // (P2PKH inside) P2SH inside P2WSH (invalid) { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); CScript redeemscript = GetScriptForDestination(PKHash(pubkeys[0])); CScript witnessscript = GetScriptForDestination(ScriptHash(redeemscript)); @@ -147,7 +155,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // P2WPKH inside P2WSH (invalid) { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); CScript witnessscript = GetScriptForDestination(WitnessV0KeyHash(PKHash(pubkeys[0]))); scriptPubKey = GetScriptForDestination(WitnessV0ScriptHash(witnessscript)); @@ -161,7 +170,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // (P2PKH inside) P2WSH inside P2WSH (invalid) { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); CScript witnessscript_inner = GetScriptForDestination(PKHash(pubkeys[0])); CScript witnessscript = GetScriptForDestination(WitnessV0ScriptHash(witnessscript_inner)); @@ -177,7 +187,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // P2WPKH compressed { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); BOOST_CHECK(keystore.AddKey(keys[0])); scriptPubKey = GetScriptForDestination(WitnessV0KeyHash(PKHash(pubkeys[0]))); @@ -190,7 +201,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // P2WPKH uncompressed { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); BOOST_CHECK(keystore.AddKey(uncompressedKey)); scriptPubKey = GetScriptForDestination(WitnessV0KeyHash(PKHash(uncompressedPubkey))); @@ -207,7 +219,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // scriptPubKey multisig { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); scriptPubKey = GetScriptForMultisig(2, {uncompressedPubkey, pubkeys[1]}); @@ -236,7 +249,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // P2SH multisig { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); BOOST_CHECK(keystore.AddKey(uncompressedKey)); BOOST_CHECK(keystore.AddKey(keys[1])); @@ -255,7 +269,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // P2WSH multisig with compressed keys { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); BOOST_CHECK(keystore.AddKey(keys[0])); BOOST_CHECK(keystore.AddKey(keys[1])); @@ -279,7 +294,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // P2WSH multisig with uncompressed key { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); BOOST_CHECK(keystore.AddKey(uncompressedKey)); BOOST_CHECK(keystore.AddKey(keys[1])); @@ -303,7 +319,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // P2WSH multisig wrapped in P2SH { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); CScript witnessScript = GetScriptForMultisig(2, {pubkeys[0], pubkeys[1]}); CScript redeemScript = GetScriptForDestination(WitnessV0ScriptHash(witnessScript)); @@ -328,7 +345,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // OP_RETURN { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); BOOST_CHECK(keystore.AddKey(keys[0])); scriptPubKey.clear(); @@ -340,7 +358,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // witness unspendable { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); BOOST_CHECK(keystore.AddKey(keys[0])); scriptPubKey.clear(); @@ -352,7 +371,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // witness unknown { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); BOOST_CHECK(keystore.AddKey(keys[0])); scriptPubKey.clear(); @@ -364,7 +384,8 @@ BOOST_AUTO_TEST_CASE(ismine_standard) // Nonstandard { - CBasicKeyStore keystore; + CWallet keystore(chain.get(), WalletLocation(), WalletDatabase::CreateDummy()); + LOCK(keystore.cs_wallet); BOOST_CHECK(keystore.AddKey(keys[0])); scriptPubKey.clear(); |