@@ -106,6 +106,13 @@ impl<'a> InvoiceRequestBuilder<'a> {
106
106
Ok ( self )
107
107
}
108
108
109
+ #[ cfg( test) ]
110
+ pub fn chain_unchecked ( mut self , network : Network ) -> Self {
111
+ let chain = ChainHash :: using_genesis_block ( network) ;
112
+ self . invoice_request . chain = Some ( chain) ;
113
+ self
114
+ }
115
+
109
116
/// Sets the [`InvoiceRequest::amount_msats`] for paying an invoice. Must be at least the base
110
117
/// invoice amount (i.e., [`Offer::amount`] times [`quantity`]).
111
118
///
@@ -120,6 +127,12 @@ impl<'a> InvoiceRequestBuilder<'a> {
120
127
Ok ( self )
121
128
}
122
129
130
+ #[ cfg( test) ]
131
+ pub fn amount_msats_unchecked ( mut self , amount_msats : u64 ) -> Self {
132
+ self . invoice_request . amount_msats = Some ( amount_msats) ;
133
+ self
134
+ }
135
+
123
136
/// Sets the [`InvoiceRequest::features`].
124
137
///
125
138
/// Successive calls to this method will override the previous setting.
@@ -907,7 +920,7 @@ mod tests {
907
920
. amount_msats ( 1000 )
908
921
. build ( ) . unwrap ( )
909
922
. request_invoice ( vec ! [ 1 ; 32 ] , payer_pubkey ( ) )
910
- . chain ( Network :: Bitcoin )
923
+ . chain ( Network :: Bitcoin ) . unwrap ( )
911
924
. build ( ) . unwrap ( )
912
925
. sign ( payer_sign) . unwrap ( ) ;
913
926
@@ -922,7 +935,7 @@ mod tests {
922
935
. amount_msats ( 1000 )
923
936
. build ( ) . unwrap ( )
924
937
. request_invoice ( vec ! [ 1 ; 32 ] , payer_pubkey ( ) )
925
- . chain ( Network :: Testnet )
938
+ . chain_unchecked ( Network :: Testnet )
926
939
. build_unchecked ( )
927
940
. sign ( payer_sign) . unwrap ( ) ;
928
941
@@ -954,7 +967,7 @@ mod tests {
954
967
let invoice_request = OfferBuilder :: new ( "foo" . into ( ) , recipient_pubkey ( ) )
955
968
. build ( ) . unwrap ( )
956
969
. request_invoice ( vec ! [ 1 ; 32 ] , payer_pubkey ( ) )
957
- . amount_msats ( 1000 )
970
+ . amount_msats ( 1000 ) . unwrap ( )
958
971
. build ( ) . unwrap ( )
959
972
. sign ( payer_sign) . unwrap ( ) ;
960
973
@@ -983,7 +996,7 @@ mod tests {
983
996
. amount_msats ( 1000 )
984
997
. build ( ) . unwrap ( )
985
998
. request_invoice ( vec ! [ 1 ; 32 ] , payer_pubkey ( ) )
986
- . amount_msats ( 999 )
999
+ . amount_msats_unchecked ( 999 )
987
1000
. build_unchecked ( )
988
1001
. sign ( payer_sign) . unwrap ( ) ;
989
1002
@@ -1037,7 +1050,7 @@ mod tests {
1037
1050
. supported_quantity ( Quantity :: one ( ) )
1038
1051
. build ( ) . unwrap ( )
1039
1052
. request_invoice ( vec ! [ 1 ; 32 ] , payer_pubkey ( ) )
1040
- . amount_msats ( 2_000 )
1053
+ . amount_msats ( 2_000 ) . unwrap ( )
1041
1054
. quantity_unchecked ( 2 )
1042
1055
. build_unchecked ( )
1043
1056
. sign ( payer_sign) . unwrap ( ) ;
@@ -1057,7 +1070,7 @@ mod tests {
1057
1070
. supported_quantity ( Quantity :: Bounded ( ten) )
1058
1071
. build ( ) . unwrap ( )
1059
1072
. request_invoice ( vec ! [ 1 ; 32 ] , payer_pubkey ( ) )
1060
- . amount_msats ( 10_000 )
1073
+ . amount_msats ( 10_000 ) . unwrap ( )
1061
1074
. quantity ( 10 ) . unwrap ( )
1062
1075
. build ( ) . unwrap ( )
1063
1076
. sign ( payer_sign) . unwrap ( ) ;
@@ -1074,7 +1087,7 @@ mod tests {
1074
1087
. supported_quantity ( Quantity :: Bounded ( ten) )
1075
1088
. build ( ) . unwrap ( )
1076
1089
. request_invoice ( vec ! [ 1 ; 32 ] , payer_pubkey ( ) )
1077
- . amount_msats ( 11_000 )
1090
+ . amount_msats ( 11_000 ) . unwrap ( )
1078
1091
. quantity_unchecked ( 11 )
1079
1092
. build_unchecked ( )
1080
1093
. sign ( payer_sign) . unwrap ( ) ;
@@ -1092,7 +1105,7 @@ mod tests {
1092
1105
. supported_quantity ( Quantity :: Unbounded )
1093
1106
. build ( ) . unwrap ( )
1094
1107
. request_invoice ( vec ! [ 1 ; 32 ] , payer_pubkey ( ) )
1095
- . amount_msats ( 2_000 )
1108
+ . amount_msats ( 2_000 ) . unwrap ( )
1096
1109
. quantity ( 2 ) . unwrap ( )
1097
1110
. build ( ) . unwrap ( )
1098
1111
. sign ( payer_sign) . unwrap ( ) ;
0 commit comments