From 489ebb7b34c403a3ce78ff6fb271f8e6ecb47304 Mon Sep 17 00:00:00 2001 From: Ivan Metlushko Date: Mon, 18 Jan 2021 09:26:33 +0100 Subject: wallet: make chain optional for CWallet::Create --- src/wallet/test/wallet_tests.cpp | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) (limited to 'src/wallet/test/wallet_tests.cpp') diff --git a/src/wallet/test/wallet_tests.cpp b/src/wallet/test/wallet_tests.cpp index 171fa67b85..512374c34f 100644 --- a/src/wallet/test/wallet_tests.cpp +++ b/src/wallet/test/wallet_tests.cpp @@ -38,7 +38,7 @@ static_assert(WALLET_INCREMENTAL_RELAY_FEE >= DEFAULT_INCREMENTAL_RELAY_FEE, "wa BOOST_FIXTURE_TEST_SUITE(wallet_tests, WalletTestingSetup) -static std::shared_ptr TestLoadWallet(interfaces::Chain& chain) +static std::shared_ptr TestLoadWallet(interfaces::Chain* chain) { DatabaseOptions options; DatabaseStatus status; @@ -46,7 +46,9 @@ static std::shared_ptr TestLoadWallet(interfaces::Chain& chain) std::vector warnings; auto database = MakeWalletDatabase("", options, status, error); auto wallet = CWallet::Create(chain, "", std::move(database), options.create_flags, error, warnings); - wallet->postInitProcess(); + if (chain) { + wallet->postInitProcess(); + } return wallet; } @@ -689,7 +691,7 @@ BOOST_FIXTURE_TEST_CASE(CreateWallet, TestChain100Setup) { gArgs.ForceSetArg("-unsafesqlitesync", "1"); // Create new wallet with known key and unload it. - auto wallet = TestLoadWallet(*m_node.chain); + auto wallet = TestLoadWallet(m_node.chain.get()); CKey key; key.MakeNewKey(true); AddKey(*wallet, key); @@ -729,7 +731,7 @@ BOOST_FIXTURE_TEST_CASE(CreateWallet, TestChain100Setup) // Reload wallet and make sure new transactions are detected despite events // being blocked - wallet = TestLoadWallet(*m_node.chain); + wallet = TestLoadWallet(m_node.chain.get()); BOOST_CHECK(rescan_completed); BOOST_CHECK_EQUAL(addtx_count, 2); { @@ -769,7 +771,7 @@ BOOST_FIXTURE_TEST_CASE(CreateWallet, TestChain100Setup) ENTER_CRITICAL_SECTION(wallet->wallet()->cs_wallet); ENTER_CRITICAL_SECTION(cs_wallets); }); - wallet = TestLoadWallet(*m_node.chain); + wallet = TestLoadWallet(m_node.chain.get()); BOOST_CHECK_EQUAL(addtx_count, 4); { LOCK(wallet->cs_wallet); @@ -781,10 +783,17 @@ BOOST_FIXTURE_TEST_CASE(CreateWallet, TestChain100Setup) TestUnloadWallet(std::move(wallet)); } +BOOST_FIXTURE_TEST_CASE(CreateWalletWithoutChain, BasicTestingSetup) +{ + auto wallet = TestLoadWallet(nullptr); + BOOST_CHECK(wallet); + UnloadWallet(std::move(wallet)); +} + BOOST_FIXTURE_TEST_CASE(ZapSelectTx, TestChain100Setup) { gArgs.ForceSetArg("-unsafesqlitesync", "1"); - auto wallet = TestLoadWallet(*m_node.chain); + auto wallet = TestLoadWallet(m_node.chain.get()); CKey key; key.MakeNewKey(true); AddKey(*wallet, key); -- cgit v1.2.3