@@ -124,6 +124,7 @@ fn do_test_simple_monitor_temporary_update_fail(disconnect: bool) {
124
124
let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
125
125
let mut nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
126
126
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 ;
127
128
128
129
let ( route, payment_hash_1, payment_preimage_1, payment_secret_1) = get_route_and_payment_hash ! ( & nodes[ 0 ] , nodes[ 1 ] , 1000000 ) ;
129
130
@@ -165,11 +166,11 @@ fn do_test_simple_monitor_temporary_update_fail(disconnect: bool) {
165
166
let events_3 = nodes[ 1 ] . node . get_and_clear_pending_events ( ) ;
166
167
assert_eq ! ( events_3. len( ) , 1 ) ;
167
168
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 , .. } => {
169
170
assert_eq ! ( payment_hash_1, * payment_hash) ;
170
171
assert_eq ! ( amount_msat, 1_000_000 ) ;
171
172
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 ) ) ] ) ;
173
174
match & purpose {
174
175
PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
175
176
assert ! ( payment_preimage. is_none( ) ) ;
@@ -247,6 +248,7 @@ fn do_test_monitor_temporary_update_fail(disconnect_count: usize) {
247
248
let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
248
249
let mut nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
249
250
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 ;
250
252
251
253
let ( payment_preimage_1, payment_hash_1, ..) = route_payment ( & nodes[ 0 ] , & [ & nodes[ 1 ] ] , 1_000_000 ) ;
252
254
@@ -547,11 +549,12 @@ fn do_test_monitor_temporary_update_fail(disconnect_count: usize) {
547
549
let events_5 = nodes[ 1 ] . node . get_and_clear_pending_events ( ) ;
548
550
assert_eq ! ( events_5. len( ) , 1 ) ;
549
551
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 , .. } => {
551
553
assert_eq ! ( payment_hash_2, * payment_hash) ;
552
554
assert_eq ! ( amount_msat, 1_000_000 ) ;
553
555
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. len( ) , 1 ) ;
557
+ assert_eq ! ( * inbound_channel_ids, vec![ ( channel_id, Some ( user_channel_id) ) ] ) ;
555
558
match & purpose {
556
559
PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
557
560
assert ! ( payment_preimage. is_none( ) ) ;
@@ -601,6 +604,7 @@ fn test_monitor_update_fail_cs() {
601
604
let node_chanmgrs = create_node_chanmgrs ( 2 , & node_cfgs, & [ None , None ] ) ;
602
605
let mut nodes = create_network ( 2 , & node_cfgs, & node_chanmgrs) ;
603
606
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 ;
604
608
605
609
let ( route, our_payment_hash, payment_preimage, our_payment_secret) = get_route_and_payment_hash ! ( nodes[ 0 ] , nodes[ 1 ] , 1000000 ) ;
606
610
{
@@ -665,11 +669,11 @@ fn test_monitor_update_fail_cs() {
665
669
let events = nodes[ 1 ] . node . get_and_clear_pending_events ( ) ;
666
670
assert_eq ! ( events. len( ) , 1 ) ;
667
671
match events[ 0 ] {
668
- 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 , .. } => {
669
673
assert_eq ! ( payment_hash, our_payment_hash) ;
670
674
assert_eq ! ( amount_msat, 1_000_000 ) ;
671
675
assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 1 ] . node. get_our_node_id( ) ) ;
672
- assert_eq ! ( via_channel_id , Some ( channel_id) ) ;
676
+ assert_eq ! ( * inbound_channel_ids , vec! [ ( channel_id, Some ( user_channel_id ) ) ] ) ;
673
677
match & purpose {
674
678
PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
675
679
assert ! ( payment_preimage. is_none( ) ) ;
@@ -1678,12 +1682,12 @@ fn test_monitor_update_fail_claim() {
1678
1682
let events = nodes[ 0 ] . node . get_and_clear_pending_events ( ) ;
1679
1683
assert_eq ! ( events. len( ) , 2 ) ;
1680
1684
match events[ 0 ] {
1681
- 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 , .. } => {
1682
1686
assert_eq ! ( payment_hash_2, * payment_hash) ;
1683
1687
assert_eq ! ( 1_000_000 , amount_msat) ;
1684
1688
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 ) ) ;
1689
+ assert_eq ! ( inbound_channel_ids . len ( ) , 1 ) ;
1690
+ assert_eq ! ( * inbound_channel_ids . last ( ) . unwrap ( ) , ( channel_id , Some ( 42 ) ) ) ;
1687
1691
match & purpose {
1688
1692
PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
1689
1693
assert ! ( payment_preimage. is_none( ) ) ;
@@ -1695,11 +1699,12 @@ fn test_monitor_update_fail_claim() {
1695
1699
_ => panic ! ( "Unexpected event" ) ,
1696
1700
}
1697
1701
match events[ 1 ] {
1698
- Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, via_channel_id , .. } => {
1702
+ Event :: PaymentClaimable { ref payment_hash, ref purpose, amount_msat, receiver_node_id, ref inbound_channel_ids , .. } => {
1699
1703
assert_eq ! ( payment_hash_3, * payment_hash) ;
1700
1704
assert_eq ! ( 1_000_000 , amount_msat) ;
1701
1705
assert_eq ! ( receiver_node_id. unwrap( ) , nodes[ 0 ] . node. get_our_node_id( ) ) ;
1702
- assert_eq ! ( via_channel_id, Some ( channel_id) ) ;
1706
+ assert_eq ! ( inbound_channel_ids. len( ) , 1 ) ;
1707
+ assert_eq ! ( * inbound_channel_ids, vec![ ( channel_id, Some ( 42 ) ) ] ) ;
1703
1708
match & purpose {
1704
1709
PaymentPurpose :: Bolt11InvoicePayment { payment_preimage, payment_secret, .. } => {
1705
1710
assert ! ( payment_preimage. is_none( ) ) ;
0 commit comments