Skip to content

Commit 897e08b

Browse files
committed
more functional testing of pak mempool logic
1 parent 0baae08 commit 897e08b

File tree

1 file changed

+13
-0
lines changed

1 file changed

+13
-0
lines changed

test/functional/feature_pak.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,6 +262,8 @@ def compare(actual, expected):
262262
# pak1 will now create a pegout.
263263
pak1_pegout_txid = self.nodes[i_pak1].sendtomainchain("", 1)["txid"]
264264
assert_equal(self.nodes[i_pak1].getwalletpakinfo()["bip32_counter"], "1")
265+
# Also spend the change to make chained payment that will be rejected as well
266+
pak1_child_txid = self.nodes[i_pak1].sendtoaddress(self.nodes[i_pak1].getnewaddress(), self.nodes[i_pak1].getbalance(), "", "", True)
265267

266268

267269
# Wait for two nodes to get transaction in mempool only
@@ -285,9 +287,20 @@ def compare(actual, expected):
285287

286288
assert_equal(pak1_pegout_txid in self.nodes[i_novalidate].getrawmempool(), False)
287289
assert_equal(pak1_pegout_txid in self.nodes[i_undefined].getrawmempool(), False)
290+
assert_equal(pak1_pegout_txid in self.nodes[i_pak1].getrawmempool(), True)
288291
assert_equal(pak1_pegout_txid in self.nodes[i_pak2].getrawmempool(), False)
289292
assert_equal(pak1_pegout_txid in self.nodes[i_reject].getrawmempool(), False)
290293

294+
assert_equal(self.nodes[i_pak1].gettransaction(pak1_pegout_txid)["confirmations"], 0)
295+
296+
# Make sure child payment also bumped from mempool
297+
assert_equal(pak1_child_txid in self.nodes[i_novalidate].getrawmempool(), False)
298+
assert_equal(pak1_child_txid in self.nodes[i_undefined].getrawmempool(), False)
299+
assert_equal(pak1_child_txid in self.nodes[i_pak1].getrawmempool(), True)
300+
assert_equal(pak1_child_txid in self.nodes[i_pak2].getrawmempool(), False)
301+
assert_equal(pak1_child_txid in self.nodes[i_reject].getrawmempool(), False)
302+
303+
assert_equal(self.nodes[i_pak1].gettransaction(pak1_child_txid)["confirmations"], 0)
291304
# Fail to peg-out too-small value
292305
assert_raises_rpc_error(-8, "Invalid amount for send, must send more than 0.0001 BTC", self.nodes[i_undefined].sendtomainchain, "", Decimal('0.0009'))
293306

0 commit comments

Comments
 (0)