From dec148f4986beb88cf752a6b6f4781662bbb17b4 Mon Sep 17 00:00:00 2001 From: Jack Grigg Date: Thu, 23 Mar 2017 18:57:13 +1300 Subject: [PATCH] Fix prioritisetransaction RPC test Part of #1884. --- qa/rpc-tests/prioritisetransaction.py | 28 ++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) diff --git a/qa/rpc-tests/prioritisetransaction.py b/qa/rpc-tests/prioritisetransaction.py index 2e8f11656..19dc6ade1 100755 --- a/qa/rpc-tests/prioritisetransaction.py +++ b/qa/rpc-tests/prioritisetransaction.py @@ -81,6 +81,30 @@ class PrioritiseTransactionTest (BitcoinTestFramework): priority_result = self.nodes[0].prioritisetransaction(priority_tx_0, 1000, int(3 * base_fee * COIN)) + # Check that prioritized transaction is not in getblocktemplate() + # (not updated because no new txns) + in_block_template = False + block_template = self.nodes[0].getblocktemplate() + for tx in block_template['transactions']: + if tx['hash'] == priority_tx_0: + in_block_template = True + break + assert_equal(in_block_template, False) + + self.nodes[0].sendtoaddress(self.nodes[1].getnewaddress(), 0.1) + + # Check that prioritized transaction is not in getblocktemplate() + # (too soon) + in_block_template = False + block_template = self.nodes[0].getblocktemplate() + for tx in block_template['transactions']: + if tx['hash'] == priority_tx_0: + in_block_template = True + break + assert_equal(in_block_template, False) + + sleep(10) + # Check that prioritized transaction is in getblocktemplate() in_block_template = False block_template = self.nodes[0].getblocktemplate() @@ -88,9 +112,7 @@ class PrioritiseTransactionTest (BitcoinTestFramework): if tx['hash'] == priority_tx_0: in_block_template = True break - # NOTE: getblocktemplate() should return prioritized transaction, but is not - # Noted by user in issue #1884 - assert_equal(in_block_template, False) + assert_equal(in_block_template, True) # Node 1 doesn't get the next block, so this *shouldn't* be mined despite being prioritized on node 1 priority_tx_1 = self.nodes[1].sendtoaddress(self.nodes[0].getnewaddress(), 0.1)