Skip to content

Commit 646b593

Browse files
committed
[tests] Speed up rpc_fundrawtransaction.py
Most of the time in rpc_fundrawtransaction.py is spent waiting for unconfirmed transactions to propagate. Net processing adds a poisson random delay to the time it will INV transactions with a mean interval of 5 seconds. Calls like the following: ``` self.nodes[2].sendrawtransaction(signedTx['hex']) self.sync_all() self.nodes[1].generate(1) ```` will therefore introduce a delay waiting for the mempools to sync. Instead just generate the block on the node that sent the transaction: ``` self.nodes[2].sendrawtransaction(signedTx['hex']) self.nodes[2].generate(1) ``` rpc_fundrawtransaction.py is not intended to be a test for transaction relay, so it's ok to do this.
1 parent c737839 commit 646b593

File tree

1 file changed

+5
-10
lines changed

1 file changed

+5
-10
lines changed

test/functional/rpc_fundrawtransaction.py

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -470,8 +470,7 @@ def test_spend_2of2(self):
470470

471471
# Send 1.2 BTC to msig addr.
472472
self.nodes[0].sendtoaddress(mSigObj, 1.2)
473-
self.sync_all()
474-
self.nodes[1].generate(1)
473+
self.nodes[0].generate(1)
475474
self.sync_all()
476475

477476
oldBalance = self.nodes[1].getbalance()
@@ -482,8 +481,7 @@ def test_spend_2of2(self):
482481

483482
signedTx = self.nodes[2].signrawtransactionwithwallet(fundedTx['hex'])
484483
self.nodes[2].sendrawtransaction(signedTx['hex'])
485-
self.sync_all()
486-
self.nodes[1].generate(1)
484+
self.nodes[2].generate(1)
487485
self.sync_all()
488486

489487
# Make sure funds are received at node1.
@@ -550,8 +548,7 @@ def test_many_inputs_fee(self):
550548

551549
# Empty node1, send some small coins from node0 to node1.
552550
self.nodes[1].sendtoaddress(self.nodes[0].getnewaddress(), self.nodes[1].getbalance(), "", "", True)
553-
self.sync_all()
554-
self.nodes[0].generate(1)
551+
self.nodes[1].generate(1)
555552
self.sync_all()
556553

557554
for i in range(0,20):
@@ -579,8 +576,7 @@ def test_many_inputs_send(self):
579576

580577
# Again, empty node1, send some small coins from node0 to node1.
581578
self.nodes[1].sendtoaddress(self.nodes[0].getnewaddress(), self.nodes[1].getbalance(), "", "", True)
582-
self.sync_all()
583-
self.nodes[0].generate(1)
579+
self.nodes[1].generate(1)
584580
self.sync_all()
585581

586582
for i in range(0,20):
@@ -597,8 +593,7 @@ def test_many_inputs_send(self):
597593
fundedTx = self.nodes[1].fundrawtransaction(rawtx)
598594
fundedAndSignedTx = self.nodes[1].signrawtransactionwithwallet(fundedTx['hex'])
599595
self.nodes[1].sendrawtransaction(fundedAndSignedTx['hex'])
600-
self.sync_all()
601-
self.nodes[0].generate(1)
596+
self.nodes[1].generate(1)
602597
self.sync_all()
603598
assert_equal(oldBalance+Decimal('50.19000000'), self.nodes[0].getbalance()) #0.19+block reward
604599

0 commit comments

Comments
 (0)