@@ -1167,6 +1167,21 @@ macro_rules! get_payment_preimage_hash {
11671167 }
11681168}
11691169
1170+ #[ macro_export]
1171+ macro_rules! get_route {
1172+ ( $send_node: expr, $payment_params: expr, $recv_value: expr, $cltv: expr) => { {
1173+ use $crate:: chain:: keysinterface:: KeysInterface ;
1174+ let scorer = $crate:: util:: test_utils:: TestScorer :: with_penalty( 0 ) ;
1175+ let keys_manager = $crate:: util:: test_utils:: TestKeysInterface :: new( & [ 0u8 ; 32 ] , bitcoin:: network:: constants:: Network :: Testnet ) ;
1176+ let random_seed_bytes = keys_manager. get_secure_random_bytes( ) ;
1177+ $crate:: routing:: router:: get_route(
1178+ & $send_node. node. get_our_node_id( ) , & $payment_params, & $send_node. network_graph. read_only( ) ,
1179+ Some ( & $send_node. node. list_usable_channels( ) . iter( ) . collect:: <Vec <_>>( ) ) ,
1180+ $recv_value, $cltv, $send_node. logger, & scorer, & random_seed_bytes
1181+ )
1182+ } }
1183+ }
1184+
11701185#[ cfg( test) ]
11711186#[ macro_export]
11721187macro_rules! get_route_and_payment_hash {
@@ -1176,17 +1191,9 @@ macro_rules! get_route_and_payment_hash {
11761191 $crate:: get_route_and_payment_hash!( $send_node, $recv_node, payment_params, $recv_value, TEST_FINAL_CLTV )
11771192 } } ;
11781193 ( $send_node: expr, $recv_node: expr, $payment_params: expr, $recv_value: expr, $cltv: expr) => { {
1179- use $crate:: chain:: keysinterface:: KeysInterface ;
11801194 let ( payment_preimage, payment_hash, payment_secret) = $crate:: get_payment_preimage_hash!( $recv_node, Some ( $recv_value) ) ;
1181- let scorer = $crate:: util:: test_utils:: TestScorer :: with_penalty( 0 ) ;
1182- let keys_manager = $crate:: util:: test_utils:: TestKeysInterface :: new( & [ 0u8 ; 32 ] , bitcoin:: network:: constants:: Network :: Testnet ) ;
1183- let random_seed_bytes = keys_manager. get_secure_random_bytes( ) ;
1184- let route = $crate:: routing:: router:: get_route(
1185- & $send_node. node. get_our_node_id( ) , & $payment_params, & $send_node. network_graph. read_only( ) ,
1186- Some ( & $send_node. node. list_usable_channels( ) . iter( ) . collect:: <Vec <_>>( ) ) ,
1187- $recv_value, $cltv, $send_node. logger, & scorer, & random_seed_bytes
1188- ) . unwrap( ) ;
1189- ( route, payment_hash, payment_preimage, payment_secret)
1195+ let route = $crate:: get_route!( $send_node, $payment_params, $recv_value, $cltv) ;
1196+ ( route. unwrap( ) , payment_hash, payment_preimage, payment_secret)
11901197 } }
11911198}
11921199
@@ -1650,15 +1657,7 @@ pub const TEST_FINAL_CLTV: u32 = 70;
16501657pub fn route_payment < ' a , ' b , ' c > ( origin_node : & Node < ' a , ' b , ' c > , expected_route : & [ & Node < ' a , ' b , ' c > ] , recv_value : u64 ) -> ( PaymentPreimage , PaymentHash , PaymentSecret ) {
16511658 let payment_params = PaymentParameters :: from_node_id ( expected_route. last ( ) . unwrap ( ) . node . get_our_node_id ( ) )
16521659 . with_features ( InvoiceFeatures :: known ( ) ) ;
1653- let network_graph = origin_node. network_graph . read_only ( ) ;
1654- let scorer = test_utils:: TestScorer :: with_penalty ( 0 ) ;
1655- let seed = [ 0u8 ; 32 ] ;
1656- let keys_manager = test_utils:: TestKeysInterface :: new ( & seed, Network :: Testnet ) ;
1657- let random_seed_bytes = keys_manager. get_secure_random_bytes ( ) ;
1658- let route = get_route (
1659- & origin_node. node . get_our_node_id ( ) , & payment_params, & network_graph,
1660- Some ( & origin_node. node . list_usable_channels ( ) . iter ( ) . collect :: < Vec < _ > > ( ) ) ,
1661- recv_value, TEST_FINAL_CLTV , origin_node. logger , & scorer, & random_seed_bytes) . unwrap ( ) ;
1660+ let route = get_route ! ( origin_node, payment_params, recv_value, TEST_FINAL_CLTV ) . unwrap ( ) ;
16621661 assert_eq ! ( route. paths. len( ) , 1 ) ;
16631662 assert_eq ! ( route. paths[ 0 ] . len( ) , expected_route. len( ) ) ;
16641663 for ( node, hop) in expected_route. iter ( ) . zip ( route. paths [ 0 ] . iter ( ) ) {
0 commit comments