@@ -22,9 +22,7 @@ use crate::util::config::{ChannelHandshakeConfig, UserConfig};
2222fn test_v1_splice_in ( ) {
2323 // Set up a network of 2 nodes
2424 let cfg = UserConfig {
25- channel_handshake_config : ChannelHandshakeConfig {
26- ..Default :: default ( )
27- } ,
25+ channel_handshake_config : ChannelHandshakeConfig { ..Default :: default ( ) } ,
2826 ..Default :: default ( )
2927 } ;
3028 let chanmon_cfgs = create_chanmon_cfgs ( 2 ) ;
@@ -43,27 +41,69 @@ fn test_v1_splice_in() {
4341 let push_msat = 0 ;
4442 let channel_reserve_amnt_sat = 1_000 ;
4543
46- let expected_funded_channel_id = "ae3367da2c13bc1ceb86bf56418f62828f7ce9d6bfb15a46af5ba1f1ed8b124f" ;
44+ let expected_funded_channel_id =
45+ "ae3367da2c13bc1ceb86bf56418f62828f7ce9d6bfb15a46af5ba1f1ed8b124f" ;
4746
4847 // Have initiator_node initiate a channel to acceptor_node with aforementioned parameters
49- let channel_id_temp1 = initiator_node. node . create_channel ( acceptor_node. node . get_our_node_id ( ) , channel_value_sat, push_msat, 42 , None , None ) . unwrap ( ) ;
48+ let channel_id_temp1 = initiator_node
49+ . node
50+ . create_channel (
51+ acceptor_node. node . get_our_node_id ( ) ,
52+ channel_value_sat,
53+ push_msat,
54+ 42 ,
55+ None ,
56+ None ,
57+ )
58+ . unwrap ( ) ;
5059
5160 // Extract the channel open message from initiator_node to acceptor_node
52- let open_channel_message = get_event_msg ! ( initiator_node, MessageSendEvent :: SendOpenChannel , acceptor_node. node. get_our_node_id( ) ) ;
53-
54- let _res = acceptor_node. node . handle_open_channel ( initiator_node. node . get_our_node_id ( ) , & open_channel_message. clone ( ) ) ;
61+ let open_channel_message = get_event_msg ! (
62+ initiator_node,
63+ MessageSendEvent :: SendOpenChannel ,
64+ acceptor_node. node. get_our_node_id( )
65+ ) ;
66+
67+ let _res = acceptor_node
68+ . node
69+ . handle_open_channel ( initiator_node. node . get_our_node_id ( ) , & open_channel_message. clone ( ) ) ;
5570 // Extract the accept channel message from acceptor_node to initiator_node
56- let accept_channel_message = get_event_msg ! ( acceptor_node, MessageSendEvent :: SendAcceptChannel , initiator_node. node. get_our_node_id( ) ) ;
57- let _res = initiator_node. node . handle_accept_channel ( acceptor_node. node . get_our_node_id ( ) , & accept_channel_message. clone ( ) ) ;
71+ let accept_channel_message = get_event_msg ! (
72+ acceptor_node,
73+ MessageSendEvent :: SendAcceptChannel ,
74+ initiator_node. node. get_our_node_id( )
75+ ) ;
76+ let _res = initiator_node. node . handle_accept_channel (
77+ acceptor_node. node . get_our_node_id ( ) ,
78+ & accept_channel_message. clone ( ) ,
79+ ) ;
5880 // Note: FundingGenerationReady emitted, checked and used below
59- let ( _channel_id_temp2, funding_tx, _funding_output) = create_funding_transaction ( & initiator_node, & acceptor_node. node . get_our_node_id ( ) , channel_value_sat, 42 ) ;
81+ let ( _channel_id_temp2, funding_tx, _funding_output) = create_funding_transaction (
82+ & initiator_node,
83+ & acceptor_node. node . get_our_node_id ( ) ,
84+ channel_value_sat,
85+ 42 ,
86+ ) ;
6087
6188 // Funding transation created, provide it
62- let _res = initiator_node. node . funding_transaction_generated ( channel_id_temp1, acceptor_node. node . get_our_node_id ( ) , funding_tx. clone ( ) ) . unwrap ( ) ;
63-
64- let funding_created_message = get_event_msg ! ( initiator_node, MessageSendEvent :: SendFundingCreated , acceptor_node. node. get_our_node_id( ) ) ;
65-
66- let _res = acceptor_node. node . handle_funding_created ( initiator_node. node . get_our_node_id ( ) , & funding_created_message) ;
89+ let _res = initiator_node
90+ . node
91+ . funding_transaction_generated (
92+ channel_id_temp1,
93+ acceptor_node. node . get_our_node_id ( ) ,
94+ funding_tx. clone ( ) ,
95+ )
96+ . unwrap ( ) ;
97+
98+ let funding_created_message = get_event_msg ! (
99+ initiator_node,
100+ MessageSendEvent :: SendFundingCreated ,
101+ acceptor_node. node. get_our_node_id( )
102+ ) ;
103+
104+ let _res = acceptor_node
105+ . node
106+ . handle_funding_created ( initiator_node. node . get_our_node_id ( ) , & funding_created_message) ;
67107
68108 assert_eq ! ( initiator_node. node. list_channels( ) . len( ) , 1 ) ;
69109 {
@@ -77,15 +117,26 @@ fn test_v1_splice_in() {
77117 assert ! ( !channel. is_channel_ready) ;
78118 }
79119
80- let funding_signed_message = get_event_msg ! ( acceptor_node, MessageSendEvent :: SendFundingSigned , initiator_node. node. get_our_node_id( ) ) ;
81- let _res = initiator_node. node . handle_funding_signed ( acceptor_node. node . get_our_node_id ( ) , & funding_signed_message) ;
120+ let funding_signed_message = get_event_msg ! (
121+ acceptor_node,
122+ MessageSendEvent :: SendFundingSigned ,
123+ initiator_node. node. get_our_node_id( )
124+ ) ;
125+ let _res = initiator_node
126+ . node
127+ . handle_funding_signed ( acceptor_node. node . get_our_node_id ( ) , & funding_signed_message) ;
82128 // Take new channel ID
83129 let channel_id2 = funding_signed_message. channel_id ;
84130 assert_eq ! ( channel_id2. to_string( ) , expected_funded_channel_id) ;
85131
86132 // Check that funding transaction has been broadcasted
87- assert_eq ! ( chanmon_cfgs[ initiator_node_index] . tx_broadcaster. txn_broadcasted. lock( ) . unwrap( ) . len( ) , 1 ) ;
88- let broadcasted_funding_tx = chanmon_cfgs[ initiator_node_index] . tx_broadcaster . txn_broadcasted . lock ( ) . unwrap ( ) [ 0 ] . clone ( ) ;
133+ assert_eq ! (
134+ chanmon_cfgs[ initiator_node_index] . tx_broadcaster. txn_broadcasted. lock( ) . unwrap( ) . len( ) ,
135+ 1
136+ ) ;
137+ let broadcasted_funding_tx =
138+ chanmon_cfgs[ initiator_node_index] . tx_broadcaster . txn_broadcasted . lock ( ) . unwrap ( ) [ 0 ]
139+ . clone ( ) ;
89140
90141 check_added_monitors ! ( initiator_node, 1 ) ;
91142 let _ev = get_event ! ( initiator_node, Event :: ChannelPending ) ;
@@ -94,18 +145,38 @@ fn test_v1_splice_in() {
94145
95146 // Simulate confirmation of the funding tx
96147 confirm_transaction ( & initiator_node, & broadcasted_funding_tx) ;
97- let channel_ready_message = get_event_msg ! ( initiator_node, MessageSendEvent :: SendChannelReady , acceptor_node. node. get_our_node_id( ) ) ;
148+ let channel_ready_message = get_event_msg ! (
149+ initiator_node,
150+ MessageSendEvent :: SendChannelReady ,
151+ acceptor_node. node. get_our_node_id( )
152+ ) ;
98153
99154 confirm_transaction ( & acceptor_node, & broadcasted_funding_tx) ;
100- let channel_ready_message2 = get_event_msg ! ( acceptor_node, MessageSendEvent :: SendChannelReady , initiator_node. node. get_our_node_id( ) ) ;
101-
102- let _res = acceptor_node. node . handle_channel_ready ( initiator_node. node . get_our_node_id ( ) , & channel_ready_message) ;
155+ let channel_ready_message2 = get_event_msg ! (
156+ acceptor_node,
157+ MessageSendEvent :: SendChannelReady ,
158+ initiator_node. node. get_our_node_id( )
159+ ) ;
160+
161+ let _res = acceptor_node
162+ . node
163+ . handle_channel_ready ( initiator_node. node . get_our_node_id ( ) , & channel_ready_message) ;
103164 let _ev = get_event ! ( acceptor_node, Event :: ChannelReady ) ;
104- let _channel_update = get_event_msg ! ( acceptor_node, MessageSendEvent :: SendChannelUpdate , initiator_node. node. get_our_node_id( ) ) ;
105-
106- let _res = initiator_node. node . handle_channel_ready ( acceptor_node. node . get_our_node_id ( ) , & channel_ready_message2) ;
165+ let _channel_update = get_event_msg ! (
166+ acceptor_node,
167+ MessageSendEvent :: SendChannelUpdate ,
168+ initiator_node. node. get_our_node_id( )
169+ ) ;
170+
171+ let _res = initiator_node
172+ . node
173+ . handle_channel_ready ( acceptor_node. node . get_our_node_id ( ) , & channel_ready_message2) ;
107174 let _ev = get_event ! ( initiator_node, Event :: ChannelReady ) ;
108- let _channel_update = get_event_msg ! ( initiator_node, MessageSendEvent :: SendChannelUpdate , acceptor_node. node. get_our_node_id( ) ) ;
175+ let _channel_update = get_event_msg ! (
176+ initiator_node,
177+ MessageSendEvent :: SendChannelUpdate ,
178+ acceptor_node. node. get_our_node_id( )
179+ ) ;
109180
110181 // check channel capacity and other parameters
111182 assert_eq ! ( initiator_node. node. list_channels( ) . len( ) , 1 ) ;
@@ -115,7 +186,10 @@ fn test_v1_splice_in() {
115186 assert ! ( channel. is_usable) ;
116187 assert ! ( channel. is_channel_ready) ;
117188 assert_eq ! ( channel. channel_value_satoshis, channel_value_sat) ;
118- assert_eq ! ( channel. outbound_capacity_msat, 1000 * ( channel_value_sat - channel_reserve_amnt_sat) ) ;
189+ assert_eq ! (
190+ channel. outbound_capacity_msat,
191+ 1000 * ( channel_value_sat - channel_reserve_amnt_sat)
192+ ) ;
119193 assert_eq ! ( channel. funding_txo. unwrap( ) . txid, funding_tx. compute_txid( ) ) ;
120194 assert_eq ! ( channel. confirmations. unwrap( ) , 10 ) ;
121195 }
@@ -143,13 +217,32 @@ fn test_v1_splice_in() {
143217 let locktime = 0 ; // TODO
144218
145219 // Initiate splice-in (on initiator_node)
146- let _res = initiator_node. node . splice_channel ( & channel_id2, & acceptor_node. node . get_our_node_id ( ) , splice_in_sats as i64 , Vec :: new ( ) , funding_feerate_perkw, locktime) . unwrap ( ) ;
220+ let _res = initiator_node
221+ . node
222+ . splice_channel (
223+ & channel_id2,
224+ & acceptor_node. node . get_our_node_id ( ) ,
225+ splice_in_sats as i64 ,
226+ Vec :: new ( ) ,
227+ funding_feerate_perkw,
228+ locktime,
229+ )
230+ . unwrap ( ) ;
147231 // Extract the splice message from node0 to node1
148- let splice_msg = get_event_msg ! ( initiator_node, MessageSendEvent :: SendSpliceInit , acceptor_node. node. get_our_node_id( ) ) ;
149-
150- let _res = acceptor_node. node . handle_splice_init ( initiator_node. node . get_our_node_id ( ) , & splice_msg) ;
232+ let splice_msg = get_event_msg ! (
233+ initiator_node,
234+ MessageSendEvent :: SendSpliceInit ,
235+ acceptor_node. node. get_our_node_id( )
236+ ) ;
237+
238+ let _res =
239+ acceptor_node. node . handle_splice_init ( initiator_node. node . get_our_node_id ( ) , & splice_msg) ;
151240 // Extract the splice_ack message from node1 to node0
152- let splice_ack_msg = get_event_msg ! ( acceptor_node, MessageSendEvent :: SendSpliceAck , initiator_node. node. get_our_node_id( ) ) ;
241+ let splice_ack_msg = get_event_msg ! (
242+ acceptor_node,
243+ MessageSendEvent :: SendSpliceAck ,
244+ initiator_node. node. get_our_node_id( )
245+ ) ;
153246
154247 // still pre-splice channel: capacity not updated, channel usable, and funding tx set
155248 assert_eq ! ( acceptor_node. node. list_channels( ) . len( ) , 1 ) ;
@@ -164,7 +257,9 @@ fn test_v1_splice_in() {
164257 assert ! ( channel. confirmations. unwrap( ) > 0 ) ;
165258 }
166259
167- let _res = initiator_node. node . handle_splice_ack ( acceptor_node. node . get_our_node_id ( ) , & splice_ack_msg) ;
260+ let _res = initiator_node
261+ . node
262+ . handle_splice_ack ( acceptor_node. node . get_our_node_id ( ) , & splice_ack_msg) ;
168263
169264 // still pre-splice channel: capacity not updated, channel usable, and funding tx set
170265 assert_eq ! ( initiator_node. node. list_channels( ) . len( ) , 1 ) ;
@@ -174,7 +269,10 @@ fn test_v1_splice_in() {
174269 assert ! ( channel. is_usable) ;
175270 assert ! ( channel. is_channel_ready) ;
176271 assert_eq ! ( channel. channel_value_satoshis, channel_value_sat) ;
177- assert_eq ! ( channel. outbound_capacity_msat, 1000 * ( channel_value_sat - channel_reserve_amnt_sat) ) ;
272+ assert_eq ! (
273+ channel. outbound_capacity_msat,
274+ 1000 * ( channel_value_sat - channel_reserve_amnt_sat)
275+ ) ;
178276 assert ! ( channel. funding_txo. is_some( ) ) ;
179277 assert ! ( channel. confirmations. unwrap( ) > 0 ) ;
180278 }
@@ -185,9 +283,23 @@ fn test_v1_splice_in() {
185283
186284 // === Close channel, cooperatively
187285 initiator_node. node . close_channel ( & channel_id2, & acceptor_node. node . get_our_node_id ( ) ) . unwrap ( ) ;
188- let node0_shutdown_message = get_event_msg ! ( initiator_node, MessageSendEvent :: SendShutdown , acceptor_node. node. get_our_node_id( ) ) ;
189- acceptor_node. node . handle_shutdown ( initiator_node. node . get_our_node_id ( ) , & node0_shutdown_message) ;
190- let nodes_1_shutdown = get_event_msg ! ( acceptor_node, MessageSendEvent :: SendShutdown , initiator_node. node. get_our_node_id( ) ) ;
286+ let node0_shutdown_message = get_event_msg ! (
287+ initiator_node,
288+ MessageSendEvent :: SendShutdown ,
289+ acceptor_node. node. get_our_node_id( )
290+ ) ;
291+ acceptor_node
292+ . node
293+ . handle_shutdown ( initiator_node. node . get_our_node_id ( ) , & node0_shutdown_message) ;
294+ let nodes_1_shutdown = get_event_msg ! (
295+ acceptor_node,
296+ MessageSendEvent :: SendShutdown ,
297+ initiator_node. node. get_our_node_id( )
298+ ) ;
191299 initiator_node. node . handle_shutdown ( acceptor_node. node . get_our_node_id ( ) , & nodes_1_shutdown) ;
192- let _ = get_event_msg ! ( initiator_node, MessageSendEvent :: SendClosingSigned , acceptor_node. node. get_our_node_id( ) ) ;
300+ let _ = get_event_msg ! (
301+ initiator_node,
302+ MessageSendEvent :: SendClosingSigned ,
303+ acceptor_node. node. get_our_node_id( )
304+ ) ;
193305}
0 commit comments