test: test_inv_block, use mocktime instead of waiting

This commit is contained in:
Greg Sanders 2025-02-06 11:34:56 -05:00
parent d6c229d8bd
commit 2706c5b7c8

View file

@ -105,6 +105,8 @@ class TxDownloadTest(BitcoinTestFramework):
tx = self.wallet.create_self_transfer()
wtxid = int(tx['wtxid'], 16)
self.nodes[0].setmocktime(int(time.time()))
self.log.info(
"Announce the transaction to all nodes from all {} incoming peers, but never send it".format(NUM_INBOUND))
msg = msg_inv([CInv(t=MSG_WTX, h=wtxid)])
@ -125,7 +127,10 @@ class TxDownloadTest(BitcoinTestFramework):
assert self.nodes[1].getpeerinfo()[0]['inbound'] == False
timeout = 2 + INBOUND_PEER_TX_DELAY + GETDATA_TX_INTERVAL
self.log.info("Tx should be received at node 1 after {} seconds".format(timeout))
self.sync_mempools(timeout=timeout)
self.nodes[0].bumpmocktime(timeout)
self.sync_mempools()
self.nodes[0].setmocktime(0)
def test_in_flight_max(self):
self.log.info("Test that we don't load peers with more than {} transaction requests immediately".format(MAX_GETDATA_IN_FLIGHT))