diff options
author | furszy <matiasfurszyfer@protonmail.com> | 2022-08-19 11:13:41 -0300 |
---|---|---|
committer | furszy <matiasfurszyfer@protonmail.com> | 2022-11-21 17:30:00 -0300 |
commit | ee7a984f85015b610be4929b7c35cb501c1fbf7c (patch) | |
tree | 5524e76c9617f91641a2c29a25312379618bacfb | |
parent | cc5a5e81217506ec6f9fff34056290f8f40a7396 (diff) |
refactor: unify test/util/wallet.h with wallet/test/util.h
files share the same purpose, and we shouldn't have wallet code
inside the test directory.
This later is needed to use wallet util functions in the bench
and test binaries without be forced to duplicate them.
-rw-r--r-- | src/Makefile.test.include | 2 | ||||
-rw-r--r-- | src/Makefile.test_util.include | 17 | ||||
-rw-r--r-- | src/bench/block_assemble.cpp | 1 | ||||
-rw-r--r-- | src/bench/wallet_balance.cpp | 4 | ||||
-rw-r--r-- | src/bench/wallet_create_tx.cpp | 2 | ||||
-rw-r--r-- | src/bench/wallet_loading.cpp | 2 | ||||
-rw-r--r-- | src/test/util/wallet.cpp | 32 | ||||
-rw-r--r-- | src/test/util/wallet.h | 29 | ||||
-rw-r--r-- | src/wallet/test/util.cpp | 22 | ||||
-rw-r--r-- | src/wallet/test/util.h | 8 |
10 files changed, 41 insertions, 78 deletions
diff --git a/src/Makefile.test.include b/src/Makefile.test.include index 9a9424e84c..74c30f1caf 100644 --- a/src/Makefile.test.include +++ b/src/Makefile.test.include @@ -199,8 +199,6 @@ FUZZ_WALLET_SRC += \ endif # USE_SQLITE BITCOIN_TEST_SUITE += \ - wallet/test/util.cpp \ - wallet/test/util.h \ wallet/test/wallet_test_fixture.cpp \ wallet/test/wallet_test_fixture.h \ wallet/test/init_test_fixture.cpp \ diff --git a/src/Makefile.test_util.include b/src/Makefile.test_util.include index d142572b27..a4e8b3f842 100644 --- a/src/Makefile.test_util.include +++ b/src/Makefile.test_util.include @@ -18,8 +18,11 @@ TEST_UTIL_H = \ test/util/str.h \ test/util/transaction_utils.h \ test/util/txmempool.h \ - test/util/validation.h \ - test/util/wallet.h + test/util/validation.h + +if ENABLE_WALLET +TEST_UTIL_H += wallet/test/util.h +endif # ENABLE_WALLET libtest_util_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) $(BOOST_CPPFLAGS) libtest_util_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) @@ -33,6 +36,10 @@ libtest_util_a_SOURCES = \ test/util/str.cpp \ test/util/transaction_utils.cpp \ test/util/txmempool.cpp \ - test/util/validation.cpp \ - test/util/wallet.cpp \ - $(TEST_UTIL_H) + test/util/validation.cpp + +if ENABLE_WALLET +libtest_util_a_SOURCES += wallet/test/util.cpp +endif # ENABLE_WALLET + +libtest_util_a_SOURCES += $(TEST_UTIL_H) diff --git a/src/bench/block_assemble.cpp b/src/bench/block_assemble.cpp index 09be011fda..69258377d5 100644 --- a/src/bench/block_assemble.cpp +++ b/src/bench/block_assemble.cpp @@ -8,7 +8,6 @@ #include <test/util/mining.h> #include <test/util/script.h> #include <test/util/setup_common.h> -#include <test/util/wallet.h> #include <txmempool.h> #include <validation.h> diff --git a/src/bench/wallet_balance.cpp b/src/bench/wallet_balance.cpp index 22d99c0e29..5a52774a8e 100644 --- a/src/bench/wallet_balance.cpp +++ b/src/bench/wallet_balance.cpp @@ -7,7 +7,7 @@ #include <node/context.h> #include <test/util/mining.h> #include <test/util/setup_common.h> -#include <test/util/wallet.h> +#include <wallet/test/util.h> #include <validationinterface.h> #include <wallet/receive.h> #include <wallet/wallet.h> @@ -20,6 +20,8 @@ using wallet::DBErrors; using wallet::GetBalance; using wallet::WALLET_FLAG_DESCRIPTORS; +const std::string ADDRESS_BCRT1_UNSPENDABLE = "bcrt1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3xueyj"; + static void WalletBalance(benchmark::Bench& bench, const bool set_dirty, const bool add_mine) { const auto test_setup = MakeNoLogFileContext<const TestingSetup>(); diff --git a/src/bench/wallet_create_tx.cpp b/src/bench/wallet_create_tx.cpp index 8f5c50872b..3cbf2c9008 100644 --- a/src/bench/wallet_create_tx.cpp +++ b/src/bench/wallet_create_tx.cpp @@ -9,9 +9,9 @@ #include <kernel/chain.h> #include <node/context.h> #include <test/util/setup_common.h> -#include <test/util/wallet.h> #include <validation.h> #include <wallet/spend.h> +#include <wallet/test/util.h> #include <wallet/wallet.h> using wallet::CWallet; diff --git a/src/bench/wallet_loading.cpp b/src/bench/wallet_loading.cpp index 8bfaf3044b..6c9936ccd9 100644 --- a/src/bench/wallet_loading.cpp +++ b/src/bench/wallet_loading.cpp @@ -7,7 +7,7 @@ #include <node/context.h> #include <test/util/mining.h> #include <test/util/setup_common.h> -#include <test/util/wallet.h> +#include <wallet/test/util.h> #include <util/translation.h> #include <validationinterface.h> #include <wallet/context.h> diff --git a/src/test/util/wallet.cpp b/src/test/util/wallet.cpp deleted file mode 100644 index 2dadffafb4..0000000000 --- a/src/test/util/wallet.cpp +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) 2019-2021 The Bitcoin Core developers -// Distributed under the MIT software license, see the accompanying -// file COPYING or http://www.opensource.org/licenses/mit-license.php. - -#include <test/util/wallet.h> - -#include <key_io.h> -#include <outputtype.h> -#include <script/standard.h> -#ifdef ENABLE_WALLET -#include <util/check.h> -#include <util/translation.h> -#include <wallet/wallet.h> -#endif - -using wallet::CWallet; - -const std::string ADDRESS_BCRT1_UNSPENDABLE = "bcrt1qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq3xueyj"; - -#ifdef ENABLE_WALLET -std::string getnewaddress(CWallet& w) -{ - constexpr auto output_type = OutputType::BECH32; - return EncodeDestination(getNewDestination(w, output_type)); -} - -CTxDestination getNewDestination(CWallet& w, OutputType output_type) -{ - return *Assert(w.GetNewDestination(output_type, "")); -} - -#endif // ENABLE_WALLET diff --git a/src/test/util/wallet.h b/src/test/util/wallet.h deleted file mode 100644 index d8f1db3fd7..0000000000 --- a/src/test/util/wallet.h +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) 2019 The Bitcoin Core developers -// Distributed under the MIT software license, see the accompanying -// file COPYING or http://www.opensource.org/licenses/mit-license.php. - -#ifndef BITCOIN_TEST_UTIL_WALLET_H -#define BITCOIN_TEST_UTIL_WALLET_H - -#include <outputtype.h> -#include <string> - -namespace wallet { -class CWallet; -} // namespace wallet - -// Constants // - -extern const std::string ADDRESS_BCRT1_UNSPENDABLE; - -// RPC-like // - -/** Import the address to the wallet */ -void importaddress(wallet::CWallet& wallet, const std::string& address); -/** Returns a new encoded destination from the wallet (hardcoded to BECH32) */ -std::string getnewaddress(wallet::CWallet& w); -/** Returns a new destination, of an specific type, from the wallet */ -CTxDestination getNewDestination(wallet::CWallet& w, OutputType output_type); - - -#endif // BITCOIN_TEST_UTIL_WALLET_H diff --git a/src/wallet/test/util.cpp b/src/wallet/test/util.cpp index ab72721f9d..fb15c1a451 100644 --- a/src/wallet/test/util.cpp +++ b/src/wallet/test/util.cpp @@ -11,8 +11,6 @@ #include <wallet/wallet.h> #include <wallet/walletdb.h> -#include <boost/test/unit_test.hpp> - #include <memory> namespace wallet { @@ -39,10 +37,22 @@ std::unique_ptr<CWallet> CreateSyncedWallet(interfaces::Chain& chain, CChain& cc WalletRescanReserver reserver(*wallet); reserver.reserve(); CWallet::ScanResult result = wallet->ScanForWalletTransactions(cchain.Genesis()->GetBlockHash(), /*start_height=*/0, /*max_height=*/{}, reserver, /*fUpdate=*/false, /*save_progress=*/false); - BOOST_CHECK_EQUAL(result.status, CWallet::ScanResult::SUCCESS); - BOOST_CHECK_EQUAL(result.last_scanned_block, cchain.Tip()->GetBlockHash()); - BOOST_CHECK_EQUAL(*result.last_scanned_height, cchain.Height()); - BOOST_CHECK(result.last_failed_block.IsNull()); + assert(result.status == CWallet::ScanResult::SUCCESS); + assert(result.last_scanned_block == cchain.Tip()->GetBlockHash()); + assert(*result.last_scanned_height == cchain.Height()); + assert(result.last_failed_block.IsNull()); return wallet; } + +std::string getnewaddress(CWallet& w) +{ + constexpr auto output_type = OutputType::BECH32; + return EncodeDestination(getNewDestination(w, output_type)); +} + +CTxDestination getNewDestination(CWallet& w, OutputType output_type) +{ + return *Assert(w.GetNewDestination(output_type, "")); +} + } // namespace wallet diff --git a/src/wallet/test/util.h b/src/wallet/test/util.h index 712d0251cd..7fb496c82a 100644 --- a/src/wallet/test/util.h +++ b/src/wallet/test/util.h @@ -5,11 +5,13 @@ #ifndef BITCOIN_WALLET_TEST_UTIL_H #define BITCOIN_WALLET_TEST_UTIL_H +#include <script/standard.h> #include <memory> class ArgsManager; class CChain; class CKey; +enum class OutputType; namespace interfaces { class Chain; } // namespace interfaces @@ -18,6 +20,12 @@ namespace wallet { class CWallet; std::unique_ptr<CWallet> CreateSyncedWallet(interfaces::Chain& chain, CChain& cchain, ArgsManager& args, const CKey& key); + +/** Returns a new encoded destination from the wallet (hardcoded to BECH32) */ +std::string getnewaddress(CWallet& w); +/** Returns a new destination, of an specific type, from the wallet */ +CTxDestination getNewDestination(CWallet& w, OutputType output_type); + } // namespace wallet #endif // BITCOIN_WALLET_TEST_UTIL_H |