@@ -2421,7 +2421,8 @@ fn auto_retry_partial_failure() {
24212421	let  payment_params = PaymentParameters :: from_node_id ( nodes[ 1 ] . node . get_our_node_id ( ) ,  TEST_FINAL_CLTV ) 
24222422		. with_expiry_time ( payment_expiry_secs as  u64 ) 
24232423		. with_bolt11_features ( invoice_features) . unwrap ( ) ; 
2424- 	let  route_params = RouteParameters :: from_payment_params_and_value ( payment_params,  amt_msat) ; 
2424+ 	let  mut  route_params = RouteParameters :: from_payment_params_and_value ( payment_params,  amt_msat) ; 
2425+ 	route_params. max_total_routing_fee_msat  = None ; 
24252426
24262427	// Configure the initial send, retry1 and retry2's paths. 
24272428	let  send_route = Route  { 
@@ -2487,14 +2488,16 @@ fn auto_retry_partial_failure() {
24872488	nodes[ 0 ] . router . expect_find_route ( route_params. clone ( ) ,  Ok ( send_route) ) ; 
24882489	let  mut  payment_params = route_params. payment_params . clone ( ) ; 
24892490	payment_params. previously_failed_channels . push ( chan_2_id) ; 
2490- 	nodes[ 0 ] . router . expect_find_route ( 
2491- 		RouteParameters :: from_payment_params_and_value ( payment_params,  amt_msat / 2 ) , 
2492- 		Ok ( retry_1_route) ) ; 
2491+ 
2492+ 	let  mut  retry_1_params = RouteParameters :: from_payment_params_and_value ( payment_params,  amt_msat / 2 ) ; 
2493+ 	retry_1_params. max_total_routing_fee_msat  = None ; 
2494+ 	nodes[ 0 ] . router . expect_find_route ( retry_1_params,  Ok ( retry_1_route) ) ; 
2495+ 
24932496	let  mut  payment_params = route_params. payment_params . clone ( ) ; 
24942497	payment_params. previously_failed_channels . push ( chan_3_id) ; 
2495- 	nodes [ 0 ] . router . expect_find_route ( 
2496- 		 RouteParameters :: from_payment_params_and_value ( payment_params ,  amt_msat /  4 ) , 
2497- 		 Ok ( retry_2_route) ) ; 
2498+ 	let   mut  retry_2_params =  RouteParameters :: from_payment_params_and_value ( payment_params ,  amt_msat /  4 ) ; 
2499+ 	retry_2_params . max_total_routing_fee_msat  =  None ; 
2500+ 	nodes [ 0 ] . router . expect_find_route ( retry_2_params ,   Ok ( retry_2_route) ) ; 
24982501
24992502	// Send a payment that will partially fail on send, then partially fail on retry, then succeed. 
25002503	nodes[ 0 ] . node . send_payment ( payment_hash,  RecipientOnionFields :: secret_only ( payment_secret) , 
@@ -2718,8 +2721,9 @@ fn retry_multi_path_single_failed_payment() {
27182721	let  payment_params = PaymentParameters :: from_node_id ( nodes[ 1 ] . node . get_our_node_id ( ) ,  TEST_FINAL_CLTV ) 
27192722		. with_expiry_time ( payment_expiry_secs as  u64 ) 
27202723		. with_bolt11_features ( invoice_features) . unwrap ( ) ; 
2721- 	let  route_params = RouteParameters :: from_payment_params_and_value ( 
2724+ 	let  mut   route_params = RouteParameters :: from_payment_params_and_value ( 
27222725		payment_params. clone ( ) ,  amt_msat) ; 
2726+ 	route_params. max_total_routing_fee_msat  = None ; 
27232727
27242728	let  chans = nodes[ 0 ] . node . list_usable_channels ( ) ; 
27252729	let  mut  route = Route  { 
@@ -2751,11 +2755,12 @@ fn retry_multi_path_single_failed_payment() {
27512755	route. paths [ 1 ] . hops [ 0 ] . fee_msat  = 50_000_000 ; 
27522756	let  mut  pay_params = route. route_params . clone ( ) . unwrap ( ) . payment_params ; 
27532757	pay_params. previously_failed_channels . push ( chans[ 1 ] . short_channel_id . unwrap ( ) ) ; 
2754- 	nodes[ 0 ] . router . expect_find_route ( 
2755- 		// Note that the second request here requests the amount we originally failed to send, 
2756- 		// not the amount remaining on the full payment, which should be changed. 
2757- 		RouteParameters :: from_payment_params_and_value ( pay_params,  100_000_001 ) , 
2758- 		Ok ( route. clone ( ) ) ) ; 
2758+ 
2759+ 	// Note that the second request here requests the amount we originally failed to send, 
2760+ 	// not the amount remaining on the full payment, which should be changed. 
2761+ 	let  mut  retry_params = RouteParameters :: from_payment_params_and_value ( pay_params,  100_000_001 ) ; 
2762+ 	retry_params. max_total_routing_fee_msat  = None ; 
2763+ 	nodes[ 0 ] . router . expect_find_route ( retry_params,  Ok ( route. clone ( ) ) ) ; 
27592764
27602765	{ 
27612766		let  scorer = chanmon_cfgs[ 0 ] . scorer . read ( ) . unwrap ( ) ; 
@@ -2898,7 +2903,8 @@ fn no_extra_retries_on_back_to_back_fail() {
28982903	let  payment_params = PaymentParameters :: from_node_id ( nodes[ 1 ] . node . get_our_node_id ( ) ,  TEST_FINAL_CLTV ) 
28992904		. with_expiry_time ( payment_expiry_secs as  u64 ) 
29002905		. with_bolt11_features ( invoice_features) . unwrap ( ) ; 
2901- 	let  route_params = RouteParameters :: from_payment_params_and_value ( payment_params,  amt_msat) ; 
2906+ 	let  mut  route_params = RouteParameters :: from_payment_params_and_value ( payment_params,  amt_msat) ; 
2907+ 	route_params. max_total_routing_fee_msat  = None ; 
29022908
29032909	let  mut  route = Route  { 
29042910		paths :  vec ! [ 
@@ -2941,15 +2947,16 @@ fn no_extra_retries_on_back_to_back_fail() {
29412947			PaymentParameters :: from_node_id ( nodes[ 2 ] . node . get_our_node_id ( ) ,  TEST_FINAL_CLTV ) , 
29422948			100_000_000 ) ) , 
29432949	} ; 
2950+ 	route. route_params . as_mut ( ) . unwrap ( ) . max_total_routing_fee_msat  = None ; 
29442951	nodes[ 0 ] . router . expect_find_route ( route_params. clone ( ) ,  Ok ( route. clone ( ) ) ) ; 
29452952	let  mut  second_payment_params = route_params. payment_params . clone ( ) ; 
29462953	second_payment_params. previously_failed_channels  = vec ! [ chan_2_scid,  chan_2_scid] ; 
29472954	// On retry, we'll only return one path 
29482955	route. paths . remove ( 1 ) ; 
29492956	route. paths [ 0 ] . hops [ 1 ] . fee_msat  = amt_msat; 
2950- 	nodes [ 0 ] . router . expect_find_route ( 
2951- 		 RouteParameters :: from_payment_params_and_value ( second_payment_params ,  amt_msat ) , 
2952- 		 Ok ( route. clone ( ) ) ) ; 
2957+ 	let   mut  retry_params =  RouteParameters :: from_payment_params_and_value ( second_payment_params ,  amt_msat ) ; 
2958+ 	retry_params . max_total_routing_fee_msat  =  None ; 
2959+ 	nodes [ 0 ] . router . expect_find_route ( retry_params ,   Ok ( route. clone ( ) ) ) ; 
29532960
29542961	nodes[ 0 ] . node . send_payment ( payment_hash,  RecipientOnionFields :: secret_only ( payment_secret) , 
29552962		PaymentId ( payment_hash. 0 ) ,  route_params,  Retry :: Attempts ( 1 ) ) . unwrap ( ) ; 
@@ -3102,7 +3109,8 @@ fn test_simple_partial_retry() {
31023109	let  payment_params = PaymentParameters :: from_node_id ( nodes[ 1 ] . node . get_our_node_id ( ) ,  TEST_FINAL_CLTV ) 
31033110		. with_expiry_time ( payment_expiry_secs as  u64 ) 
31043111		. with_bolt11_features ( invoice_features) . unwrap ( ) ; 
3105- 	let  route_params = RouteParameters :: from_payment_params_and_value ( payment_params,  amt_msat) ; 
3112+ 	let  mut  route_params = RouteParameters :: from_payment_params_and_value ( payment_params,  amt_msat) ; 
3113+ 	route_params. max_total_routing_fee_msat  = None ; 
31063114
31073115	let  mut  route = Route  { 
31083116		paths :  vec ! [ 
@@ -3145,14 +3153,15 @@ fn test_simple_partial_retry() {
31453153			PaymentParameters :: from_node_id ( nodes[ 2 ] . node . get_our_node_id ( ) ,  TEST_FINAL_CLTV ) , 
31463154			100_000_000 ) ) , 
31473155	} ; 
3156+ 	route. route_params . as_mut ( ) . unwrap ( ) . max_total_routing_fee_msat  = None ; 
31483157	nodes[ 0 ] . router . expect_find_route ( route_params. clone ( ) ,  Ok ( route. clone ( ) ) ) ; 
31493158	let  mut  second_payment_params = route_params. payment_params . clone ( ) ; 
31503159	second_payment_params. previously_failed_channels  = vec ! [ chan_2_scid] ; 
31513160	// On retry, we'll only be asked for one path (or 100k sats) 
31523161	route. paths . remove ( 0 ) ; 
3153- 	nodes [ 0 ] . router . expect_find_route ( 
3154- 		 RouteParameters :: from_payment_params_and_value ( second_payment_params ,  amt_msat /  2 ) , 
3155- 		 Ok ( route. clone ( ) ) ) ; 
3162+ 	let   mut  retry_params =  RouteParameters :: from_payment_params_and_value ( second_payment_params ,  amt_msat /  2 ) ; 
3163+ 	retry_params . max_total_routing_fee_msat  =  None ; 
3164+ 	nodes [ 0 ] . router . expect_find_route ( retry_params ,   Ok ( route. clone ( ) ) ) ; 
31563165
31573166	nodes[ 0 ] . node . send_payment ( payment_hash,  RecipientOnionFields :: secret_only ( payment_secret) , 
31583167		PaymentId ( payment_hash. 0 ) ,  route_params,  Retry :: Attempts ( 1 ) ) . unwrap ( ) ; 
0 commit comments