@@ -125,6 +125,7 @@ fn do_test_simple_monitor_temporary_update_fail(disconnect: bool) {
125125 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
126126 let mut nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
127127 let channel_id = create_announced_chan_between_nodes ( & nodes, 0 , 1 ) . 2 ;
128+ let user_channel_id = nodes[ 1 ] . node . list_channels ( ) [ 0 ] . user_channel_id ;
128129
129130 let ( route, payment_hash_1, payment_preimage_1, payment_secret_1) = get_route_and_payment_hash ! ( & nodes[ 0 ] , nodes[ 1 ] , 1000000 ) ;
130131
@@ -166,11 +167,11 @@ fn do_test_simple_monitor_temporary_update_fail(disconnect: bool) {
166167 let events_3 = nodes[ 1 ] . node . get_and_clear_pending_events ( ) ;
167168 assert_eq ! ( events_3. len( ) , 1 ) ;
168169 match events_3[ 0 ] {
169- Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, via_channel_id , .. } => {
170+ Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, ref inbound_channel_ids , .. } => {
170171 assert_eq ! ( payment_hash_1, * payment_hash) ;
171172 assert_eq ! ( amount_msat, 1_000_000 ) ;
172173 assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 1 ] . node. get_our_node_id( ) ) ;
173- assert_eq ! ( via_channel_id , Some ( channel_id) ) ;
174+ assert_eq ! ( * inbound_channel_ids , vec! [ ( channel_id, Some ( user_channel_id ) ) ] ) ;
174175 match & purpose {
175176 PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
176177 assert ! ( payment_preimage. is_none( ) ) ;
@@ -248,6 +249,7 @@ fn do_test_monitor_temporary_update_fail(disconnect_count: usize) {
248249 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
249250 let mut nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
250251 let channel_id = create_announced_chan_between_nodes ( & nodes, 0 , 1 ) . 2 ;
252+ let user_channel_id = nodes[ 1 ] . node . list_channels ( ) [ 0 ] . user_channel_id ;
251253
252254 let ( payment_preimage_1, payment_hash_1, ..) = route_payment ( & nodes[ 0 ] , & [ & nodes[ 1 ] ] , 1_000_000 ) ;
253255
@@ -548,11 +550,11 @@ fn do_test_monitor_temporary_update_fail(disconnect_count: usize) {
548550 let events_5 = nodes[ 1 ] . node . get_and_clear_pending_events ( ) ;
549551 assert_eq ! ( events_5. len( ) , 1 ) ;
550552 match events_5[ 0 ] {
551- Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, via_channel_id , .. } => {
553+ Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, ref inbound_channel_ids , .. } => {
552554 assert_eq ! ( payment_hash_2, * payment_hash) ;
553555 assert_eq ! ( amount_msat, 1_000_000 ) ;
554556 assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 1 ] . node. get_our_node_id( ) ) ;
555- assert_eq ! ( via_channel_id , Some ( channel_id) ) ;
557+ assert_eq ! ( * inbound_channel_ids , vec! [ ( channel_id, Some ( user_channel_id ) ) ] ) ;
556558 match & purpose {
557559 PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
558560 assert ! ( payment_preimage. is_none( ) ) ;
@@ -602,6 +604,7 @@ fn test_monitor_update_fail_cs() {
602604 let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
603605 let mut nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
604606 let channel_id = create_announced_chan_between_nodes ( & nodes, 0 , 1 ) . 2 ;
607+ let user_channel_id = nodes[ 1 ] . node . list_channels ( ) [ 0 ] . user_channel_id ;
605608
606609 let ( route, our_payment_hash, payment_preimage, our_payment_secret) = get_route_and_payment_hash ! ( nodes[ 0 ] , nodes[ 1 ] , 1000000 ) ;
607610 {
@@ -666,11 +669,11 @@ fn test_monitor_update_fail_cs() {
666669 let events = nodes[ 1 ] . node . get_and_clear_pending_events ( ) ;
667670 assert_eq ! ( events. len( ) , 1 ) ;
668671 match events[ 0 ] {
669- Event :: PaymentClaimable { payment_hash, ref purpose, amount_msat, receiver_node_id, via_channel_id , .. } => {
672+ Event :: PaymentClaimable { payment_hash, ref purpose, amount_msat, receiver_node_id, ref inbound_channel_ids , .. } => {
670673 assert_eq ! ( payment_hash, our_payment_hash) ;
671674 assert_eq ! ( amount_msat, 1_000_000 ) ;
672675 assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 1 ] . node. get_our_node_id( ) ) ;
673- assert_eq ! ( via_channel_id , Some ( channel_id) ) ;
676+ assert_eq ! ( * inbound_channel_ids , vec! [ ( channel_id, Some ( user_channel_id ) ) ] ) ;
674677 match & purpose {
675678 PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
676679 assert ! ( payment_preimage. is_none( ) ) ;
@@ -1679,12 +1682,11 @@ fn test_monitor_update_fail_claim() {
16791682 let events = nodes[ 0 ] . node . get_and_clear_pending_events ( ) ;
16801683 assert_eq ! ( events. len( ) , 2 ) ;
16811684 match events[ 0 ] {
1682- Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, via_channel_id , via_user_channel_id , .. } => {
1685+ Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, ref inbound_channel_ids , .. } => {
16831686 assert_eq ! ( payment_hash_2, * payment_hash) ;
16841687 assert_eq ! ( 1_000_000 , amount_msat) ;
16851688 assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 0 ] . node. get_our_node_id( ) ) ;
1686- assert_eq ! ( via_channel_id, Some ( channel_id) ) ;
1687- assert_eq ! ( via_user_channel_id, Some ( 42 ) ) ;
1689+ assert_eq ! ( * inbound_channel_ids. last( ) . unwrap( ) , ( channel_id, Some ( 42 ) ) ) ;
16881690 match & purpose {
16891691 PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
16901692 assert ! ( payment_preimage. is_none( ) ) ;
@@ -1696,11 +1698,11 @@ fn test_monitor_update_fail_claim() {
16961698 _ => panic ! ( "Unexpected event" ) ,
16971699 }
16981700 match events[ 1 ] {
1699- Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, via_channel_id , .. } => {
1701+ Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, ref inbound_channel_ids , .. } => {
17001702 assert_eq ! ( payment_hash_3, * payment_hash) ;
17011703 assert_eq ! ( 1_000_000 , amount_msat) ;
17021704 assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 0 ] . node. get_our_node_id( ) ) ;
1703- assert_eq ! ( via_channel_id , Some ( channel_id) ) ;
1705+ assert_eq ! ( * inbound_channel_ids , vec! [ ( channel_id, Some ( 42 ) ) ] ) ;
17041706 match & purpose {
17051707 PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
17061708 assert ! ( payment_preimage. is_none( ) ) ;
0 commit comments