@@ -48,7 +48,7 @@ use crate::blinded_path::message::BlindedMessagePath;
48
48
use crate :: blinded_path:: payment:: { Bolt12OfferContext , Bolt12RefundContext , PaymentContext } ;
49
49
use crate :: blinded_path:: message:: { MessageContext , OffersContext } ;
50
50
use crate :: events:: { ClosureReason , Event , MessageSendEventsProvider , PaymentFailureReason , PaymentPurpose } ;
51
- use crate :: ln:: channelmanager:: { Bolt12PaymentError , MAX_SHORT_LIVED_RELATIVE_EXPIRY , PaymentId , RecentPaymentDetails , Retry , self } ;
51
+ use crate :: ln:: channelmanager:: { BlindedPathType , Bolt12PaymentError , MAX_SHORT_LIVED_RELATIVE_EXPIRY , PaymentId , RecentPaymentDetails , Retry , self } ;
52
52
use crate :: ln:: features:: Bolt12InvoiceFeatures ;
53
53
use crate :: ln:: functional_test_utils:: * ;
54
54
use crate :: ln:: inbound_payment:: ExpandedKey ;
@@ -59,7 +59,7 @@ use crate::offers::invoice_error::InvoiceError;
59
59
use crate :: offers:: invoice_request:: { InvoiceRequest , InvoiceRequestFields } ;
60
60
use crate :: offers:: nonce:: Nonce ;
61
61
use crate :: offers:: parse:: Bolt12SemanticError ;
62
- use crate :: onion_message:: messenger:: { Destination , PeeledOnion , MessageSendInstructions } ;
62
+ use crate :: onion_message:: messenger:: { Destination , MessageSendInstructions , PeeledOnion } ;
63
63
use crate :: onion_message:: offers:: OffersMessage ;
64
64
use crate :: onion_message:: packet:: ParsedOnionMessageContents ;
65
65
use crate :: routing:: gossip:: { NodeAlias , NodeId } ;
@@ -297,7 +297,7 @@ fn prefers_non_tor_nodes_in_blinded_paths() {
297
297
announce_node_address ( charlie, & [ alice, bob, david, & nodes[ 4 ] , & nodes[ 5 ] ] , tor. clone ( ) ) ;
298
298
299
299
let offer = bob. node
300
- . create_offer_builder ( None ) . unwrap ( )
300
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
301
301
. amount_msats ( 10_000_000 )
302
302
. build ( ) . unwrap ( ) ;
303
303
assert_ne ! ( offer. issuer_signing_pubkey( ) , Some ( bob_id) ) ;
@@ -313,7 +313,7 @@ fn prefers_non_tor_nodes_in_blinded_paths() {
313
313
announce_node_address ( & nodes[ 5 ] , & [ alice, bob, charlie, david, & nodes[ 4 ] ] , tor. clone ( ) ) ;
314
314
315
315
let offer = bob. node
316
- . create_offer_builder ( None ) . unwrap ( )
316
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
317
317
. amount_msats ( 10_000_000 )
318
318
. build ( ) . unwrap ( ) ;
319
319
assert_ne ! ( offer. issuer_signing_pubkey( ) , Some ( bob_id) ) ;
@@ -364,7 +364,7 @@ fn prefers_more_connected_nodes_in_blinded_paths() {
364
364
disconnect_peers ( david, & [ bob, & nodes[ 4 ] , & nodes[ 5 ] ] ) ;
365
365
366
366
let offer = bob. node
367
- . create_offer_builder ( None ) . unwrap ( )
367
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
368
368
. amount_msats ( 10_000_000 )
369
369
. build ( ) . unwrap ( ) ;
370
370
assert_ne ! ( offer. issuer_signing_pubkey( ) , Some ( bob_id) ) ;
@@ -391,7 +391,8 @@ fn creates_short_lived_offer() {
391
391
392
392
let absolute_expiry = alice. node . duration_since_epoch ( ) + MAX_SHORT_LIVED_RELATIVE_EXPIRY ;
393
393
let offer = alice. node
394
- . create_offer_builder ( Some ( absolute_expiry) ) . unwrap ( )
394
+ . create_offer_builder ( Some ( BlindedPathType :: Compact ) ) . unwrap ( )
395
+ . absolute_expiry ( absolute_expiry)
395
396
. build ( ) . unwrap ( ) ;
396
397
assert_eq ! ( offer. absolute_expiry( ) , Some ( absolute_expiry) ) ;
397
398
assert ! ( !offer. paths( ) . is_empty( ) ) ;
@@ -418,8 +419,8 @@ fn creates_long_lived_offer() {
418
419
let absolute_expiry = alice. node . duration_since_epoch ( ) + MAX_SHORT_LIVED_RELATIVE_EXPIRY
419
420
+ Duration :: from_secs ( 1 ) ;
420
421
let offer = alice. node
421
- . create_offer_builder ( Some ( absolute_expiry ) )
422
- . unwrap ( )
422
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
423
+ . absolute_expiry ( absolute_expiry )
423
424
. build ( ) . unwrap ( ) ;
424
425
assert_eq ! ( offer. absolute_expiry( ) , Some ( absolute_expiry) ) ;
425
426
assert ! ( !offer. paths( ) . is_empty( ) ) ;
@@ -428,7 +429,7 @@ fn creates_long_lived_offer() {
428
429
}
429
430
430
431
let offer = alice. node
431
- . create_offer_builder ( None ) . unwrap ( )
432
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
432
433
. build ( ) . unwrap ( ) ;
433
434
assert_eq ! ( offer. absolute_expiry( ) , None ) ;
434
435
assert ! ( !offer. paths( ) . is_empty( ) ) ;
@@ -532,7 +533,7 @@ fn creates_and_pays_for_offer_using_two_hop_blinded_path() {
532
533
disconnect_peers ( david, & [ bob, & nodes[ 4 ] , & nodes[ 5 ] ] ) ;
533
534
534
535
let offer = alice. node
535
- . create_offer_builder ( None )
536
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) )
536
537
. unwrap ( )
537
538
. amount_msats ( 10_000_000 )
538
539
. build ( ) . unwrap ( ) ;
@@ -701,7 +702,7 @@ fn creates_and_pays_for_offer_using_one_hop_blinded_path() {
701
702
let bob_id = bob. node . get_our_node_id ( ) ;
702
703
703
704
let offer = alice. node
704
- . create_offer_builder ( None ) . unwrap ( )
705
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
705
706
. amount_msats ( 10_000_000 )
706
707
. build ( ) . unwrap ( ) ;
707
708
assert_ne ! ( offer. issuer_signing_pubkey( ) , Some ( alice_id) ) ;
@@ -823,7 +824,7 @@ fn pays_for_offer_without_blinded_paths() {
823
824
let bob_id = bob. node . get_our_node_id ( ) ;
824
825
825
826
let offer = alice. node
826
- . create_offer_builder ( None ) . unwrap ( )
827
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
827
828
. clear_paths ( )
828
829
. amount_msats ( 10_000_000 )
829
830
. build ( ) . unwrap ( ) ;
@@ -946,7 +947,7 @@ fn send_invoice_requests_with_distinct_reply_path() {
946
947
disconnect_peers ( david, & [ bob, & nodes[ 4 ] , & nodes[ 5 ] ] ) ;
947
948
948
949
let offer = alice. node
949
- . create_offer_builder ( None )
950
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) )
950
951
. unwrap ( )
951
952
. amount_msats ( 10_000_000 )
952
953
. build ( ) . unwrap ( ) ;
@@ -1082,7 +1083,7 @@ fn creates_and_pays_for_offer_with_retry() {
1082
1083
let bob_id = bob. node . get_our_node_id ( ) ;
1083
1084
1084
1085
let offer = alice. node
1085
- . create_offer_builder ( None ) . unwrap ( )
1086
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
1086
1087
. amount_msats ( 10_000_000 )
1087
1088
. build ( ) . unwrap ( ) ;
1088
1089
assert_ne ! ( offer. issuer_signing_pubkey( ) , Some ( alice_id) ) ;
@@ -1157,7 +1158,7 @@ fn pays_bolt12_invoice_asynchronously() {
1157
1158
let bob_id = bob. node . get_our_node_id ( ) ;
1158
1159
1159
1160
let offer = alice. node
1160
- . create_offer_builder ( None ) . unwrap ( )
1161
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
1161
1162
. amount_msats ( 10_000_000 )
1162
1163
. build ( ) . unwrap ( ) ;
1163
1164
@@ -1241,7 +1242,7 @@ fn creates_offer_with_blinded_path_using_unannounced_introduction_node() {
1241
1242
let bob_id = bob. node . get_our_node_id ( ) ;
1242
1243
1243
1244
let offer = alice. node
1244
- . create_offer_builder ( None ) . unwrap ( )
1245
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
1245
1246
. amount_msats ( 10_000_000 )
1246
1247
. build ( ) . unwrap ( ) ;
1247
1248
assert_ne ! ( offer. issuer_signing_pubkey( ) , Some ( alice_id) ) ;
@@ -1370,7 +1371,7 @@ fn fails_authentication_when_handling_invoice_request() {
1370
1371
disconnect_peers ( david, & [ bob, & nodes[ 4 ] , & nodes[ 5 ] ] ) ;
1371
1372
1372
1373
let offer = alice. node
1373
- . create_offer_builder ( None )
1374
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) )
1374
1375
. unwrap ( )
1375
1376
. amount_msats ( 10_000_000 )
1376
1377
. build ( ) . unwrap ( ) ;
@@ -1382,7 +1383,7 @@ fn fails_authentication_when_handling_invoice_request() {
1382
1383
}
1383
1384
1384
1385
let invalid_path = alice. node
1385
- . create_offer_builder ( None )
1386
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) )
1386
1387
. unwrap ( )
1387
1388
. build ( ) . unwrap ( )
1388
1389
. paths ( ) . first ( ) . unwrap ( )
@@ -1482,7 +1483,7 @@ fn fails_authentication_when_handling_invoice_for_offer() {
1482
1483
disconnect_peers ( david, & [ bob, & nodes[ 4 ] , & nodes[ 5 ] ] ) ;
1483
1484
1484
1485
let offer = alice. node
1485
- . create_offer_builder ( None )
1486
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) )
1486
1487
. unwrap ( )
1487
1488
. amount_msats ( 10_000_000 )
1488
1489
. build ( ) . unwrap ( ) ;
@@ -1679,7 +1680,7 @@ fn fails_creating_or_paying_for_offer_without_connected_peers() {
1679
1680
disconnect_peers ( david, & [ bob, charlie, & nodes[ 4 ] , & nodes[ 5 ] ] ) ;
1680
1681
1681
1682
let absolute_expiry = alice. node . duration_since_epoch ( ) + MAX_SHORT_LIVED_RELATIVE_EXPIRY ;
1682
- match alice. node . create_offer_builder ( Some ( absolute_expiry ) ) {
1683
+ match alice. node . create_offer_builder ( Some ( BlindedPathType :: Full ) ) {
1683
1684
Ok ( _) => panic ! ( "Expected error" ) ,
1684
1685
Err ( e) => assert_eq ! ( e, Bolt12SemanticError :: MissingPaths ) ,
1685
1686
}
@@ -1689,7 +1690,8 @@ fn fails_creating_or_paying_for_offer_without_connected_peers() {
1689
1690
reconnect_nodes ( args) ;
1690
1691
1691
1692
let offer = alice. node
1692
- . create_offer_builder ( Some ( absolute_expiry) ) . unwrap ( )
1693
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
1694
+ . absolute_expiry ( absolute_expiry)
1693
1695
. amount_msats ( 10_000_000 )
1694
1696
. build ( ) . unwrap ( ) ;
1695
1697
@@ -1793,7 +1795,7 @@ fn fails_creating_invoice_request_for_unsupported_chain() {
1793
1795
let bob = & nodes[ 1 ] ;
1794
1796
1795
1797
let offer = alice. node
1796
- . create_offer_builder ( None ) . unwrap ( )
1798
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
1797
1799
. clear_chains ( )
1798
1800
. chain ( Network :: Signet )
1799
1801
. build ( ) . unwrap ( ) ;
@@ -1852,7 +1854,7 @@ fn fails_creating_invoice_request_without_blinded_reply_path() {
1852
1854
disconnect_peers ( david, & [ bob, charlie, & nodes[ 4 ] , & nodes[ 5 ] ] ) ;
1853
1855
1854
1856
let offer = alice. node
1855
- . create_offer_builder ( None ) . unwrap ( )
1857
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
1856
1858
. amount_msats ( 10_000_000 )
1857
1859
. build ( ) . unwrap ( ) ;
1858
1860
@@ -1886,7 +1888,7 @@ fn fails_creating_invoice_request_with_duplicate_payment_id() {
1886
1888
disconnect_peers ( alice, & [ charlie, david, & nodes[ 4 ] , & nodes[ 5 ] ] ) ;
1887
1889
1888
1890
let offer = alice. node
1889
- . create_offer_builder ( None ) . unwrap ( )
1891
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
1890
1892
. amount_msats ( 10_000_000 )
1891
1893
. build ( ) . unwrap ( ) ;
1892
1894
@@ -1972,7 +1974,7 @@ fn fails_sending_invoice_without_blinded_payment_paths_for_offer() {
1972
1974
disconnect_peers ( david, & [ bob, & nodes[ 4 ] , & nodes[ 5 ] ] ) ;
1973
1975
1974
1976
let offer = alice. node
1975
- . create_offer_builder ( None ) . unwrap ( )
1977
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
1976
1978
. amount_msats ( 10_000_000 )
1977
1979
. build ( ) . unwrap ( ) ;
1978
1980
@@ -2181,7 +2183,7 @@ fn fails_paying_invoice_with_unknown_required_features() {
2181
2183
disconnect_peers ( david, & [ bob, & nodes[ 4 ] , & nodes[ 5 ] ] ) ;
2182
2184
2183
2185
let offer = alice. node
2184
- . create_offer_builder ( None ) . unwrap ( )
2186
+ . create_offer_builder ( Some ( BlindedPathType :: Full ) ) . unwrap ( )
2185
2187
. amount_msats ( 10_000_000 )
2186
2188
. build ( ) . unwrap ( ) ;
2187
2189
0 commit comments