@@ -2505,6 +2505,20 @@ fn test_yield_anchors_events() {
25052505 & LowerBoundedFeeEstimator :: new ( node_cfgs[ 1 ] . fee_estimator ) , & nodes[ 1 ] . logger
25062506 ) ;
25072507
2508+ check_closed_broadcast ( & nodes[ 0 ] , 1 , true ) ;
2509+ let a_events = nodes[ 0 ] . node . get_and_clear_pending_events ( ) ;
2510+ assert_eq ! ( a_events. len( ) , if have_htlcs { 3 } else { 1 } ) ;
2511+ assert ! ( a_events. iter( ) . any( |ev| matches!( ev, Event :: PendingHTLCsForwardable { .. } ) ) ) ;
2512+ assert ! ( a_events. iter( ) . any( |ev| matches!( ev, Event :: HTLCHandlingFailed { .. } ) ) ) ;
2513+ assert ! ( a_events. iter( ) . any( |ev| matches!( ev, Event :: ChannelClosed { .. } ) ) ) ;
2514+
2515+ check_closed_broadcast ( & nodes[ 1 ] , 1 , true ) ;
2516+ let b_events = nodes[ 1 ] . node . get_and_clear_pending_events ( ) ;
2517+ assert_eq ! ( b_events. len( ) , if have_htlcs { 3 } else { 1 } ) ;
2518+ assert ! ( b_events. iter( ) . any( |ev| matches!( ev, Event :: PendingHTLCsForwardable { .. } ) ) ) ;
2519+ assert ! ( b_events. iter( ) . any( |ev| matches!( ev, Event :: HTLCHandlingFailed { .. } ) ) ) ;
2520+ assert ! ( b_events. iter( ) . any( |ev| matches!( ev, Event :: ChannelClosed { .. } ) ) ) ;
2521+
25082522 let mut holder_events = nodes[ 0 ] . chain_monitor . chain_monitor . get_and_clear_pending_events ( ) ;
25092523 assert_eq ! ( holder_events. len( ) , 1 ) ;
25102524 let ( commitment_tx, anchor_tx) = match holder_events. pop ( ) . unwrap ( ) {
@@ -2530,6 +2544,7 @@ fn test_yield_anchors_events() {
25302544 } ,
25312545 _ => panic ! ( "Unexpected event" ) ,
25322546 } ;
2547+ check_spends ! ( commitment_tx, funding_tx) ;
25332548
25342549 assert_eq ! ( commitment_tx. output[ 2 ] . value. to_sat( ) , 1_000 ) ; // HTLC A -> B
25352550 assert_eq ! ( commitment_tx. output[ 3 ] . value. to_sat( ) , 2_000 ) ; // HTLC B -> A
@@ -2587,6 +2602,7 @@ fn test_yield_anchors_events() {
25872602 connect_blocks ( & nodes[ 0 ] , ANTI_REORG_DELAY - 1 ) ;
25882603
25892604 assert ! ( nodes[ 0 ] . chain_monitor. chain_monitor. get_and_clear_pending_events( ) . is_empty( ) ) ;
2605+ expect_payment_failed ! ( nodes[ 0 ] , payment_hash_1. unwrap( ) , false ) ;
25902606
25912607 connect_blocks ( & nodes[ 0 ] , BREAKDOWN_TIMEOUT as u32 ) ;
25922608
@@ -2599,11 +2615,6 @@ fn test_yield_anchors_events() {
25992615 }
26002616 }
26012617
2602- // Clear the remaining events as they're not relevant to what we're testing.
2603- nodes[ 0 ] . node . get_and_clear_pending_events ( ) ;
2604- nodes[ 1 ] . node . get_and_clear_pending_events ( ) ;
2605- nodes[ 0 ] . node . get_and_clear_pending_msg_events ( ) ;
2606- nodes[ 1 ] . node . get_and_clear_pending_msg_events ( ) ;
26072618}
26082619
26092620#[ test]
0 commit comments