Merge bitcoin/bitcoin#25937: test: add coverage for rpc error when trying to rescan beyond pruned data

cca4f82b828669ae23f6ac64fb83e068b81ae189 test: add coverage for rpc error when trying to rescan beyond pruned data (brunoerg)

Pull request description:

  This PR adds test coverage for the following rpc error:
  15692e2641/src/wallet/rpc/transactions.cpp (L896-L899)

ACKs for top commit:
  MarcoFalke:
    lgtm ACK cca4f82b828669ae23f6ac64fb83e068b81ae189
  aureleoules:
    ACK cca4f82b828669ae23f6ac64fb83e068b81ae189

Tree-SHA512: 724a055e9f6cddf1935699e8769015115f24f6485a0bd87e8660072ee44a15c1bddfdda848acc101ea7184b7e65a33b5b0d80b563d2ba3ecdab7a631378d6476
This commit is contained in:
fanquake 2023-04-27 06:07:16 +01:00 committed by pasta
parent 712dcaf86b
commit 3306f96d80
No known key found for this signature in database
GPG Key ID: E2F3D7916E722D38

View File

@ -158,6 +158,10 @@ class PruneTest(BitcoinTestFramework):
extra_args=['-prune=550', '-disablegovernance=false'], extra_args=['-prune=550', '-disablegovernance=false'],
) )
def test_rescan_blockchain(self):
self.restart_node(0, ["-prune=550"])
assert_raises_rpc_error(-1, "Can't rescan beyond pruned data. Use RPC call getblockchaininfo to determine your pruned height.", self.nodes[0].rescanblockchain)
def test_height_min(self): def test_height_min(self):
assert os.path.isfile(os.path.join(self.prunedir, "blk00000.dat")), "blk00000.dat is missing, pruning too early" assert os.path.isfile(os.path.join(self.prunedir, "blk00000.dat")), "blk00000.dat is missing, pruning too early"
self.log.info("Success") self.log.info("Success")
@ -494,6 +498,9 @@ class PruneTest(BitcoinTestFramework):
self.log.info("Test wallet re-scan") self.log.info("Test wallet re-scan")
self.wallet_test() self.wallet_test()
self.log.info("Test it's not possible to rescan beyond pruned data")
self.test_rescan_blockchain()
self.log.info("Test invalid pruning command line options") self.log.info("Test invalid pruning command line options")
self.test_invalid_command_line_options() self.test_invalid_command_line_options()