@@ -43,6 +43,8 @@ use bitcoin::hashes::Hash;
4343use bitcoin:: secp256k1:: { Secp256k1 , Message } ;
4444use bitcoin:: secp256k1:: key:: { PublicKey , SecretKey } ;
4545
46+ use regex;
47+
4648use std:: collections:: { BTreeSet , HashMap , HashSet } ;
4749use std:: default:: Default ;
4850use std:: sync:: { Arc , Mutex } ;
@@ -1322,7 +1324,7 @@ fn holding_cell_htlc_counting() {
13221324 {
13231325 let net_graph_msg_handler = & nodes[ 1 ] . net_graph_msg_handler ;
13241326 let route = get_route ( & nodes[ 1 ] . node . get_our_node_id ( ) , & net_graph_msg_handler. network_graph . read ( ) . unwrap ( ) , & nodes[ 2 ] . node . get_our_node_id ( ) , None , & Vec :: new ( ) , 100000 , TEST_FINAL_CLTV , & logger) . unwrap ( ) ;
1325- unwrap_send_err ! ( nodes[ 1 ] . node. send_payment( & route, payment_hash_1, & None ) , true , APIError :: ChannelUnavailable { err } ,
1327+ unwrap_send_err ! ( nodes[ 1 ] . node. send_payment( & route, payment_hash_1, & None ) , true , APIError :: ChannelUnavailable { ref err } ,
13261328 assert!( err. contains( "Cannot push more than their max accepted HTLCs" ) ) ) ;
13271329 assert ! ( nodes[ 1 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
13281330 nodes[ 1 ] . logger . assert_log_contains ( "lightning::ln::channelmanager" . to_string ( ) , "Cannot push more than their max accepted HTLCs" . to_string ( ) , 1 ) ;
@@ -1542,7 +1544,7 @@ fn test_basic_channel_reserve() {
15421544 match err {
15431545 PaymentSendFailure :: AllFailedRetrySafe ( ref fails) => {
15441546 match & fails[ 0 ] {
1545- APIError :: ChannelUnavailable { err} =>
1547+ & APIError :: ChannelUnavailable { ref err} =>
15461548 assert ! ( err. contains( "Cannot send value that would put us under local channel reserve value" ) ) ,
15471549 _ => panic ! ( "Unexpected error variant" ) ,
15481550 }
@@ -1752,7 +1754,7 @@ fn test_chan_reserve_violation_outbound_htlc_inbound_chan() {
17521754 } ;
17531755
17541756 let ( route, our_payment_hash, _) = get_route_and_payment_hash ! ( 1000 ) ;
1755- unwrap_send_err ! ( nodes[ 1 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { err } ,
1757+ unwrap_send_err ! ( nodes[ 1 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { ref err } ,
17561758 assert_eq!( err, "Cannot send value that would put them under remote channel reserve value" ) ) ;
17571759 assert ! ( nodes[ 1 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
17581760 nodes[ 1 ] . logger . assert_log ( "lightning::ln::channelmanager" . to_string ( ) , "Cannot send value that would put them under remote channel reserve value" . to_string ( ) , 1 ) ;
@@ -1930,7 +1932,7 @@ fn test_channel_reserve_holding_cell_htlcs() {
19301932 {
19311933 let ( route, our_payment_hash, _) = get_route_and_payment_hash ! ( recv_value_0 + 1 ) ;
19321934 assert ! ( route. paths[ 0 ] . iter( ) . rev( ) . skip( 1 ) . all( |h| h. fee_msat == feemsat) ) ;
1933- unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { err } ,
1935+ unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { ref err } ,
19341936 assert!( err. contains( "Cannot send value that would put us over the max HTLC value in flight our peer will accept" ) ) ) ;
19351937 assert ! ( nodes[ 0 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
19361938 nodes[ 0 ] . logger . assert_log_contains ( "lightning::ln::channelmanager" . to_string ( ) , "Cannot send value that would put us over the max HTLC value in flight our peer will accept" . to_string ( ) , 1 ) ;
@@ -1994,7 +1996,7 @@ fn test_channel_reserve_holding_cell_htlcs() {
19941996 let recv_value_2 = stat01. value_to_self_msat - amt_msat_1 - stat01. channel_reserve_msat - total_fee_msat - commit_tx_fee_2_htlcs;
19951997 {
19961998 let ( route, our_payment_hash, _) = get_route_and_payment_hash ! ( recv_value_2 + 1 ) ;
1997- unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { err } ,
1999+ unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { ref err } ,
19982000 assert!( err. contains( "Cannot send value that would put us under local channel reserve value" ) ) ) ;
19992001 assert ! ( nodes[ 0 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
20002002 }
@@ -2020,7 +2022,7 @@ fn test_channel_reserve_holding_cell_htlcs() {
20202022 // test with outbound holding cell amount > 0
20212023 {
20222024 let ( route, our_payment_hash, _) = get_route_and_payment_hash ! ( recv_value_22+1 ) ;
2023- unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { err } ,
2025+ unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { ref err } ,
20242026 assert!( err. contains( "Cannot send value that would put us under local channel reserve value" ) ) ) ;
20252027 assert ! ( nodes[ 0 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
20262028 nodes[ 0 ] . logger . assert_log_contains ( "lightning::ln::channelmanager" . to_string ( ) , "Cannot send value that would put us under local channel reserve value" . to_string ( ) , 2 ) ;
@@ -2107,7 +2109,7 @@ fn test_channel_reserve_holding_cell_htlcs() {
21072109 match err {
21082110 PaymentSendFailure :: AllFailedRetrySafe ( ref fails) => {
21092111 match & fails[ 0 ] {
2110- APIError :: ChannelUnavailable { err} =>
2112+ & APIError :: ChannelUnavailable { ref err} =>
21112113 assert ! ( err. contains( "Cannot send value that would put us under local channel reserve value" ) ) ,
21122114 _ => panic ! ( "Unexpected error variant" ) ,
21132115 }
@@ -6404,7 +6406,7 @@ fn test_update_add_htlc_bolt2_sender_value_below_minimum_msat() {
64046406 let mut route = get_route ( & nodes[ 0 ] . node . get_our_node_id ( ) , & net_graph_msg_handler. network_graph . read ( ) . unwrap ( ) , & nodes[ 1 ] . node . get_our_node_id ( ) , None , & [ ] , 100000 , TEST_FINAL_CLTV , & logger) . unwrap ( ) ;
64056407 route. paths [ 0 ] [ 0 ] . fee_msat = 100 ;
64066408
6407- unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { err } ,
6409+ unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { ref err } ,
64086410 assert!( err. contains( "Cannot send less than their minimum HTLC value" ) ) ) ;
64096411 assert ! ( nodes[ 0 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
64106412 nodes[ 0 ] . logger . assert_log_contains ( "lightning::ln::channelmanager" . to_string ( ) , "Cannot send less than their minimum HTLC value" . to_string ( ) , 1 ) ;
@@ -6424,7 +6426,7 @@ fn test_update_add_htlc_bolt2_sender_zero_value_msat() {
64246426 let logger = test_utils:: TestLogger :: new ( ) ;
64256427 let mut route = get_route ( & nodes[ 0 ] . node . get_our_node_id ( ) , & net_graph_msg_handler. network_graph . read ( ) . unwrap ( ) , & nodes[ 1 ] . node . get_our_node_id ( ) , None , & [ ] , 100000 , TEST_FINAL_CLTV , & logger) . unwrap ( ) ;
64266428 route. paths [ 0 ] [ 0 ] . fee_msat = 0 ;
6427- unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { err } ,
6429+ unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { ref err } ,
64286430 assert_eq!( err, "Cannot send 0-msat HTLC" ) ) ;
64296431
64306432 assert ! ( nodes[ 0 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
@@ -6470,7 +6472,7 @@ fn test_update_add_htlc_bolt2_sender_cltv_expiry_too_high() {
64706472
64716473 let net_graph_msg_handler = & nodes[ 0 ] . net_graph_msg_handler ;
64726474 let route = get_route ( & nodes[ 0 ] . node . get_our_node_id ( ) , & net_graph_msg_handler. network_graph . read ( ) . unwrap ( ) , & nodes[ 1 ] . node . get_our_node_id ( ) , None , & [ ] , 100000000 , 500000001 , & logger) . unwrap ( ) ;
6473- unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: RouteError { err } ,
6475+ unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: RouteError { ref err } ,
64746476 assert_eq!( err, & "Channel CLTV overflowed?" ) ) ;
64756477}
64766478
@@ -6514,7 +6516,7 @@ fn test_update_add_htlc_bolt2_sender_exceed_max_htlc_num_and_htlc_id_increment()
65146516 let ( _, our_payment_hash) = get_payment_preimage_hash ! ( nodes[ 0 ] ) ;
65156517 let net_graph_msg_handler = & nodes[ 0 ] . net_graph_msg_handler ;
65166518 let route = get_route ( & nodes[ 0 ] . node . get_our_node_id ( ) , & net_graph_msg_handler. network_graph . read ( ) . unwrap ( ) , & nodes[ 1 ] . node . get_our_node_id ( ) , None , & [ ] , 100000 , TEST_FINAL_CLTV , & logger) . unwrap ( ) ;
6517- unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { err } ,
6519+ unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { ref err } ,
65186520 assert!( err. contains( "Cannot push more than their max accepted HTLCs" ) ) ) ;
65196521
65206522 assert ! ( nodes[ 0 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
@@ -6538,7 +6540,7 @@ fn test_update_add_htlc_bolt2_sender_exceed_max_htlc_value_in_flight() {
65386540 let net_graph_msg_handler = & nodes[ 0 ] . net_graph_msg_handler ;
65396541 let logger = test_utils:: TestLogger :: new ( ) ;
65406542 let route = get_route ( & nodes[ 0 ] . node . get_our_node_id ( ) , & net_graph_msg_handler. network_graph . read ( ) . unwrap ( ) , & nodes[ 1 ] . node . get_our_node_id ( ) , None , & [ ] , max_in_flight+1 , TEST_FINAL_CLTV , & logger) . unwrap ( ) ;
6541- unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { err } ,
6543+ unwrap_send_err ! ( nodes[ 0 ] . node. send_payment( & route, our_payment_hash, & None ) , true , APIError :: ChannelUnavailable { ref err } ,
65426544 assert!( err. contains( "Cannot send value that would put us over the max HTLC value in flight our peer will accept" ) ) ) ;
65436545
65446546 assert ! ( nodes[ 0 ] . node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
0 commit comments