@@ -2270,29 +2270,27 @@ impl_writeable_tlv_based_enum_upgradable!(PendingOutboundPayment,
22702270mod tests {
22712271 use bitcoin:: hex:: FromHex ;
22722272 use bitcoin:: network:: Network ;
2273- use bitcoin:: secp256k1:: { PublicKey , Secp256k1 , SecretKey } ;
2273+ use bitcoin:: secp256k1:: { Keypair , PublicKey , Secp256k1 , SecretKey } ;
22742274
22752275 use core:: time:: Duration ;
22762276
22772277 use crate :: blinded_path:: EmptyNodeIdLookUp ;
22782278 use crate :: events:: { Event , PathFailure , PaymentFailureReason } ;
2279- use crate :: io:: Cursor ;
22802279 use crate :: types:: payment:: { PaymentHash , PaymentPreimage } ;
22812280 use crate :: ln:: channelmanager:: { PaymentId , RecipientOnionFields } ;
22822281 use crate :: types:: features:: { Bolt12InvoiceFeatures , ChannelFeatures , NodeFeatures } ;
22832282 use crate :: ln:: msgs:: { ErrorAction , LightningError } ;
22842283 use crate :: ln:: outbound_payment:: { Bolt12PaymentError , OutboundPayments , PendingOutboundPayment , Retry , RetryableSendFailure , StaleExpiration } ;
22852284 #[ cfg( feature = "std" ) ]
22862285 use crate :: offers:: invoice:: DEFAULT_RELATIVE_EXPIRY ;
2287- use crate :: offers:: invoice_request:: InvoiceRequest ;
2286+ use crate :: offers:: invoice_request:: { InvoiceRequest , UnsignedInvoiceRequest } ;
22882287 use crate :: offers:: offer:: OfferBuilder ;
22892288 use crate :: offers:: test_utils:: * ;
22902289 use crate :: routing:: gossip:: NetworkGraph ;
22912290 use crate :: routing:: router:: { InFlightHtlcs , Path , PaymentParameters , Route , RouteHop , RouteParameters } ;
22922291 use crate :: sync:: { Arc , Mutex , RwLock } ;
22932292 use crate :: util:: errors:: APIError ;
22942293 use crate :: util:: hash_tables:: new_hash_map;
2295- use crate :: util:: ser:: Readable ;
22962294 use crate :: util:: test_utils;
22972295
22982296 use alloc:: collections:: VecDeque ;
@@ -2834,9 +2832,28 @@ mod tests {
28342832 assert ! ( pending_events. lock( ) . unwrap( ) . is_empty( ) ) ;
28352833 }
28362834
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 ( )
28402857 }
28412858
28422859 #[ test]
@@ -2860,7 +2877,7 @@ mod tests {
28602877 keysend_preimage : PaymentPreimage ( [ 0 ; 32 ] ) ,
28612878 retry_strategy : Retry :: Attempts ( 0 ) ,
28622879 route_params,
2863- invoice_request : invoice_request ( ) ,
2880+ invoice_request : dummy_invoice_request ( ) ,
28642881 } ;
28652882 outbounds. insert ( payment_id, outbound) ;
28662883 core:: mem:: drop ( outbounds) ;
@@ -2907,7 +2924,7 @@ mod tests {
29072924 keysend_preimage : PaymentPreimage ( [ 0 ; 32 ] ) ,
29082925 retry_strategy : Retry :: Attempts ( 0 ) ,
29092926 route_params,
2910- invoice_request : invoice_request ( ) ,
2927+ invoice_request : dummy_invoice_request ( ) ,
29112928 } ;
29122929 outbounds. insert ( payment_id, outbound) ;
29132930 core:: mem:: drop ( outbounds) ;
0 commit comments