@@ -168,7 +168,7 @@ fn route_bolt12_payment<'a, 'b, 'c>(
168
168
}
169
169
170
170
fn claim_bolt12_payment < ' a , ' b , ' c > (
171
- node : & Node < ' a , ' b , ' c > , path : & [ & Node < ' a , ' b , ' c > ] , expected_payment_context : PaymentContext
171
+ node : & Node < ' a , ' b , ' c > , path : & [ & Node < ' a , ' b , ' c > ] , expected_payment_context : PaymentContext , invoice : & Bolt12Invoice
172
172
) {
173
173
let recipient = & path[ path. len ( ) - 1 ] ;
174
174
let payment_purpose = match get_event ! ( recipient, Event :: PaymentClaimable ) {
@@ -188,7 +188,9 @@ fn claim_bolt12_payment<'a, 'b, 'c>(
188
188
} ,
189
189
_ => panic ! ( "Unexpected payment purpose: {:?}" , payment_purpose) ,
190
190
}
191
- claim_payment ( node, path, payment_preimage) ;
191
+ if let Some ( inv) = claim_payment ( node, path, payment_preimage) {
192
+ assert_eq ! ( inv, invoice. to_owned( ) ) ;
193
+ } ;
192
194
}
193
195
194
196
fn extract_offer_nonce < ' a , ' b , ' c > ( node : & Node < ' a , ' b , ' c > , message : & OnionMessage ) -> Nonce {
@@ -597,7 +599,7 @@ fn creates_and_pays_for_offer_using_two_hop_blinded_path() {
597
599
route_bolt12_payment ( david, & [ charlie, bob, alice] , & invoice) ;
598
600
expect_recent_payment ! ( david, RecentPaymentDetails :: Pending , payment_id) ;
599
601
600
- claim_bolt12_payment ( david, & [ charlie, bob, alice] , payment_context) ;
602
+ claim_bolt12_payment ( david, & [ charlie, bob, alice] , payment_context, & invoice ) ;
601
603
expect_recent_payment ! ( david, RecentPaymentDetails :: Fulfilled , payment_id) ;
602
604
}
603
605
@@ -680,7 +682,7 @@ fn creates_and_pays_for_refund_using_two_hop_blinded_path() {
680
682
route_bolt12_payment ( david, & [ charlie, bob, alice] , & invoice) ;
681
683
expect_recent_payment ! ( david, RecentPaymentDetails :: Pending , payment_id) ;
682
684
683
- claim_bolt12_payment ( david, & [ charlie, bob, alice] , payment_context) ;
685
+ claim_bolt12_payment ( david, & [ charlie, bob, alice] , payment_context, & invoice ) ;
684
686
expect_recent_payment ! ( david, RecentPaymentDetails :: Fulfilled , payment_id) ;
685
687
}
686
688
@@ -747,7 +749,7 @@ fn creates_and_pays_for_offer_using_one_hop_blinded_path() {
747
749
route_bolt12_payment ( bob, & [ alice] , & invoice) ;
748
750
expect_recent_payment ! ( bob, RecentPaymentDetails :: Pending , payment_id) ;
749
751
750
- claim_bolt12_payment ( bob, & [ alice] , payment_context) ;
752
+ claim_bolt12_payment ( bob, & [ alice] , payment_context, & invoice ) ;
751
753
expect_recent_payment ! ( bob, RecentPaymentDetails :: Fulfilled , payment_id) ;
752
754
}
753
755
@@ -803,7 +805,7 @@ fn creates_and_pays_for_refund_using_one_hop_blinded_path() {
803
805
route_bolt12_payment ( bob, & [ alice] , & invoice) ;
804
806
expect_recent_payment ! ( bob, RecentPaymentDetails :: Pending , payment_id) ;
805
807
806
- claim_bolt12_payment ( bob, & [ alice] , payment_context) ;
808
+ claim_bolt12_payment ( bob, & [ alice] , payment_context, & invoice ) ;
807
809
expect_recent_payment ! ( bob, RecentPaymentDetails :: Fulfilled , payment_id) ;
808
810
}
809
811
@@ -857,7 +859,7 @@ fn pays_for_offer_without_blinded_paths() {
857
859
route_bolt12_payment ( bob, & [ alice] , & invoice) ;
858
860
expect_recent_payment ! ( bob, RecentPaymentDetails :: Pending , payment_id) ;
859
861
860
- claim_bolt12_payment ( bob, & [ alice] , payment_context) ;
862
+ claim_bolt12_payment ( bob, & [ alice] , payment_context, & invoice ) ;
861
863
expect_recent_payment ! ( bob, RecentPaymentDetails :: Fulfilled , payment_id) ;
862
864
}
863
865
@@ -900,7 +902,7 @@ fn pays_for_refund_without_blinded_paths() {
900
902
route_bolt12_payment ( bob, & [ alice] , & invoice) ;
901
903
expect_recent_payment ! ( bob, RecentPaymentDetails :: Pending , payment_id) ;
902
904
903
- claim_bolt12_payment ( bob, & [ alice] , payment_context) ;
905
+ claim_bolt12_payment ( bob, & [ alice] , payment_context, & invoice ) ;
904
906
expect_recent_payment ! ( bob, RecentPaymentDetails :: Fulfilled , payment_id) ;
905
907
}
906
908
@@ -1138,7 +1140,7 @@ fn creates_and_pays_for_offer_with_retry() {
1138
1140
}
1139
1141
route_bolt12_payment ( bob, & [ alice] , & invoice) ;
1140
1142
expect_recent_payment ! ( bob, RecentPaymentDetails :: Pending , payment_id) ;
1141
- claim_bolt12_payment ( bob, & [ alice] , payment_context) ;
1143
+ claim_bolt12_payment ( bob, & [ alice] , payment_context, & invoice ) ;
1142
1144
expect_recent_payment ! ( bob, RecentPaymentDetails :: Fulfilled , payment_id) ;
1143
1145
}
1144
1146
@@ -1209,7 +1211,7 @@ fn pays_bolt12_invoice_asynchronously() {
1209
1211
route_bolt12_payment ( bob, & [ alice] , & invoice) ;
1210
1212
expect_recent_payment ! ( bob, RecentPaymentDetails :: Pending , payment_id) ;
1211
1213
1212
- claim_bolt12_payment ( bob, & [ alice] , payment_context) ;
1214
+ claim_bolt12_payment ( bob, & [ alice] , payment_context, & invoice ) ;
1213
1215
expect_recent_payment ! ( bob, RecentPaymentDetails :: Fulfilled , payment_id) ;
1214
1216
1215
1217
assert_eq ! (
@@ -1289,7 +1291,7 @@ fn creates_offer_with_blinded_path_using_unannounced_introduction_node() {
1289
1291
route_bolt12_payment ( bob, & [ alice] , & invoice) ;
1290
1292
expect_recent_payment ! ( bob, RecentPaymentDetails :: Pending , payment_id) ;
1291
1293
1292
- claim_bolt12_payment ( bob, & [ alice] , payment_context) ;
1294
+ claim_bolt12_payment ( bob, & [ alice] , payment_context, & invoice ) ;
1293
1295
expect_recent_payment ! ( bob, RecentPaymentDetails :: Fulfilled , payment_id) ;
1294
1296
}
1295
1297
@@ -2145,7 +2147,7 @@ fn fails_paying_invoice_more_than_once() {
2145
2147
assert ! ( david. node. get_and_clear_pending_msg_events( ) . is_empty( ) ) ;
2146
2148
2147
2149
// Complete paying the first invoice
2148
- claim_bolt12_payment ( david, & [ charlie, bob, alice] , payment_context) ;
2150
+ claim_bolt12_payment ( david, & [ charlie, bob, alice] , payment_context, & invoice1 ) ;
2149
2151
expect_recent_payment ! ( david, RecentPaymentDetails :: Fulfilled , payment_id) ;
2150
2152
}
2151
2153
0 commit comments