@@ -2505,6 +2505,20 @@ fn test_yield_anchors_events() {
2505
2505
& LowerBoundedFeeEstimator :: new ( node_cfgs[ 1 ] . fee_estimator ) , & nodes[ 1 ] . logger
2506
2506
) ;
2507
2507
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
+
2508
2522
let mut holder_events = nodes[ 0 ] . chain_monitor . chain_monitor . get_and_clear_pending_events ( ) ;
2509
2523
assert_eq ! ( holder_events. len( ) , 1 ) ;
2510
2524
let ( commitment_tx, anchor_tx) = match holder_events. pop ( ) . unwrap ( ) {
@@ -2530,6 +2544,7 @@ fn test_yield_anchors_events() {
2530
2544
} ,
2531
2545
_ => panic ! ( "Unexpected event" ) ,
2532
2546
} ;
2547
+ check_spends ! ( commitment_tx, funding_tx) ;
2533
2548
2534
2549
assert_eq ! ( commitment_tx. output[ 2 ] . value. to_sat( ) , 1_000 ) ; // HTLC A -> B
2535
2550
assert_eq ! ( commitment_tx. output[ 3 ] . value. to_sat( ) , 2_000 ) ; // HTLC B -> A
@@ -2587,6 +2602,7 @@ fn test_yield_anchors_events() {
2587
2602
connect_blocks ( & nodes[ 0 ] , ANTI_REORG_DELAY - 1 ) ;
2588
2603
2589
2604
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 ) ;
2590
2606
2591
2607
connect_blocks ( & nodes[ 0 ] , BREAKDOWN_TIMEOUT as u32 ) ;
2592
2608
@@ -2599,11 +2615,6 @@ fn test_yield_anchors_events() {
2599
2615
}
2600
2616
}
2601
2617
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 ( ) ;
2607
2618
}
2608
2619
2609
2620
#[ test]
0 commit comments