Skip to content

Commit 701deb5

Browse files
committed
f - refactor builder checks
1 parent e52c347 commit 701deb5

File tree

1 file changed

+21
-8
lines changed

1 file changed

+21
-8
lines changed

lightning/src/offers/invoice_request.rs

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,13 @@ impl<'a> InvoiceRequestBuilder<'a> {
106106
Ok(self)
107107
}
108108

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+
109116
/// Sets the [`InvoiceRequest::amount_msats`] for paying an invoice. Must be at least the base
110117
/// invoice amount (i.e., [`Offer::amount`] times [`quantity`]).
111118
///
@@ -120,6 +127,12 @@ impl<'a> InvoiceRequestBuilder<'a> {
120127
Ok(self)
121128
}
122129

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+
123136
/// Sets the [`InvoiceRequest::features`].
124137
///
125138
/// Successive calls to this method will override the previous setting.
@@ -907,7 +920,7 @@ mod tests {
907920
.amount_msats(1000)
908921
.build().unwrap()
909922
.request_invoice(vec![1; 32], payer_pubkey())
910-
.chain(Network::Bitcoin)
923+
.chain(Network::Bitcoin).unwrap()
911924
.build().unwrap()
912925
.sign(payer_sign).unwrap();
913926

@@ -922,7 +935,7 @@ mod tests {
922935
.amount_msats(1000)
923936
.build().unwrap()
924937
.request_invoice(vec![1; 32], payer_pubkey())
925-
.chain(Network::Testnet)
938+
.chain_unchecked(Network::Testnet)
926939
.build_unchecked()
927940
.sign(payer_sign).unwrap();
928941

@@ -954,7 +967,7 @@ mod tests {
954967
let invoice_request = OfferBuilder::new("foo".into(), recipient_pubkey())
955968
.build().unwrap()
956969
.request_invoice(vec![1; 32], payer_pubkey())
957-
.amount_msats(1000)
970+
.amount_msats(1000).unwrap()
958971
.build().unwrap()
959972
.sign(payer_sign).unwrap();
960973

@@ -983,7 +996,7 @@ mod tests {
983996
.amount_msats(1000)
984997
.build().unwrap()
985998
.request_invoice(vec![1; 32], payer_pubkey())
986-
.amount_msats(999)
999+
.amount_msats_unchecked(999)
9871000
.build_unchecked()
9881001
.sign(payer_sign).unwrap();
9891002

@@ -1037,7 +1050,7 @@ mod tests {
10371050
.supported_quantity(Quantity::one())
10381051
.build().unwrap()
10391052
.request_invoice(vec![1; 32], payer_pubkey())
1040-
.amount_msats(2_000)
1053+
.amount_msats(2_000).unwrap()
10411054
.quantity_unchecked(2)
10421055
.build_unchecked()
10431056
.sign(payer_sign).unwrap();
@@ -1057,7 +1070,7 @@ mod tests {
10571070
.supported_quantity(Quantity::Bounded(ten))
10581071
.build().unwrap()
10591072
.request_invoice(vec![1; 32], payer_pubkey())
1060-
.amount_msats(10_000)
1073+
.amount_msats(10_000).unwrap()
10611074
.quantity(10).unwrap()
10621075
.build().unwrap()
10631076
.sign(payer_sign).unwrap();
@@ -1074,7 +1087,7 @@ mod tests {
10741087
.supported_quantity(Quantity::Bounded(ten))
10751088
.build().unwrap()
10761089
.request_invoice(vec![1; 32], payer_pubkey())
1077-
.amount_msats(11_000)
1090+
.amount_msats(11_000).unwrap()
10781091
.quantity_unchecked(11)
10791092
.build_unchecked()
10801093
.sign(payer_sign).unwrap();
@@ -1092,7 +1105,7 @@ mod tests {
10921105
.supported_quantity(Quantity::Unbounded)
10931106
.build().unwrap()
10941107
.request_invoice(vec![1; 32], payer_pubkey())
1095-
.amount_msats(2_000)
1108+
.amount_msats(2_000).unwrap()
10961109
.quantity(2).unwrap()
10971110
.build().unwrap()
10981111
.sign(payer_sign).unwrap();

0 commit comments

Comments
 (0)