@@ -2270,29 +2270,27 @@ impl_writeable_tlv_based_enum_upgradable!(PendingOutboundPayment,
2270
2270
mod tests {
2271
2271
use bitcoin:: hex:: FromHex ;
2272
2272
use bitcoin:: network:: Network ;
2273
- use bitcoin:: secp256k1:: { PublicKey , Secp256k1 , SecretKey } ;
2273
+ use bitcoin:: secp256k1:: { Keypair , PublicKey , Secp256k1 , SecretKey } ;
2274
2274
2275
2275
use core:: time:: Duration ;
2276
2276
2277
2277
use crate :: blinded_path:: EmptyNodeIdLookUp ;
2278
2278
use crate :: events:: { Event , PathFailure , PaymentFailureReason } ;
2279
- use crate :: io:: Cursor ;
2280
2279
use crate :: types:: payment:: { PaymentHash , PaymentPreimage } ;
2281
2280
use crate :: ln:: channelmanager:: { PaymentId , RecipientOnionFields } ;
2282
2281
use crate :: types:: features:: { Bolt12InvoiceFeatures , ChannelFeatures , NodeFeatures } ;
2283
2282
use crate :: ln:: msgs:: { ErrorAction , LightningError } ;
2284
2283
use crate :: ln:: outbound_payment:: { Bolt12PaymentError , OutboundPayments , PendingOutboundPayment , Retry , RetryableSendFailure , StaleExpiration } ;
2285
2284
#[ cfg( feature = "std" ) ]
2286
2285
use crate :: offers:: invoice:: DEFAULT_RELATIVE_EXPIRY ;
2287
- use crate :: offers:: invoice_request:: InvoiceRequest ;
2286
+ use crate :: offers:: invoice_request:: { InvoiceRequest , UnsignedInvoiceRequest } ;
2288
2287
use crate :: offers:: offer:: OfferBuilder ;
2289
2288
use crate :: offers:: test_utils:: * ;
2290
2289
use crate :: routing:: gossip:: NetworkGraph ;
2291
2290
use crate :: routing:: router:: { InFlightHtlcs , Path , PaymentParameters , Route , RouteHop , RouteParameters } ;
2292
2291
use crate :: sync:: { Arc , Mutex , RwLock } ;
2293
2292
use crate :: util:: errors:: APIError ;
2294
2293
use crate :: util:: hash_tables:: new_hash_map;
2295
- use crate :: util:: ser:: Readable ;
2296
2294
use crate :: util:: test_utils;
2297
2295
2298
2296
use alloc:: collections:: VecDeque ;
@@ -2834,9 +2832,28 @@ mod tests {
2834
2832
assert ! ( pending_events. lock( ) . unwrap( ) . is_empty( ) ) ;
2835
2833
}
2836
2834
2837
- fn invoice_request ( ) -> InvoiceRequest {
2838
- let invreq_bytes = <Vec < u8 > >:: from_hex ( "00200101010101010101010101010101010101010101010101010101010101010101080203e80a00162102bb58b5feca505c74edc000d8282fc556e51a1024fc8e7d7e56c6f887c5c8d5f25821035be5e9478209674a96e60f1f037f6176540fd001fa1d64694770c56a7709c42cf040a31d68198578a5aa1fe57de5f6d33f89c1556752cb333dbb56ac727f751893804d3a26b42909f1952fb1db8080238f9476b829160387692df35ff85dfe72e2ed" ) . unwrap ( ) ;
2839
- Readable :: read ( & mut Cursor :: new ( & invreq_bytes[ ..] ) ) . unwrap ( )
2835
+ fn dummy_invoice_request ( ) -> InvoiceRequest {
2836
+ let secp_ctx = Secp256k1 :: new ( ) ;
2837
+ let recipient_pubkey = {
2838
+ let secret_key = SecretKey :: from_slice ( & <Vec < u8 > >:: from_hex ( "4141414141414141414141414141414141414141414141414141414141414141" ) . unwrap ( ) ) . unwrap ( ) ;
2839
+ Keypair :: from_secret_key ( & secp_ctx, & secret_key) . public_key ( )
2840
+ } ;
2841
+ let payer_keys = {
2842
+ let secret_key = SecretKey :: from_slice ( & <Vec < u8 > >:: from_hex ( "4242424242424242424242424242424242424242424242424242424242424242" ) . unwrap ( ) ) . unwrap ( ) ;
2843
+ Keypair :: from_secret_key ( & secp_ctx, & secret_key)
2844
+ } ;
2845
+ OfferBuilder :: new ( recipient_pubkey)
2846
+ . description ( "test" . into ( ) )
2847
+ . amount_msats ( 1000 )
2848
+ . build ( )
2849
+ . unwrap ( )
2850
+ . request_invoice ( vec ! [ 0 ; 8 ] , payer_keys. public_key ( ) ) . unwrap ( )
2851
+ . build ( )
2852
+ . unwrap ( )
2853
+ . sign ( |message : & UnsignedInvoiceRequest |
2854
+ Ok ( secp_ctx. sign_schnorr_no_aux_rand ( message. as_ref ( ) . as_digest ( ) , & payer_keys) )
2855
+ )
2856
+ . unwrap ( )
2840
2857
}
2841
2858
2842
2859
#[ test]
@@ -2860,7 +2877,7 @@ mod tests {
2860
2877
keysend_preimage : PaymentPreimage ( [ 0 ; 32 ] ) ,
2861
2878
retry_strategy : Retry :: Attempts ( 0 ) ,
2862
2879
route_params,
2863
- invoice_request : invoice_request ( ) ,
2880
+ invoice_request : dummy_invoice_request ( ) ,
2864
2881
} ;
2865
2882
outbounds. insert ( payment_id, outbound) ;
2866
2883
core:: mem:: drop ( outbounds) ;
@@ -2907,7 +2924,7 @@ mod tests {
2907
2924
keysend_preimage : PaymentPreimage ( [ 0 ; 32 ] ) ,
2908
2925
retry_strategy : Retry :: Attempts ( 0 ) ,
2909
2926
route_params,
2910
- invoice_request : invoice_request ( ) ,
2927
+ invoice_request : dummy_invoice_request ( ) ,
2911
2928
} ;
2912
2929
outbounds. insert ( payment_id, outbound) ;
2913
2930
core:: mem:: drop ( outbounds) ;
0 commit comments