@@ -39,7 +39,6 @@ BOOST_FIXTURE_TEST_CASE(scan_for_wallet_transactions, TestChain100Setup)
3939 auto chain = interfaces::MakeChain ();
4040
4141 // Cap last block file size, and mine new block in a new block file.
42- const CBlockIndex* const null_block = nullptr ;
4342 CBlockIndex* oldTip = chainActive.Tip ();
4443 GetBlockFileInfo (oldTip->GetBlockPos ().nFile )->nSize = MAX_BLOCKFILE_SIZE;
4544 CreateAndProcessBlock ({}, GetScriptForRawPubKey (coinbaseKey.GetPubKey ()));
@@ -53,10 +52,11 @@ BOOST_FIXTURE_TEST_CASE(scan_for_wallet_transactions, TestChain100Setup)
5352 AddKey (wallet, coinbaseKey);
5453 WalletRescanReserver reserver (&wallet);
5554 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 );
6060 BOOST_CHECK_EQUAL (wallet.GetImmatureBalance (), 0 );
6161 }
6262
@@ -67,10 +67,11 @@ BOOST_FIXTURE_TEST_CASE(scan_for_wallet_transactions, TestChain100Setup)
6767 AddKey (wallet, coinbaseKey);
6868 WalletRescanReserver reserver (&wallet);
6969 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 );
7475 BOOST_CHECK_EQUAL (wallet.GetImmatureBalance (), 100 * COIN);
7576 }
7677
@@ -85,10 +86,11 @@ BOOST_FIXTURE_TEST_CASE(scan_for_wallet_transactions, TestChain100Setup)
8586 AddKey (wallet, coinbaseKey);
8687 WalletRescanReserver reserver (&wallet);
8788 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 );
9294 BOOST_CHECK_EQUAL (wallet.GetImmatureBalance (), 50 * COIN);
9395 }
9496
@@ -102,10 +104,11 @@ BOOST_FIXTURE_TEST_CASE(scan_for_wallet_transactions, TestChain100Setup)
102104 AddKey (wallet, coinbaseKey);
103105 WalletRescanReserver reserver (&wallet);
104106 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 );
109112 BOOST_CHECK_EQUAL (wallet.GetImmatureBalance (), 0 );
110113 }
111114}
@@ -340,11 +343,11 @@ class ListCoinsTestingSetup : public TestChain100Setup
340343 AddKey (*wallet, coinbaseKey);
341344 WalletRescanReserver reserver (wallet.get ());
342345 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 () );
348351 }
349352
350353 ~ListCoinsTestingSetup ()
0 commit comments