@@ -124,6 +124,7 @@ fn do_test_simple_monitor_temporary_update_fail(disconnect: bool) {
124124 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
125125 let mut nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
126126 let channel_id = create_announced_chan_between_nodes ( & nodes, 0 , 1 ) . 2 ;
127+ let user_channel_id = nodes[ 1 ] . node . list_channels ( ) [ 0 ] . user_channel_id ;
127128
128129 let ( route, payment_hash_1, payment_preimage_1, payment_secret_1) = get_route_and_payment_hash ! ( & nodes[ 0 ] , nodes[ 1 ] , 1000000 ) ;
129130
@@ -165,11 +166,11 @@ fn do_test_simple_monitor_temporary_update_fail(disconnect: bool) {
165166 let events_3 = nodes[ 1 ] . node . get_and_clear_pending_events ( ) ;
166167 assert_eq ! ( events_3. len( ) , 1 ) ;
167168 match events_3[ 0 ] {
168- Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, via_channel_id , .. } => {
169+ Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, ref inbound_channel_ids , .. } => {
169170 assert_eq ! ( payment_hash_1, * payment_hash) ;
170171 assert_eq ! ( amount_msat, 1_000_000 ) ;
171172 assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 1 ] . node. get_our_node_id( ) ) ;
172- assert_eq ! ( via_channel_id , Some ( channel_id) ) ;
173+ assert_eq ! ( * inbound_channel_ids , vec! [ ( channel_id, Some ( user_channel_id ) ) ] ) ;
173174 match & purpose {
174175 PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
175176 assert ! ( payment_preimage. is_none( ) ) ;
@@ -247,6 +248,7 @@ fn do_test_monitor_temporary_update_fail(disconnect_count: usize) {
247248 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
248249 let mut nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
249250 let channel_id = create_announced_chan_between_nodes ( & nodes, 0 , 1 ) . 2 ;
251+ let user_channel_id = nodes[ 1 ] . node . list_channels ( ) [ 0 ] . user_channel_id ;
250252
251253 let ( payment_preimage_1, payment_hash_1, ..) = route_payment ( & nodes[ 0 ] , & [ & nodes[ 1 ] ] , 1_000_000 ) ;
252254
@@ -547,11 +549,11 @@ fn do_test_monitor_temporary_update_fail(disconnect_count: usize) {
547549 let events_5 = nodes[ 1 ] . node . get_and_clear_pending_events ( ) ;
548550 assert_eq ! ( events_5. len( ) , 1 ) ;
549551 match events_5[ 0 ] {
550- Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, via_channel_id , .. } => {
552+ Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, ref inbound_channel_ids , .. } => {
551553 assert_eq ! ( payment_hash_2, * payment_hash) ;
552554 assert_eq ! ( amount_msat, 1_000_000 ) ;
553555 assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 1 ] . node. get_our_node_id( ) ) ;
554- assert_eq ! ( via_channel_id , Some ( channel_id) ) ;
556+ assert_eq ! ( * inbound_channel_ids , vec! [ ( channel_id, Some ( user_channel_id ) ) ] ) ;
555557 match & purpose {
556558 PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
557559 assert ! ( payment_preimage. is_none( ) ) ;
@@ -601,6 +603,7 @@ fn test_monitor_update_fail_cs() {
601603 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
602604 let mut nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
603605 let channel_id = create_announced_chan_between_nodes ( & nodes, 0 , 1 ) . 2 ;
606+ let user_channel_id = nodes[ 1 ] . node . list_channels ( ) [ 0 ] . user_channel_id ;
604607
605608 let ( route, our_payment_hash, payment_preimage, our_payment_secret) = get_route_and_payment_hash ! ( nodes[ 0 ] , nodes[ 1 ] , 1000000 ) ;
606609 {
@@ -665,11 +668,11 @@ fn test_monitor_update_fail_cs() {
665668 let events = nodes[ 1 ] . node . get_and_clear_pending_events ( ) ;
666669 assert_eq ! ( events. len( ) , 1 ) ;
667670 match events[ 0 ] {
668- Event :: PaymentClaimable { payment_hash, ref purpose, amount_msat, receiver_node_id, via_channel_id , .. } => {
671+ Event :: PaymentClaimable { payment_hash, ref purpose, amount_msat, receiver_node_id, ref inbound_channel_ids , .. } => {
669672 assert_eq ! ( payment_hash, our_payment_hash) ;
670673 assert_eq ! ( amount_msat, 1_000_000 ) ;
671674 assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 1 ] . node. get_our_node_id( ) ) ;
672- assert_eq ! ( via_channel_id , Some ( channel_id) ) ;
675+ assert_eq ! ( * inbound_channel_ids , vec! [ ( channel_id, Some ( user_channel_id ) ) ] ) ;
673676 match & purpose {
674677 PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
675678 assert ! ( payment_preimage. is_none( ) ) ;
@@ -1678,12 +1681,11 @@ fn test_monitor_update_fail_claim() {
16781681 let events = nodes[ 0 ] . node . get_and_clear_pending_events ( ) ;
16791682 assert_eq ! ( events. len( ) , 2 ) ;
16801683 match events[ 0 ] {
1681- Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, via_channel_id , via_user_channel_id , .. } => {
1684+ Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, ref inbound_channel_ids , .. } => {
16821685 assert_eq ! ( payment_hash_2, * payment_hash) ;
16831686 assert_eq ! ( 1_000_000 , amount_msat) ;
16841687 assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 0 ] . node. get_our_node_id( ) ) ;
1685- assert_eq ! ( via_channel_id, Some ( channel_id) ) ;
1686- assert_eq ! ( via_user_channel_id, Some ( 42 ) ) ;
1688+ assert_eq ! ( * inbound_channel_ids. last( ) . unwrap( ) , ( channel_id, Some ( 42 ) ) ) ;
16871689 match & purpose {
16881690 PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
16891691 assert ! ( payment_preimage. is_none( ) ) ;
@@ -1695,11 +1697,11 @@ fn test_monitor_update_fail_claim() {
16951697 _ => panic ! ( "Unexpected event" ) ,
16961698 }
16971699 match events[ 1 ] {
1698- Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, via_channel_id , .. } => {
1700+ Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, ref inbound_channel_ids , .. } => {
16991701 assert_eq ! ( payment_hash_3, * payment_hash) ;
17001702 assert_eq ! ( 1_000_000 , amount_msat) ;
17011703 assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 0 ] . node. get_our_node_id( ) ) ;
1702- assert_eq ! ( via_channel_id , Some ( channel_id) ) ;
1704+ assert_eq ! ( * inbound_channel_ids , vec! [ ( channel_id, Some ( 42 ) ) ] ) ;
17031705 match & purpose {
17041706 PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
17051707 assert ! ( payment_preimage. is_none( ) ) ;
0 commit comments