@@ -39,7 +39,6 @@ BOOST_FIXTURE_TEST_CASE(scan_for_wallet_transactions, TestChain100Setup)
39
39
auto chain = interfaces::MakeChain ();
40
40
41
41
// Cap last block file size, and mine new block in a new block file.
42
- const CBlockIndex* const null_block = nullptr ;
43
42
CBlockIndex* oldTip = chainActive.Tip ();
44
43
GetBlockFileInfo (oldTip->GetBlockPos ().nFile )->nSize = MAX_BLOCKFILE_SIZE;
45
44
CreateAndProcessBlock ({}, GetScriptForRawPubKey (coinbaseKey.GetPubKey ()));
@@ -53,10 +52,11 @@ BOOST_FIXTURE_TEST_CASE(scan_for_wallet_transactions, TestChain100Setup)
53
52
AddKey (wallet, coinbaseKey);
54
53
WalletRescanReserver reserver (&wallet);
55
54
reserver.reserve ();
56
- const CBlockIndex *stop_block = null_block + 1 , *failed_block = null_block + 1 ;
57
- BOOST_CHECK_EQUAL (wallet.ScanForWalletTransactions (nullptr , nullptr , reserver, failed_block, stop_block), CWallet::ScanResult::SUCCESS);
58
- BOOST_CHECK_EQUAL (failed_block, null_block);
59
- BOOST_CHECK_EQUAL (stop_block, null_block);
55
+ CWallet::ScanResult result = wallet.ScanForWalletTransactions ({} /* start_block */ , {} /* stop_block */ , reserver, false /* update */ );
56
+ BOOST_CHECK_EQUAL (result.status , CWallet::ScanResult::SUCCESS);
57
+ BOOST_CHECK (result.failed_block .IsNull ());
58
+ BOOST_CHECK (result.stop_block .IsNull ());
59
+ BOOST_CHECK (!result.stop_height );
60
60
BOOST_CHECK_EQUAL (wallet.GetImmatureBalance (), 0 );
61
61
}
62
62
@@ -67,10 +67,11 @@ BOOST_FIXTURE_TEST_CASE(scan_for_wallet_transactions, TestChain100Setup)
67
67
AddKey (wallet, coinbaseKey);
68
68
WalletRescanReserver reserver (&wallet);
69
69
reserver.reserve ();
70
- const CBlockIndex *stop_block = null_block + 1 , *failed_block = null_block + 1 ;
71
- BOOST_CHECK_EQUAL (wallet.ScanForWalletTransactions (oldTip, nullptr , reserver, failed_block, stop_block), CWallet::ScanResult::SUCCESS);
72
- BOOST_CHECK_EQUAL (failed_block, null_block);
73
- BOOST_CHECK_EQUAL (stop_block, newTip);
70
+ CWallet::ScanResult result = wallet.ScanForWalletTransactions (oldTip->GetBlockHash (), {} /* stop_block */ , reserver, false /* update */ );
71
+ BOOST_CHECK_EQUAL (result.status , CWallet::ScanResult::SUCCESS);
72
+ BOOST_CHECK (result.failed_block .IsNull ());
73
+ BOOST_CHECK_EQUAL (result.stop_block , newTip->GetBlockHash ());
74
+ BOOST_CHECK_EQUAL (*result.stop_height , newTip->nHeight );
74
75
BOOST_CHECK_EQUAL (wallet.GetImmatureBalance (), 100 * COIN);
75
76
}
76
77
@@ -85,10 +86,11 @@ BOOST_FIXTURE_TEST_CASE(scan_for_wallet_transactions, TestChain100Setup)
85
86
AddKey (wallet, coinbaseKey);
86
87
WalletRescanReserver reserver (&wallet);
87
88
reserver.reserve ();
88
- const CBlockIndex *stop_block = null_block + 1 , *failed_block = null_block + 1 ;
89
- BOOST_CHECK_EQUAL (wallet.ScanForWalletTransactions (oldTip, nullptr , reserver, failed_block, stop_block), CWallet::ScanResult::FAILURE);
90
- BOOST_CHECK_EQUAL (failed_block, oldTip);
91
- BOOST_CHECK_EQUAL (stop_block, newTip);
89
+ CWallet::ScanResult result = wallet.ScanForWalletTransactions (oldTip->GetBlockHash (), {} /* stop_block */ , reserver, false /* update */ );
90
+ BOOST_CHECK_EQUAL (result.status , CWallet::ScanResult::FAILURE);
91
+ BOOST_CHECK_EQUAL (result.failed_block , oldTip->GetBlockHash ());
92
+ BOOST_CHECK_EQUAL (result.stop_block , newTip->GetBlockHash ());
93
+ BOOST_CHECK_EQUAL (*result.stop_height , newTip->nHeight );
92
94
BOOST_CHECK_EQUAL (wallet.GetImmatureBalance (), 50 * COIN);
93
95
}
94
96
@@ -102,10 +104,11 @@ BOOST_FIXTURE_TEST_CASE(scan_for_wallet_transactions, TestChain100Setup)
102
104
AddKey (wallet, coinbaseKey);
103
105
WalletRescanReserver reserver (&wallet);
104
106
reserver.reserve ();
105
- const CBlockIndex *stop_block = null_block + 1 , *failed_block = null_block + 1 ;
106
- BOOST_CHECK_EQUAL (wallet.ScanForWalletTransactions (oldTip, nullptr , reserver, failed_block, stop_block), CWallet::ScanResult::FAILURE);
107
- BOOST_CHECK_EQUAL (failed_block, newTip);
108
- BOOST_CHECK_EQUAL (stop_block, null_block);
107
+ CWallet::ScanResult result = wallet.ScanForWalletTransactions (oldTip->GetBlockHash (), {} /* stop_block */ , reserver, false /* update */ );
108
+ BOOST_CHECK_EQUAL (result.status , CWallet::ScanResult::FAILURE);
109
+ BOOST_CHECK_EQUAL (result.failed_block , newTip->GetBlockHash ());
110
+ BOOST_CHECK (result.stop_block .IsNull ());
111
+ BOOST_CHECK (!result.stop_height );
109
112
BOOST_CHECK_EQUAL (wallet.GetImmatureBalance (), 0 );
110
113
}
111
114
}
@@ -340,11 +343,11 @@ class ListCoinsTestingSetup : public TestChain100Setup
340
343
AddKey (*wallet, coinbaseKey);
341
344
WalletRescanReserver reserver (wallet.get ());
342
345
reserver.reserve ();
343
- const CBlockIndex* const null_block = nullptr ;
344
- const CBlockIndex *stop_block = null_block + 1 , *failed_block = null_block + 1 ;
345
- BOOST_CHECK_EQUAL (wallet-> ScanForWalletTransactions ( chainActive.Genesis (), nullptr , reserver, failed_block, stop_block), CWallet::ScanResult::SUCCESS );
346
- BOOST_CHECK_EQUAL (stop_block , chainActive.Tip ());
347
- BOOST_CHECK_EQUAL ( failed_block, null_block );
346
+ CWallet::ScanResult result = wallet-> ScanForWalletTransactions (chainActive. Genesis ()-> GetBlockHash (), {} /* stop_block */ , reserver, false /* update */ ) ;
347
+ BOOST_CHECK_EQUAL (result. status , CWallet::ScanResult::SUCCESS) ;
348
+ BOOST_CHECK_EQUAL (result. stop_block , chainActive.Tip ()-> GetBlockHash () );
349
+ BOOST_CHECK_EQUAL (*result. stop_height , chainActive.Height ());
350
+ BOOST_CHECK (result. failed_block . IsNull () );
348
351
}
349
352
350
353
~ListCoinsTestingSetup ()
0 commit comments