@@ -1158,7 +1158,10 @@ fn test_monitor_update_fail_reestablish() {
1158
1158
nodes[ 0 ] . node . handle_channel_reestablish ( & nodes[ 1 ] . node . get_our_node_id ( ) , & bs_reestablish) ;
1159
1159
1160
1160
nodes[ 1 ] . node . handle_channel_reestablish ( & nodes[ 0 ] . node . get_our_node_id ( ) , & as_reestablish) ;
1161
- assert ! ( nodes[ 1 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
1161
+ assert_eq ! (
1162
+ get_event_msg!( nodes[ 0 ] , MessageSendEvent :: SendChannelUpdate , nodes[ 1 ] . node. get_our_node_id( ) )
1163
+ . contents. flags & 2 , 0 ) ; // The "disabled" bit should be unset as we just reconnected
1164
+
1162
1165
nodes[ 1 ] . logger . assert_log ( "lightning::ln::channelmanager" . to_string ( ) , "Failed to update ChannelMonitor" . to_string ( ) , 1 ) ;
1163
1166
check_added_monitors ! ( nodes[ 1 ] , 1 ) ;
1164
1167
@@ -1172,10 +1175,15 @@ fn test_monitor_update_fail_reestablish() {
1172
1175
assert ! ( bs_reestablish == get_event_msg!( nodes[ 1 ] , MessageSendEvent :: SendChannelReestablish , nodes[ 0 ] . node. get_our_node_id( ) ) ) ;
1173
1176
1174
1177
nodes[ 0 ] . node . handle_channel_reestablish ( & nodes[ 1 ] . node . get_our_node_id ( ) , & bs_reestablish) ;
1178
+ assert_eq ! (
1179
+ get_event_msg!( nodes[ 0 ] , MessageSendEvent :: SendChannelUpdate , nodes[ 1 ] . node. get_our_node_id( ) )
1180
+ . contents. flags & 2 , 0 ) ; // The "disabled" bit should be unset as we just reconnected
1175
1181
1176
1182
nodes[ 1 ] . node . handle_channel_reestablish ( & nodes[ 0 ] . node . get_our_node_id ( ) , & as_reestablish) ;
1177
1183
check_added_monitors ! ( nodes[ 1 ] , 0 ) ;
1178
- assert ! ( nodes[ 1 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
1184
+ assert_eq ! (
1185
+ get_event_msg!( nodes[ 1 ] , MessageSendEvent :: SendChannelUpdate , nodes[ 0 ] . node. get_our_node_id( ) )
1186
+ . contents. flags & 2 , 0 ) ; // The "disabled" bit should be unset as we just reconnected
1179
1187
1180
1188
* nodes[ 1 ] . chain_monitor . update_ret . lock ( ) . unwrap ( ) = Some ( Ok ( ( ) ) ) ;
1181
1189
let ( outpoint, latest_update) = nodes[ 1 ] . chain_monitor . latest_monitor_update_id . lock ( ) . unwrap ( ) . get ( & chan_1. 2 ) . unwrap ( ) . clone ( ) ;
@@ -1352,14 +1360,14 @@ fn claim_while_disconnected_monitor_update_fail() {
1352
1360
let bs_reconnect = get_event_msg ! ( nodes[ 1 ] , MessageSendEvent :: SendChannelReestablish , nodes[ 0 ] . node. get_our_node_id( ) ) ;
1353
1361
1354
1362
nodes[ 0 ] . node . handle_channel_reestablish ( & nodes[ 1 ] . node . get_our_node_id ( ) , & bs_reconnect) ;
1355
- assert ! ( nodes[ 0 ] . node. get_and_clear_pending_msg_events ( ) . is_empty ( ) ) ;
1363
+ let _as_channel_update = get_event_msg ! ( nodes[ 0 ] , MessageSendEvent :: SendChannelUpdate , nodes [ 1 ] . node. get_our_node_id ( ) ) ;
1356
1364
1357
1365
// Now deliver a's reestablish, freeing the claim from the holding cell, but fail the monitor
1358
1366
// update.
1359
1367
* nodes[ 1 ] . chain_monitor . update_ret . lock ( ) . unwrap ( ) = Some ( Err ( ChannelMonitorUpdateErr :: TemporaryFailure ) ) ;
1360
1368
1361
1369
nodes[ 1 ] . node . handle_channel_reestablish ( & nodes[ 0 ] . node . get_our_node_id ( ) , & as_reconnect) ;
1362
- assert ! ( nodes[ 1 ] . node. get_and_clear_pending_msg_events ( ) . is_empty ( ) ) ;
1370
+ let _bs_channel_update = get_event_msg ! ( nodes[ 1 ] , MessageSendEvent :: SendChannelUpdate , nodes [ 0 ] . node. get_our_node_id ( ) ) ;
1363
1371
nodes[ 1 ] . logger . assert_log ( "lightning::ln::channelmanager" . to_string ( ) , "Failed to update ChannelMonitor" . to_string ( ) , 1 ) ;
1364
1372
check_added_monitors ! ( nodes[ 1 ] , 1 ) ;
1365
1373
assert ! ( nodes[ 1 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
@@ -1492,7 +1500,9 @@ fn monitor_failed_no_reestablish_response() {
1492
1500
let bs_reconnect = get_event_msg ! ( nodes[ 1 ] , MessageSendEvent :: SendChannelReestablish , nodes[ 0 ] . node. get_our_node_id( ) ) ;
1493
1501
1494
1502
nodes[ 1 ] . node . handle_channel_reestablish ( & nodes[ 0 ] . node . get_our_node_id ( ) , & as_reconnect) ;
1503
+ let _bs_channel_update = get_event_msg ! ( nodes[ 1 ] , MessageSendEvent :: SendChannelUpdate , nodes[ 0 ] . node. get_our_node_id( ) ) ;
1495
1504
nodes[ 0 ] . node . handle_channel_reestablish ( & nodes[ 1 ] . node . get_our_node_id ( ) , & bs_reconnect) ;
1505
+ let _as_channel_update = get_event_msg ! ( nodes[ 0 ] , MessageSendEvent :: SendChannelUpdate , nodes[ 1 ] . node. get_our_node_id( ) ) ;
1496
1506
1497
1507
* nodes[ 1 ] . chain_monitor . update_ret . lock ( ) . unwrap ( ) = Some ( Ok ( ( ) ) ) ;
1498
1508
let ( outpoint, latest_update) = nodes[ 1 ] . chain_monitor . latest_monitor_update_id . lock ( ) . unwrap ( ) . get ( & channel_id) . unwrap ( ) . clone ( ) ;
0 commit comments