22
33mod common;
44
5- use common:: { create_service_and_client_nodes, get_lsps_message, LSPSNodes , LiquidityNode } ;
5+ use common:: {
6+ create_service_and_client_nodes, create_service_client_and_payer_nodes, get_lsps_message,
7+ LSPSNodes , LSPSNodesWithPayer , LiquidityNode ,
8+ } ;
69
710use lightning:: check_added_monitors;
811use lightning:: events:: Event ;
@@ -61,9 +64,7 @@ use std::time::Duration;
6164const MAX_PENDING_REQUESTS_PER_PEER : usize = 10 ;
6265const MAX_TOTAL_PENDING_REQUESTS : usize = 1000 ;
6366
64- fn setup_test_lsps2_nodes < ' a , ' b , ' c > (
65- nodes : Vec < Node < ' a , ' b , ' c > > ,
66- ) -> ( LSPSNodes < ' a , ' b , ' c > , [ u8 ; 32 ] ) {
67+ fn build_lsps2_configs ( ) -> ( [ u8 ; 32 ] , LiquidityServiceConfig , LiquidityClientConfig ) {
6768 let promise_secret = [ 42 ; 32 ] ;
6869 let lsps2_service_config = LSPS2ServiceConfig { promise_secret } ;
6970 let service_config = LiquidityServiceConfig {
@@ -73,20 +74,38 @@ fn setup_test_lsps2_nodes<'a, 'b, 'c>(
7374 lsps5_service_config : None ,
7475 advertise_service : true ,
7576 } ;
76-
7777 let lsps2_client_config = LSPS2ClientConfig :: default ( ) ;
7878 let client_config = LiquidityClientConfig {
7979 lsps1_client_config : None ,
8080 lsps2_client_config : Some ( lsps2_client_config) ,
8181 lsps5_client_config : None ,
8282 } ;
83- let lsps_nodes = create_service_and_client_nodes (
83+ ( promise_secret, service_config, client_config)
84+ }
85+
86+ fn setup_test_lsps2_nodes_with_payer < ' a , ' b , ' c > (
87+ nodes : Vec < Node < ' a , ' b , ' c > > ,
88+ ) -> ( LSPSNodesWithPayer < ' a , ' b , ' c > , [ u8 ; 32 ] ) {
89+ let ( promise_secret, service_config, client_config) = build_lsps2_configs ( ) ;
90+ let lsps_nodes = create_service_client_and_payer_nodes (
8491 nodes,
8592 service_config,
8693 client_config,
8794 Arc :: new ( DefaultTimeProvider ) ,
8895 ) ;
96+ ( lsps_nodes, promise_secret)
97+ }
8998
99+ fn setup_test_lsps2_nodes < ' a , ' b , ' c > (
100+ nodes : Vec < Node < ' a , ' b , ' c > > ,
101+ ) -> ( LSPSNodes < ' a , ' b , ' c > , [ u8 ; 32 ] ) {
102+ let ( promise_secret, service_config, client_config) = build_lsps2_configs ( ) ;
103+ let lsps_nodes = create_service_and_client_nodes (
104+ nodes,
105+ service_config,
106+ client_config,
107+ Arc :: new ( DefaultTimeProvider ) ,
108+ ) ;
90109 ( lsps_nodes, promise_secret)
91110}
92111
@@ -103,10 +122,6 @@ fn create_jit_invoice(
103122 log_error ! ( node. logger, "Failed to register inbound payment: {:?}" , e) ;
104123 } ) ?;
105124
106- // Add debugging here
107- println ! ( "Creating route hint with intercept_scid: {}" , intercept_scid) ;
108- println ! ( "Service node ID: {}" , service_node_id) ;
109-
110125 let route_hint = RouteHint ( vec ! [ RouteHintHop {
111126 src_node_id: service_node_id,
112127 short_channel_id: intercept_scid,
@@ -147,9 +162,6 @@ fn create_jit_invoice(
147162 } )
148163 } ) ?;
149164
150- // Add debugging to verify the invoice
151- println ! ( "Created invoice with route hints: {:?}" , invoice. route_hints( ) ) ;
152-
153165 Ok ( invoice)
154166}
155167
@@ -160,7 +172,7 @@ fn invoice_generation_flow() {
160172 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
161173 let nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
162174 let ( lsps_nodes, promise_secret) = setup_test_lsps2_nodes ( nodes) ;
163- let LSPSNodes { service_node, client_node, .. } = lsps_nodes;
175+ let LSPSNodes { service_node, client_node } = lsps_nodes;
164176 let service_node_id = service_node. inner . node . get_our_node_id ( ) ;
165177 let client_node_id = client_node. inner . node . get_our_node_id ( ) ;
166178
@@ -308,7 +320,7 @@ fn channel_open_failed() {
308320 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
309321 let nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
310322 let ( lsps_nodes, _) = setup_test_lsps2_nodes ( nodes) ;
311- let LSPSNodes { service_node, client_node, .. } = lsps_nodes;
323+ let LSPSNodes { service_node, client_node } = lsps_nodes;
312324
313325 let service_node_id = service_node. inner . node . get_our_node_id ( ) ;
314326 let client_node_id = client_node. inner . node . get_our_node_id ( ) ;
@@ -443,7 +455,7 @@ fn channel_open_failed_nonexistent_channel() {
443455 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
444456 let nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
445457 let ( lsps_nodes, _) = setup_test_lsps2_nodes ( nodes) ;
446- let LSPSNodes { service_node, client_node, .. } = lsps_nodes;
458+ let LSPSNodes { service_node, client_node } = lsps_nodes;
447459
448460 let client_node_id = client_node. inner . node . get_our_node_id ( ) ;
449461
@@ -469,7 +481,7 @@ fn channel_open_abandoned() {
469481 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
470482 let nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
471483 let ( lsps_nodes, _) = setup_test_lsps2_nodes ( nodes) ;
472- let LSPSNodes { service_node, client_node, .. } = lsps_nodes;
484+ let LSPSNodes { service_node, client_node } = lsps_nodes;
473485
474486 let service_node_id = service_node. inner . node . get_our_node_id ( ) ;
475487 let client_node_id = client_node. inner . node . get_our_node_id ( ) ;
@@ -553,7 +565,7 @@ fn channel_open_abandoned_nonexistent_channel() {
553565 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
554566 let nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
555567 let ( lsps_nodes, _) = setup_test_lsps2_nodes ( nodes) ;
556- let LSPSNodes { service_node, client_node, .. } = lsps_nodes;
568+ let LSPSNodes { service_node, client_node } = lsps_nodes;
557569
558570 let client_node_id = client_node. inner . node . get_our_node_id ( ) ;
559571 let service_handler = service_node. liquidity_manager . lsps2_service_handler ( ) . unwrap ( ) ;
@@ -578,7 +590,7 @@ fn max_pending_requests_per_peer_rejected() {
578590 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
579591 let nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
580592 let ( lsps_nodes, _) = setup_test_lsps2_nodes ( nodes) ;
581- let LSPSNodes { service_node, client_node, .. } = lsps_nodes;
593+ let LSPSNodes { service_node, client_node } = lsps_nodes;
582594
583595 let service_node_id = service_node. inner . node . get_our_node_id ( ) ;
584596 let client_node_id = client_node. inner . node . get_our_node_id ( ) ;
@@ -633,7 +645,7 @@ fn max_total_requests_buy_rejected() {
633645 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
634646 let nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
635647 let ( lsps_nodes, _) = setup_test_lsps2_nodes ( nodes) ;
636- let LSPSNodes { service_node, client_node, .. } = lsps_nodes;
648+ let LSPSNodes { service_node, client_node } = lsps_nodes;
637649
638650 let service_node_id = service_node. inner . node . get_our_node_id ( ) ;
639651
@@ -762,7 +774,7 @@ fn invalid_token_flow() {
762774 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
763775 let nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
764776 let ( lsps_nodes, _) = setup_test_lsps2_nodes ( nodes) ;
765- let LSPSNodes { service_node, client_node, .. } = lsps_nodes;
777+ let LSPSNodes { service_node, client_node } = lsps_nodes;
766778
767779 let service_node_id = service_node. inner . node . get_our_node_id ( ) ;
768780 let client_node_id = client_node. inner . node . get_our_node_id ( ) ;
@@ -841,7 +853,7 @@ fn opening_fee_params_menu_is_sorted_by_spec() {
841853 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
842854 let nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
843855 let ( lsps_nodes, _) = setup_test_lsps2_nodes ( nodes) ;
844- let LSPSNodes { service_node, client_node, .. } = lsps_nodes;
856+ let LSPSNodes { service_node, client_node } = lsps_nodes;
845857 let service_node_id = service_node. inner . node . get_our_node_id ( ) ;
846858 let client_node_id = client_node. inner . node . get_our_node_id ( ) ;
847859
@@ -926,9 +938,9 @@ fn full_lsps2_flow() {
926938 & [ Some ( service_node_config) , Some ( client_node_config) , None ] ,
927939 ) ;
928940 let nodes = create_network ( 3 , & node_cfgs, & node_chanmgrs) ;
929- let ( lsps_nodes, promise_secret) = setup_test_lsps2_nodes ( nodes) ;
930- let LSPSNodes { service_node, client_node, payer_node_optional } = lsps_nodes;
931- let payer_node = payer_node_optional . unwrap ( ) ;
941+ let ( lsps_nodes, promise_secret) = setup_test_lsps2_nodes_with_payer ( nodes) ;
942+ let LSPSNodesWithPayer { service_node, client_node, payer_node } = lsps_nodes;
943+
932944 let payer_node_id = payer_node. node . get_our_node_id ( ) ;
933945 let service_node_id = service_node. inner . node . get_our_node_id ( ) ;
934946 let client_node_id = client_node. inner . node . get_our_node_id ( ) ;
@@ -1188,15 +1200,15 @@ fn full_lsps2_flow() {
11881200 assert ! ( events. is_empty( ) , "Expected no events from service node, got: {:?}" , events) ;
11891201
11901202 client_node. inner . node . claim_funds ( preimage. unwrap ( ) ) ;
1191- /// TODO SIMPLIFY: put the payment_forwarded call inside a PaymentForwardedEvent
1203+ // TODO SIMPLIFY: put the payment_forwarded call inside a PaymentForwardedEvent
11921204 let expected_paths: & [ & [ & lightning:: ln:: functional_test_utils:: Node < ' _ , ' _ , ' _ > ] ] =
11931205 & [ & [ & service_node. inner , & client_node. inner ] ] ;
11941206
11951207 let args = ClaimAlongRouteArgs :: new ( & payer_node, expected_paths, preimage. unwrap ( ) ) ;
11961208 let total_fee_msat = pass_claimed_payment_along_route ( args) ;
11971209
11981210 service_handler. payment_forwarded ( channel_id) . unwrap ( ) ;
1199- ///
1211+
12001212 match service_node. liquidity_manager . next_event ( ) . unwrap ( ) {
12011213 LiquidityEvent :: LSPS2Service ( LSPS2ServiceEvent :: BroadcastFundingTransaction {
12021214 counterparty_node_id,
@@ -1205,6 +1217,8 @@ fn full_lsps2_flow() {
12051217 } ) => {
12061218 assert_eq ! ( counterparty_node_id, client_node_id) ;
12071219 assert_eq ! ( uid, user_channel_id) ;
1220+
1221+ // TODO actually broadcast transaction
12081222 } ,
12091223 other => panic ! ( "Unexpected event: {:?}" , other) ,
12101224 }
0 commit comments