From 63e2619f9e4d6b8e6dfb9d4660fd8444fe653dcb Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Tue, 23 May 2023 19:59:25 +0930 Subject: [PATCH] pytest: fix up DF tests after onchaind broadcast rework. 07413c20b9f19362f437fc22fcda655777426c09 et al reworked how onchaind does broadcasts, meaning tests needed to be updated to the new helpers rather than searching logs themselves. Signed-off-by: Rusty Russell --- tests/test_closing.py | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/tests/test_closing.py b/tests/test_closing.py index b58fa1d43..c3d81812b 100644 --- a/tests/test_closing.py +++ b/tests/test_closing.py @@ -967,9 +967,12 @@ def test_channel_lease_unilat_closes(node_factory, bitcoind): l3.rpc.close(l2.info['id'], 1, force_lease_closed=True) # Wait til to_self_delay expires, l1 should claim to_local back - bitcoind.generate_block(10, wait_for_mempool=2) - l1.daemon.wait_for_log('Broadcasting OUR_DELAYED_RETURN_TO_WALLET') - bitcoind.generate_block(1, wait_for_mempool=1) + bitcoind.generate_block(1, wait_for_mempool=2) + _, txid, blocks = l1.wait_for_onchaind_tx('OUR_DELAYED_RETURN_TO_WALLET', + 'OUR_UNILATERAL/DELAYED_OUTPUT_TO_US') + assert blocks == 4 + bitcoind.generate_block(blocks) + l1.mine_txid_or_rbf(txid, numblocks=1) l1.daemon.wait_for_log('Resolved OUR_UNILATERAL/DELAYED_OUTPUT_TO_US by our proposal OUR_DELAYED_RETURN_TO_WALLET') assert len(l1.rpc.listfunds()['outputs']) == 2 @@ -997,7 +1000,8 @@ def test_channel_lease_unilat_closes(node_factory, bitcoind): l2.rpc.withdraw(l2.rpc.newaddr()['bech32'], "all", utxos=[utxo1]) # l3 cleans up their to-self after their lease expires - assert l3.daemon.is_in_log('Broadcasting OUR_DELAYED_RETURN_TO_WALLET') + l3.wait_for_onchaind_tx('OUR_DELAYED_RETURN_TO_WALLET', + 'OUR_UNILATERAL/DELAYED_OUTPUT_TO_US') # We were making a journal_entry for anchors, but now we ignore them incomes = l2.rpc.bkpr_listincome()['income_events'] @@ -1075,10 +1079,10 @@ def test_channel_lease_lessor_cheat(node_factory, bitcoind, chainparams): l1.start() sync_blockheight(bitcoind, [l1]) - l1.daemon.wait_for_logs(['Broadcasting OUR_PENALTY_TX', - ' Propose handling THEIR_REVOKED_UNILATERAL/DELAYED_CHEAT_OUTPUT_TO_THEM by OUR_PENALTY_TX']) + _, txid, _ = l1.wait_for_onchaind_tx('OUR_PENALTY_TX', + 'THEIR_REVOKED_UNILATERAL/DELAYED_CHEAT_OUTPUT_TO_THEM') - bitcoind.generate_block(1, wait_for_mempool=1) + l1.mine_txid_or_rbf(txid, numblocks=1) # l2 sees that l1 has spent their coins! l2.daemon.wait_for_log('Unknown spend of OUR_UNILATERAL/DELAYED_OUTPUT_TO_US by') @@ -1152,10 +1156,11 @@ def test_channel_lease_lessee_cheat(node_factory, bitcoind, chainparams): l2.start() sync_blockheight(bitcoind, [l2]) - l2.daemon.wait_for_logs(['Broadcasting OUR_PENALTY_TX', - ' Propose handling THEIR_REVOKED_UNILATERAL/DELAYED_CHEAT_OUTPUT_TO_THEM by OUR_PENALTY_TX']) + _, txid, _ = l2.wait_for_onchaind_tx('OUR_PENALTY_TX', + 'THEIR_REVOKED_UNILATERAL/DELAYED_CHEAT_OUTPUT_TO_THEM') + + l2.mine_txid_or_rbf(txid, numblocks=1) - bitcoind.generate_block(1, wait_for_mempool=1) # l2 sees that l1 has spent their coins! l1.daemon.wait_for_logs(['Grinding for to_remote', 'Unknown spend of OUR_UNILATERAL/DELAYED_OUTPUT_TO_US by'])