@@ -1206,7 +1206,7 @@ mod tests {
1206
1206
use crate :: offers:: parse:: { Bolt12ParseError , Bolt12SemanticError } ;
1207
1207
use crate :: offers:: payer:: PayerTlvStreamRef ;
1208
1208
use crate :: offers:: test_utils:: * ;
1209
- use crate :: util:: ser:: { BigSize , Writeable } ;
1209
+ use crate :: util:: ser:: { BigSize , Readable , Writeable } ;
1210
1210
use crate :: util:: string:: { PrintableString , UntrustedString } ;
1211
1211
1212
1212
#[ test]
@@ -2271,9 +2271,10 @@ mod tests {
2271
2271
. sign ( payer_sign) . unwrap ( ) ;
2272
2272
match invoice_request. verify ( & expanded_key, & secp_ctx) {
2273
2273
Ok ( invoice_request) => {
2274
+ let fields = invoice_request. fields ( ) ;
2274
2275
assert_eq ! ( invoice_request. offer_id, offer. id( ) ) ;
2275
2276
assert_eq ! (
2276
- invoice_request . fields( ) ,
2277
+ fields,
2277
2278
InvoiceRequestFields {
2278
2279
payer_id: payer_pubkey( ) ,
2279
2280
amount_msats: Some ( 1001 ) ,
@@ -2282,6 +2283,13 @@ mod tests {
2282
2283
payer_note_truncated: Some ( UntrustedString ( "0" . repeat( PAYER_NOTE_LIMIT ) ) ) ,
2283
2284
}
2284
2285
) ;
2286
+
2287
+ let mut buffer = Vec :: new ( ) ;
2288
+ fields. write ( & mut buffer) . unwrap ( ) ;
2289
+
2290
+ let deserialized_fields: InvoiceRequestFields =
2291
+ Readable :: read ( & mut buffer. as_slice ( ) ) . unwrap ( ) ;
2292
+ assert_eq ! ( deserialized_fields, fields) ;
2285
2293
} ,
2286
2294
Err ( _) => panic ! ( "unexpected error" ) ,
2287
2295
}
0 commit comments