@@ -2564,6 +2564,7 @@ pub struct ClaimAlongRouteArgs<'a, 'b, 'c, 'd> {
2564
2564
pub origin_node : & ' a Node < ' b , ' c , ' d > ,
2565
2565
pub expected_paths : & ' a [ & ' a [ & ' a Node < ' b , ' c , ' d > ] ] ,
2566
2566
pub expected_extra_fees : Vec < u32 > ,
2567
+ pub expected_min_htlc_overpay : Vec < u32 > ,
2567
2568
pub skip_last : bool ,
2568
2569
pub payment_preimage : PaymentPreimage ,
2569
2570
}
@@ -2575,7 +2576,7 @@ impl<'a, 'b, 'c, 'd> ClaimAlongRouteArgs<'a, 'b, 'c, 'd> {
2575
2576
) -> Self {
2576
2577
Self {
2577
2578
origin_node, expected_paths, expected_extra_fees : vec ! [ 0 ; expected_paths. len( ) ] ,
2578
- skip_last : false , payment_preimage,
2579
+ expected_min_htlc_overpay : vec ! [ 0 ; expected_paths . len ( ) ] , skip_last : false , payment_preimage,
2579
2580
}
2580
2581
}
2581
2582
pub fn skip_last ( mut self , skip_last : bool ) -> Self {
@@ -2586,11 +2587,15 @@ impl<'a, 'b, 'c, 'd> ClaimAlongRouteArgs<'a, 'b, 'c, 'd> {
2586
2587
self . expected_extra_fees = extra_fees;
2587
2588
self
2588
2589
}
2590
+ pub fn with_expected_min_htlc_overpay ( mut self , extra_fees : Vec < u32 > ) -> Self {
2591
+ self . expected_min_htlc_overpay = extra_fees;
2592
+ self
2593
+ }
2589
2594
}
2590
2595
2591
2596
pub fn pass_claimed_payment_along_route < ' a , ' b , ' c , ' d > ( args : ClaimAlongRouteArgs ) -> u64 {
2592
2597
let ClaimAlongRouteArgs {
2593
- origin_node, expected_paths, expected_extra_fees, skip_last,
2598
+ origin_node, expected_paths, expected_extra_fees, expected_min_htlc_overpay , skip_last,
2594
2599
payment_preimage : our_payment_preimage
2595
2600
} = args;
2596
2601
let claim_event = expected_paths[ 0 ] . last ( ) . unwrap ( ) . node . get_and_clear_pending_events ( ) ;
@@ -2689,7 +2694,10 @@ pub fn pass_claimed_payment_along_route<'a, 'b, 'c, 'd>(args: ClaimAlongRouteArg
2689
2694
channel. context( ) . config( ) . forwarding_fee_base_msat
2690
2695
}
2691
2696
} ;
2692
- if $idx == 1 { fee += expected_extra_fees[ i] ; }
2697
+ if $idx == 1 {
2698
+ fee += expected_extra_fees[ i] ;
2699
+ fee += expected_min_htlc_overpay[ i] ;
2700
+ }
2693
2701
expect_payment_forwarded!( * $node, $next_node, $prev_node, Some ( fee as u64 ) , false , false ) ;
2694
2702
expected_total_fee_msat += fee as u64 ;
2695
2703
check_added_monitors!( $node, 1 ) ;
0 commit comments