@@ -70,8 +70,14 @@ def test_splice_disconnect_sig(node_factory, bitcoind):
7070@pytest .mark .openchannel ('v2' )
7171@unittest .skipIf (TEST_NETWORK != 'regtest' , 'elementsd doesnt yet support PSBT features we need' )
7272def test_splice_disconnect_commit (node_factory , bitcoind , executor ):
73- l1 = node_factory .get_node (options = {'experimental-splicing' : None }, may_reconnect = True )
74- l2 = node_factory .get_node (disconnect = ['+WIRE_COMMITMENT_SIGNED' ],
73+ l1 = node_factory .get_node (options = {'experimental-splicing' : None , 'dev-no-reconnect' : None },
74+ may_reconnect = True )
75+ # Note: for dual-fund, there's a COMMITMENT_SIGNED for the initial tx, before splicing!
76+ if EXPERIMENTAL_DUAL_FUND :
77+ disconnects = ['+WIRE_COMMITMENT_SIGNED*2' ]
78+ else :
79+ disconnects = ['+WIRE_COMMITMENT_SIGNED' ]
80+ l2 = node_factory .get_node (disconnect = disconnects ,
7581 options = {'experimental-splicing' : None , 'dev-no-reconnect' : None },
7682 may_reconnect = True )
7783 l1 .openchannel (l2 , 1000000 )
@@ -91,15 +97,13 @@ def test_splice_disconnect_commit(node_factory, bitcoind, executor):
9197
9298 l2 .daemon .wait_for_log (r'dev_disconnect: \+WIRE_COMMITMENT_SIGNED' )
9399
94- print ("Killing l2 without sending WIRE_COMMITMENT_SIGNED" )
95- l2 .daemon .kill ()
100+ l1 .daemon .kill ()
96101
97- # Restart l1, without disconnect stuff.
98- del l2 .daemon .opts ['dev-no-reconnect' ]
99- del l2 .daemon .opts ['dev-disconnect' ]
102+ # Restart l1, should reconnect
103+ del l1 .daemon .opts ['dev-no-reconnect' ]
100104
101105 # Should reconnect, and reestablish the splice.
102- l2 .start ()
106+ l1 .start ()
103107
104108 # Splice should be abandoned via tx_abort
105109
0 commit comments