1
1
extern crate bech32;
2
2
extern crate lightning_invoice;
3
3
4
- use bitcoin:: { PubkeyHash , ScriptHash , WitnessVersion } ;
5
- use bitcoin:: hex:: FromHex ;
6
4
use bitcoin:: hashes:: { sha256, Hash } ;
7
- use lightning_invoice:: * ;
8
- use bitcoin:: secp256k1:: PublicKey ;
5
+ use bitcoin:: hex:: FromHex ;
9
6
use bitcoin:: secp256k1:: ecdsa:: { RecoverableSignature , RecoveryId } ;
7
+ use bitcoin:: secp256k1:: PublicKey ;
8
+ use bitcoin:: { PubkeyHash , ScriptHash , WitnessVersion } ;
9
+ use lightning_invoice:: * ;
10
10
use std:: collections:: HashSet ;
11
- use std:: time:: Duration ;
12
11
use std:: str:: FromStr ;
12
+ use std:: time:: Duration ;
13
13
14
14
fn get_test_tuples ( ) -> Vec < ( String , SignedRawBolt11Invoice , bool , bool ) > {
15
15
vec ! [
@@ -379,7 +379,8 @@ fn get_test_tuples() -> Vec<(String, SignedRawBolt11Invoice, bool, bool)> {
379
379
380
380
#[ test]
381
381
fn invoice_deserialize ( ) {
382
- for ( serialized, deserialized, ignore_feature_diff, ignore_unknown_fields) in get_test_tuples ( ) {
382
+ for ( serialized, deserialized, ignore_feature_diff, ignore_unknown_fields) in get_test_tuples ( )
383
+ {
383
384
eprintln ! ( "Testing invoice {}..." , serialized) ;
384
385
let parsed = serialized. parse :: < SignedRawBolt11Invoice > ( ) . unwrap ( ) ;
385
386
@@ -390,17 +391,33 @@ fn invoice_deserialize() {
390
391
assert_eq ! ( deserialized_invoice. hrp, parsed_invoice. hrp) ;
391
392
assert_eq ! ( deserialized_invoice. data. timestamp, parsed_invoice. data. timestamp) ;
392
393
393
- let mut deserialized_hunks: HashSet < _ > = deserialized_invoice. data . tagged_fields . iter ( ) . collect ( ) ;
394
+ let mut deserialized_hunks: HashSet < _ > =
395
+ deserialized_invoice. data . tagged_fields . iter ( ) . collect ( ) ;
394
396
let mut parsed_hunks: HashSet < _ > = parsed_invoice. data . tagged_fields . iter ( ) . collect ( ) ;
395
397
if ignore_feature_diff {
396
- deserialized_hunks. retain ( |h|
397
- if let RawTaggedField :: KnownSemantics ( TaggedField :: Features ( _) ) = h { false } else { true } ) ;
398
- parsed_hunks. retain ( |h|
399
- if let RawTaggedField :: KnownSemantics ( TaggedField :: Features ( _) ) = h { false } else { true } ) ;
398
+ deserialized_hunks. retain ( |h| {
399
+ if let RawTaggedField :: KnownSemantics ( TaggedField :: Features ( _) ) = h {
400
+ false
401
+ } else {
402
+ true
403
+ }
404
+ } ) ;
405
+ parsed_hunks. retain ( |h| {
406
+ if let RawTaggedField :: KnownSemantics ( TaggedField :: Features ( _) ) = h {
407
+ false
408
+ } else {
409
+ true
410
+ }
411
+ } ) ;
400
412
}
401
413
if ignore_unknown_fields {
402
- parsed_hunks. retain ( |h|
403
- if let RawTaggedField :: UnknownSemantics ( _) = h { false } else { true } ) ;
414
+ parsed_hunks. retain ( |h| {
415
+ if let RawTaggedField :: UnknownSemantics ( _) = h {
416
+ false
417
+ } else {
418
+ true
419
+ }
420
+ } ) ;
404
421
}
405
422
assert_eq ! ( deserialized_hunks, parsed_hunks) ;
406
423
@@ -410,7 +427,9 @@ fn invoice_deserialize() {
410
427
411
428
#[ test]
412
429
fn test_bolt_invalid_invoices ( ) {
413
- use bech32:: primitives:: decode:: { CharError , ChecksumError , CheckedHrpstringError , UncheckedHrpstringError } ;
430
+ use bech32:: primitives:: decode:: {
431
+ CharError , CheckedHrpstringError , ChecksumError , UncheckedHrpstringError ,
432
+ } ;
414
433
415
434
// Tests the BOLT 11 invalid invoice test vectors
416
435
assert_eq ! ( Bolt11Invoice :: from_str(
0 commit comments