Skip to content

Commit f67a385

Browse files
committed
wallet, tests: Replace usage of dummy db with mockable db
1 parent 33c6245 commit f67a385

File tree

4 files changed

+53
-50
lines changed

4 files changed

+53
-50
lines changed

src/bench/coin_selection.cpp

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include <wallet/coinselection.h>
1010
#include <wallet/spend.h>
1111
#include <wallet/wallet.h>
12+
#include <wallet/test/util.h>
1213

1314
#include <set>
1415

@@ -20,7 +21,7 @@ using wallet::CWallet;
2021
using wallet::CWalletTx;
2122
using wallet::CoinEligibilityFilter;
2223
using wallet::CoinSelectionParams;
23-
using wallet::CreateDummyWalletDatabase;
24+
using wallet::CreateMockableWalletDatabase;
2425
using wallet::OutputGroup;
2526
using wallet::SelectCoinsBnB;
2627
using wallet::TxStateInactive;
@@ -46,7 +47,7 @@ static void CoinSelection(benchmark::Bench& bench)
4647
{
4748
NodeContext node;
4849
auto chain = interfaces::MakeChain(node);
49-
CWallet wallet(chain.get(), "", CreateDummyWalletDatabase());
50+
CWallet wallet(chain.get(), "", CreateMockableWalletDatabase());
5051
std::vector<std::unique_ptr<CWalletTx>> wtxs;
5152
LOCK(wallet.cs_wallet);
5253

src/wallet/test/ismine_tests.cpp

Lines changed: 39 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
#include <test/util/setup_common.h>
1111
#include <wallet/types.h>
1212
#include <wallet/wallet.h>
13+
#include <wallet/test/util.h>
1314

1415
#include <boost/test/unit_test.hpp>
1516

@@ -55,7 +56,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
5556

5657
// P2PK compressed - Legacy
5758
{
58-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
59+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
5960
keystore.SetupLegacyScriptPubKeyMan();
6061
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
6162
scriptPubKey = GetScriptForRawPubKey(pubkeys[0]);
@@ -74,7 +75,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
7475

7576
// P2PK compressed - Descriptor
7677
{
77-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
78+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
7879
std::string desc_str = "pk(" + EncodeSecret(keys[0]) + ")";
7980

8081
auto spk_manager = CreateDescriptor(keystore, desc_str, true);
@@ -86,7 +87,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
8687

8788
// P2PK uncompressed - Legacy
8889
{
89-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
90+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
9091
keystore.SetupLegacyScriptPubKeyMan();
9192
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
9293
scriptPubKey = GetScriptForRawPubKey(uncompressedPubkey);
@@ -105,7 +106,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
105106

106107
// P2PK uncompressed - Descriptor
107108
{
108-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
109+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
109110
std::string desc_str = "pk(" + EncodeSecret(uncompressedKey) + ")";
110111

111112
auto spk_manager = CreateDescriptor(keystore, desc_str, true);
@@ -117,7 +118,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
117118

118119
// P2PKH compressed - Legacy
119120
{
120-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
121+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
121122
keystore.SetupLegacyScriptPubKeyMan();
122123
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
123124
scriptPubKey = GetScriptForDestination(PKHash(pubkeys[0]));
@@ -136,7 +137,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
136137

137138
// P2PKH compressed - Descriptor
138139
{
139-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
140+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
140141
std::string desc_str = "pkh(" + EncodeSecret(keys[0]) + ")";
141142

142143
auto spk_manager = CreateDescriptor(keystore, desc_str, true);
@@ -148,7 +149,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
148149

149150
// P2PKH uncompressed - Legacy
150151
{
151-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
152+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
152153
keystore.SetupLegacyScriptPubKeyMan();
153154
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
154155
scriptPubKey = GetScriptForDestination(PKHash(uncompressedPubkey));
@@ -167,7 +168,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
167168

168169
// P2PKH uncompressed - Descriptor
169170
{
170-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
171+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
171172
std::string desc_str = "pkh(" + EncodeSecret(uncompressedKey) + ")";
172173

173174
auto spk_manager = CreateDescriptor(keystore, desc_str, true);
@@ -179,7 +180,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
179180

180181
// P2SH - Legacy
181182
{
182-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
183+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
183184
keystore.SetupLegacyScriptPubKeyMan();
184185
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
185186

@@ -206,7 +207,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
206207

207208
// P2SH - Descriptor
208209
{
209-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
210+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
210211
std::string desc_str = "sh(pkh(" + EncodeSecret(keys[0]) + "))";
211212

212213
auto spk_manager = CreateDescriptor(keystore, desc_str, true);
@@ -219,7 +220,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
219220

220221
// (P2PKH inside) P2SH inside P2SH (invalid) - Legacy
221222
{
222-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
223+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
223224
keystore.SetupLegacyScriptPubKeyMan();
224225
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
225226

@@ -238,7 +239,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
238239

239240
// (P2PKH inside) P2SH inside P2SH (invalid) - Descriptor
240241
{
241-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
242+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
242243
std::string desc_str = "sh(sh(" + EncodeSecret(keys[0]) + "))";
243244

244245
auto spk_manager = CreateDescriptor(keystore, desc_str, false);
@@ -247,7 +248,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
247248

248249
// (P2PKH inside) P2SH inside P2WSH (invalid) - Legacy
249250
{
250-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
251+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
251252
keystore.SetupLegacyScriptPubKeyMan();
252253
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
253254

@@ -266,7 +267,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
266267

267268
// (P2PKH inside) P2SH inside P2WSH (invalid) - Descriptor
268269
{
269-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
270+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
270271
std::string desc_str = "wsh(sh(" + EncodeSecret(keys[0]) + "))";
271272

272273
auto spk_manager = CreateDescriptor(keystore, desc_str, false);
@@ -275,7 +276,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
275276

276277
// P2WPKH inside P2WSH (invalid) - Legacy
277278
{
278-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
279+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
279280
keystore.SetupLegacyScriptPubKeyMan();
280281
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
281282

@@ -292,7 +293,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
292293

293294
// P2WPKH inside P2WSH (invalid) - Descriptor
294295
{
295-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
296+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
296297
std::string desc_str = "wsh(wpkh(" + EncodeSecret(keys[0]) + "))";
297298

298299
auto spk_manager = CreateDescriptor(keystore, desc_str, false);
@@ -301,7 +302,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
301302

302303
// (P2PKH inside) P2WSH inside P2WSH (invalid) - Legacy
303304
{
304-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
305+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
305306
keystore.SetupLegacyScriptPubKeyMan();
306307
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
307308

@@ -320,7 +321,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
320321

321322
// (P2PKH inside) P2WSH inside P2WSH (invalid) - Descriptor
322323
{
323-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
324+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
324325
std::string desc_str = "wsh(wsh(" + EncodeSecret(keys[0]) + "))";
325326

326327
auto spk_manager = CreateDescriptor(keystore, desc_str, false);
@@ -329,7 +330,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
329330

330331
// P2WPKH compressed - Legacy
331332
{
332-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
333+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
333334
keystore.SetupLegacyScriptPubKeyMan();
334335
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
335336
BOOST_CHECK(keystore.GetLegacyScriptPubKeyMan()->AddKey(keys[0]));
@@ -345,7 +346,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
345346

346347
// P2WPKH compressed - Descriptor
347348
{
348-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
349+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
349350
std::string desc_str = "wpkh(" + EncodeSecret(keys[0]) + ")";
350351

351352
auto spk_manager = CreateDescriptor(keystore, desc_str, true);
@@ -357,7 +358,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
357358

358359
// P2WPKH uncompressed - Legacy
359360
{
360-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
361+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
361362
keystore.SetupLegacyScriptPubKeyMan();
362363
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
363364
BOOST_CHECK(keystore.GetLegacyScriptPubKeyMan()->AddKey(uncompressedKey));
@@ -378,7 +379,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
378379

379380
// P2WPKH uncompressed (invalid) - Descriptor
380381
{
381-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
382+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
382383
std::string desc_str = "wpkh(" + EncodeSecret(uncompressedKey) + ")";
383384

384385
auto spk_manager = CreateDescriptor(keystore, desc_str, false);
@@ -387,7 +388,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
387388

388389
// scriptPubKey multisig - Legacy
389390
{
390-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
391+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
391392
keystore.SetupLegacyScriptPubKeyMan();
392393
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
393394

@@ -422,7 +423,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
422423

423424
// scriptPubKey multisig - Descriptor
424425
{
425-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
426+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
426427
std::string desc_str = "multi(2, " + EncodeSecret(uncompressedKey) + ", " + EncodeSecret(keys[1]) + ")";
427428

428429
auto spk_manager = CreateDescriptor(keystore, desc_str, true);
@@ -434,7 +435,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
434435

435436
// P2SH multisig - Legacy
436437
{
437-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
438+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
438439
keystore.SetupLegacyScriptPubKeyMan();
439440
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
440441
BOOST_CHECK(keystore.GetLegacyScriptPubKeyMan()->AddKey(uncompressedKey));
@@ -457,7 +458,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
457458

458459
// P2SH multisig - Descriptor
459460
{
460-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
461+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
461462

462463
std::string desc_str = "sh(multi(2, " + EncodeSecret(uncompressedKey) + ", " + EncodeSecret(keys[1]) + "))";
463464

@@ -471,7 +472,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
471472

472473
// P2WSH multisig with compressed keys - Legacy
473474
{
474-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
475+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
475476
keystore.SetupLegacyScriptPubKeyMan();
476477
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
477478
BOOST_CHECK(keystore.GetLegacyScriptPubKeyMan()->AddKey(keys[0]));
@@ -500,7 +501,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
500501

501502
// P2WSH multisig with compressed keys - Descriptor
502503
{
503-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
504+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
504505

505506
std::string desc_str = "wsh(multi(2, " + EncodeSecret(keys[0]) + ", " + EncodeSecret(keys[1]) + "))";
506507

@@ -514,7 +515,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
514515

515516
// P2WSH multisig with uncompressed key - Legacy
516517
{
517-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
518+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
518519
keystore.SetupLegacyScriptPubKeyMan();
519520
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
520521
BOOST_CHECK(keystore.GetLegacyScriptPubKeyMan()->AddKey(uncompressedKey));
@@ -543,7 +544,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
543544

544545
// P2WSH multisig with uncompressed key (invalid) - Descriptor
545546
{
546-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
547+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
547548

548549
std::string desc_str = "wsh(multi(2, " + EncodeSecret(uncompressedKey) + ", " + EncodeSecret(keys[1]) + "))";
549550

@@ -553,7 +554,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
553554

554555
// P2WSH multisig wrapped in P2SH - Legacy
555556
{
556-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
557+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
557558
keystore.SetupLegacyScriptPubKeyMan();
558559
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
559560

@@ -583,7 +584,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
583584

584585
// P2WSH multisig wrapped in P2SH - Descriptor
585586
{
586-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
587+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
587588

588589
std::string desc_str = "sh(wsh(multi(2, " + EncodeSecret(keys[0]) + ", " + EncodeSecret(keys[1]) + ")))";
589590

@@ -598,7 +599,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
598599

599600
// Combo - Descriptor
600601
{
601-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
602+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
602603

603604
std::string desc_str = "combo(" + EncodeSecret(keys[0]) + ")";
604605

@@ -642,7 +643,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
642643

643644
// Taproot - Descriptor
644645
{
645-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
646+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
646647

647648
std::string desc_str = "tr(" + EncodeSecret(keys[0]) + ")";
648649

@@ -660,7 +661,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
660661

661662
// OP_RETURN
662663
{
663-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
664+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
664665
keystore.SetupLegacyScriptPubKeyMan();
665666
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
666667
BOOST_CHECK(keystore.GetLegacyScriptPubKeyMan()->AddKey(keys[0]));
@@ -675,7 +676,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
675676

676677
// witness unspendable
677678
{
678-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
679+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
679680
keystore.SetupLegacyScriptPubKeyMan();
680681
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
681682
BOOST_CHECK(keystore.GetLegacyScriptPubKeyMan()->AddKey(keys[0]));
@@ -690,7 +691,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
690691

691692
// witness unknown
692693
{
693-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
694+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
694695
keystore.SetupLegacyScriptPubKeyMan();
695696
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
696697
BOOST_CHECK(keystore.GetLegacyScriptPubKeyMan()->AddKey(keys[0]));
@@ -705,7 +706,7 @@ BOOST_AUTO_TEST_CASE(ismine_standard)
705706

706707
// Nonstandard
707708
{
708-
CWallet keystore(chain.get(), "", CreateDummyWalletDatabase());
709+
CWallet keystore(chain.get(), "", CreateMockableWalletDatabase());
709710
keystore.SetupLegacyScriptPubKeyMan();
710711
LOCK(keystore.GetLegacyScriptPubKeyMan()->cs_KeyStore);
711712
BOOST_CHECK(keystore.GetLegacyScriptPubKeyMan()->AddKey(keys[0]));

src/wallet/test/scriptpubkeyman_tests.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
#include <test/util/setup_common.h>
88
#include <wallet/scriptpubkeyman.h>
99
#include <wallet/wallet.h>
10+
#include <wallet/test/util.h>
1011

1112
#include <boost/test/unit_test.hpp>
1213

@@ -18,7 +19,7 @@ BOOST_FIXTURE_TEST_SUITE(scriptpubkeyman_tests, BasicTestingSetup)
1819
BOOST_AUTO_TEST_CASE(CanProvide)
1920
{
2021
// Set up wallet and keyman variables.
21-
CWallet wallet(m_node.chain.get(), "", CreateDummyWalletDatabase());
22+
CWallet wallet(m_node.chain.get(), "", CreateMockableWalletDatabase());
2223
LegacyScriptPubKeyMan& keyman = *wallet.GetOrCreateLegacyScriptPubKeyMan();
2324

2425
// Make a 1 of 2 multisig script

0 commit comments

Comments
 (0)