aboutsummaryrefslogtreecommitdiff
path: root/qa/rpc-tests/mempool_packages.py
diff options
context:
space:
mode:
authorSuhas Daftuar <sdaftuar@chaincode.com>2016-01-14 20:35:21 -0500
committerSuhas Daftuar <sdaftuar@chaincode.com>2016-01-14 20:35:21 -0500
commit4d10d2e16fb837abe304e0a5d3bc0a41941d917a (patch)
tree3b81d0624664ebbb33f77b3b03b3ee24e834683e /qa/rpc-tests/mempool_packages.py
parentb1cf0058d9b3d3e218f1dc31ee688e5beb21f573 (diff)
Eliminate race condition in mempool_packages test
Diffstat (limited to 'qa/rpc-tests/mempool_packages.py')
-rwxr-xr-xqa/rpc-tests/mempool_packages.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/qa/rpc-tests/mempool_packages.py b/qa/rpc-tests/mempool_packages.py
index 063308d394..47c1028b9f 100755
--- a/qa/rpc-tests/mempool_packages.py
+++ b/qa/rpc-tests/mempool_packages.py
@@ -87,9 +87,18 @@ class MempoolPackagesTest(BitcoinTestFramework):
print "too-long-ancestor-chain successfully rejected"
# Check that prioritising a tx before it's added to the mempool works
+ # First clear the mempool by mining a block.
self.nodes[0].generate(1)
+ sync_blocks(self.nodes)
+ assert_equal(len(self.nodes[0].getrawmempool()), 0)
+ # Prioritise a transaction that has been mined, then add it back to the
+ # mempool by using invalidateblock.
self.nodes[0].prioritisetransaction(chain[-1], 0, 2000)
self.nodes[0].invalidateblock(self.nodes[0].getbestblockhash())
+ # Keep node1's tip synced with node0
+ self.nodes[1].invalidateblock(self.nodes[1].getbestblockhash())
+
+ # Now check that the transaction is in the mempool, with the right modified fee
mempool = self.nodes[0].getrawmempool(True)
descendant_fees = 0