@@ -579,8 +579,9 @@ mod tests {
579
579
let payment_preimage = PaymentPreimage ( [ 1 ; 32 ] ) ;
580
580
let invoice = invoice ( payment_preimage) ;
581
581
let payment_hash = PaymentHash ( invoice. payment_hash ( ) . clone ( ) . into_inner ( ) ) ;
582
+ let final_value_msat = invoice. amount_milli_satoshis ( ) . unwrap ( ) ;
582
583
583
- let payer = TestPayer :: new ( ) ;
584
+ let payer = TestPayer :: new ( ) . expect_send ( Amount :: ForInvoice ( final_value_msat ) ) ;
584
585
let router = TestRouter { } ;
585
586
let scorer = RefCell :: new ( TestScorer :: new ( ) ) ;
586
587
let logger = TestLogger :: new ( ) ;
@@ -608,8 +609,8 @@ mod tests {
608
609
let final_value_msat = invoice. amount_milli_satoshis ( ) . unwrap ( ) ;
609
610
610
611
let payer = TestPayer :: new ( )
611
- . expect_value_msat ( final_value_msat)
612
- . expect_value_msat ( final_value_msat / 2 ) ;
612
+ . expect_send ( Amount :: ForInvoice ( final_value_msat) )
613
+ . expect_send ( Amount :: OnRetry ( final_value_msat / 2 ) ) ;
613
614
let router = TestRouter { } ;
614
615
let scorer = RefCell :: new ( TestScorer :: new ( ) ) ;
615
616
let logger = TestLogger :: new ( ) ;
@@ -650,7 +651,9 @@ mod tests {
650
651
let payment_hash = PaymentHash ( invoice. payment_hash ( ) . clone ( ) . into_inner ( ) ) ;
651
652
let final_value_msat = invoice. amount_milli_satoshis ( ) . unwrap ( ) ;
652
653
653
- let payer = TestPayer :: new ( ) ;
654
+ let payer = TestPayer :: new ( )
655
+ . expect_send ( Amount :: OnRetry ( final_value_msat / 2 ) )
656
+ . expect_send ( Amount :: OnRetry ( final_value_msat / 2 ) ) ;
654
657
let router = TestRouter { } ;
655
658
let scorer = RefCell :: new ( TestScorer :: new ( ) ) ;
656
659
let logger = TestLogger :: new ( ) ;
@@ -693,9 +696,9 @@ mod tests {
693
696
let final_value_msat = invoice. amount_milli_satoshis ( ) . unwrap ( ) ;
694
697
695
698
let payer = TestPayer :: new ( )
696
- . expect_value_msat ( final_value_msat)
697
- . expect_value_msat ( final_value_msat / 2 )
698
- . expect_value_msat ( final_value_msat / 2 ) ;
699
+ . expect_send ( Amount :: ForInvoice ( final_value_msat) )
700
+ . expect_send ( Amount :: OnRetry ( final_value_msat / 2 ) )
701
+ . expect_send ( Amount :: OnRetry ( final_value_msat / 2 ) ) ;
699
702
let router = TestRouter { } ;
700
703
let scorer = RefCell :: new ( TestScorer :: new ( ) ) ;
701
704
let logger = TestLogger :: new ( ) ;
@@ -745,15 +748,17 @@ mod tests {
745
748
let event_handled = core:: cell:: RefCell :: new ( false ) ;
746
749
let event_handler = |_: & _ | { * event_handled. borrow_mut ( ) = true ; } ;
747
750
748
- let payer = TestPayer :: new ( ) ;
751
+ let payment_preimage = PaymentPreimage ( [ 1 ; 32 ] ) ;
752
+ let invoice = invoice ( payment_preimage) ;
753
+ let final_value_msat = invoice. amount_milli_satoshis ( ) . unwrap ( ) ;
754
+
755
+ let payer = TestPayer :: new ( ) . expect_send ( Amount :: ForInvoice ( final_value_msat) ) ;
749
756
let router = TestRouter { } ;
750
757
let scorer = RefCell :: new ( TestScorer :: new ( ) ) ;
751
758
let logger = TestLogger :: new ( ) ;
752
759
let invoice_payer =
753
760
InvoicePayer :: new ( & payer, router, & scorer, & logger, event_handler, RetryAttempts ( 2 ) ) ;
754
761
755
- let payment_preimage = PaymentPreimage ( [ 1 ; 32 ] ) ;
756
- let invoice = invoice ( payment_preimage) ;
757
762
let payment_id = Some ( invoice_payer. pay_invoice ( & invoice) . unwrap ( ) ) ;
758
763
assert_eq ! ( * payer. attempts. borrow( ) , 1 ) ;
759
764
@@ -796,15 +801,17 @@ mod tests {
796
801
let event_handled = core:: cell:: RefCell :: new ( false ) ;
797
802
let event_handler = |_: & _ | { * event_handled. borrow_mut ( ) = true ; } ;
798
803
799
- let payer = TestPayer :: new ( ) ;
804
+ let payment_preimage = PaymentPreimage ( [ 1 ; 32 ] ) ;
805
+ let invoice = invoice ( payment_preimage) ;
806
+ let final_value_msat = invoice. amount_milli_satoshis ( ) . unwrap ( ) ;
807
+
808
+ let payer = TestPayer :: new ( ) . expect_send ( Amount :: ForInvoice ( final_value_msat) ) ;
800
809
let router = TestRouter { } ;
801
810
let scorer = RefCell :: new ( TestScorer :: new ( ) ) ;
802
811
let logger = TestLogger :: new ( ) ;
803
812
let invoice_payer =
804
813
InvoicePayer :: new ( & payer, router, & scorer, & logger, event_handler, RetryAttempts ( 2 ) ) ;
805
814
806
- let payment_preimage = PaymentPreimage ( [ 1 ; 32 ] ) ;
807
- let invoice = invoice ( payment_preimage) ;
808
815
let payment_id = Some ( invoice_payer. pay_invoice ( & invoice) . unwrap ( ) ) ;
809
816
assert_eq ! ( * payer. attempts. borrow( ) , 1 ) ;
810
817
@@ -838,7 +845,7 @@ mod tests {
838
845
839
846
let payer = TestPayer :: new ( )
840
847
. fails_on_attempt ( 2 )
841
- . expect_value_msat ( final_value_msat) ;
848
+ . expect_send ( Amount :: ForInvoice ( final_value_msat) ) ;
842
849
let router = TestRouter { } ;
843
850
let scorer = RefCell :: new ( TestScorer :: new ( ) ) ;
844
851
let logger = TestLogger :: new ( ) ;
@@ -868,15 +875,17 @@ mod tests {
868
875
let event_handled = core:: cell:: RefCell :: new ( false ) ;
869
876
let event_handler = |_: & _ | { * event_handled. borrow_mut ( ) = true ; } ;
870
877
871
- let payer = TestPayer :: new ( ) ;
878
+ let payment_preimage = PaymentPreimage ( [ 1 ; 32 ] ) ;
879
+ let invoice = invoice ( payment_preimage) ;
880
+ let final_value_msat = invoice. amount_milli_satoshis ( ) . unwrap ( ) ;
881
+
882
+ let payer = TestPayer :: new ( ) . expect_send ( Amount :: ForInvoice ( final_value_msat) ) ;
872
883
let router = TestRouter { } ;
873
884
let scorer = RefCell :: new ( TestScorer :: new ( ) ) ;
874
885
let logger = TestLogger :: new ( ) ;
875
886
let invoice_payer =
876
887
InvoicePayer :: new ( & payer, router, & scorer, & logger, event_handler, RetryAttempts ( 2 ) ) ;
877
888
878
- let payment_preimage = PaymentPreimage ( [ 1 ; 32 ] ) ;
879
- let invoice = invoice ( payment_preimage) ;
880
889
let payment_id = Some ( invoice_payer. pay_invoice ( & invoice) . unwrap ( ) ) ;
881
890
assert_eq ! ( * payer. attempts. borrow( ) , 1 ) ;
882
891
@@ -985,7 +994,7 @@ mod tests {
985
994
let payment_hash = PaymentHash ( invoice. payment_hash ( ) . clone ( ) . into_inner ( ) ) ;
986
995
let final_value_msat = 100 ;
987
996
988
- let payer = TestPayer :: new ( ) . expect_value_msat ( final_value_msat) ;
997
+ let payer = TestPayer :: new ( ) . expect_send ( Amount :: ForInvoice ( final_value_msat) ) ;
989
998
let router = TestRouter { } ;
990
999
let scorer = RefCell :: new ( TestScorer :: new ( ) ) ;
991
1000
let logger = TestLogger :: new ( ) ;
@@ -1038,7 +1047,7 @@ mod tests {
1038
1047
1039
1048
let payer = TestPayer :: new ( )
1040
1049
. expect_send ( Amount :: Spontaneous ( final_value_msat) )
1041
- . expect_send ( Amount :: ForInvoiceOrRetry ( final_value_msat) ) ;
1050
+ . expect_send ( Amount :: OnRetry ( final_value_msat) ) ;
1042
1051
let router = TestRouter { } ;
1043
1052
let scorer = RefCell :: new ( TestScorer :: new ( ) ) ;
1044
1053
let logger = TestLogger :: new ( ) ;
@@ -1229,8 +1238,9 @@ mod tests {
1229
1238
1230
1239
#[ derive( Clone , Debug , PartialEq , Eq ) ]
1231
1240
enum Amount {
1232
- ForInvoiceOrRetry ( u64 ) ,
1241
+ ForInvoice ( u64 ) ,
1233
1242
Spontaneous ( u64 ) ,
1243
+ OnRetry ( u64 ) ,
1234
1244
}
1235
1245
1236
1246
impl TestPayer {
@@ -1242,11 +1252,6 @@ mod tests {
1242
1252
}
1243
1253
}
1244
1254
1245
- fn expect_value_msat ( self , value_msat : u64 ) -> Self {
1246
- self . expectations . borrow_mut ( ) . push_back ( Amount :: ForInvoiceOrRetry ( value_msat) ) ;
1247
- self
1248
- }
1249
-
1250
1255
fn expect_send ( self , value_msat : Amount ) -> Self {
1251
1256
self . expectations . borrow_mut ( ) . push_back ( value_msat) ;
1252
1257
self
@@ -1307,7 +1312,7 @@ mod tests {
1307
1312
_payment_secret : & Option < PaymentSecret >
1308
1313
) -> Result < PaymentId , PaymentSendFailure > {
1309
1314
if self . check_attempts ( ) {
1310
- self . check_value_msats ( Amount :: ForInvoiceOrRetry ( route. get_total_amount ( ) ) ) ;
1315
+ self . check_value_msats ( Amount :: ForInvoice ( route. get_total_amount ( ) ) ) ;
1311
1316
Ok ( PaymentId ( [ 1 ; 32 ] ) )
1312
1317
} else {
1313
1318
Err ( PaymentSendFailure :: ParameterError ( APIError :: MonitorUpdateFailed ) )
@@ -1331,7 +1336,7 @@ mod tests {
1331
1336
& self , route : & Route , _payment_id : PaymentId
1332
1337
) -> Result < ( ) , PaymentSendFailure > {
1333
1338
if self . check_attempts ( ) {
1334
- self . check_value_msats ( Amount :: ForInvoiceOrRetry ( route. get_total_amount ( ) ) ) ;
1339
+ self . check_value_msats ( Amount :: OnRetry ( route. get_total_amount ( ) ) ) ;
1335
1340
Ok ( ( ) )
1336
1341
} else {
1337
1342
Err ( PaymentSendFailure :: ParameterError ( APIError :: MonitorUpdateFailed ) )
0 commit comments