Merge rust-bitcoin/rust-bitcoin#4529: psbt: replace the fee rate magic numbers with named constants in tests
ade7ea5fcf
psbt: replace the fee rate magic numbers with named constants in tests (frankomosh) Pull request description: Replace a hardcoded fee rate numbers in PSBT high-fee checks test with named constants. Close #4378 ACKs for top commit: tcharding: ACKade7ea5fcf
apoelstra: ACK ade7ea5fcfc1d00a7cb3c35b4022a4543a7efe1d; successfully ran local tests Tree-SHA512: fa02217940ae32f00164c762c82ecb6bd28da58e5ad44165124a7ad44367d7d0f752e7ab189b991edb2460c449bbd0a83df16a47b082f6755bd9e9d38e398cd8
This commit is contained in:
commit
9310942888
|
@ -1304,6 +1304,11 @@ mod tests {
|
||||||
use crate::witness::Witness;
|
use crate::witness::Witness;
|
||||||
use crate::Sequence;
|
use crate::Sequence;
|
||||||
|
|
||||||
|
/// Fee rate in sat/kwu for a high-fee PSBT with an input=5_000_000_000_000, output=1000
|
||||||
|
const ABSURD_FEE_RATE: FeeRate = FeeRate::from_sat_per_kwu(15_060_240_960_843);
|
||||||
|
/// Fee rate which is just below absurd threshold (1 sat/kwu less)
|
||||||
|
const JUST_BELOW_ABSURD_FEE_RATE: FeeRate = FeeRate::from_sat_per_kwu(15_060_240_960_842);
|
||||||
|
|
||||||
#[track_caller]
|
#[track_caller]
|
||||||
pub fn hex_psbt(s: &str) -> Result<Psbt, crate::psbt::error::Error> {
|
pub fn hex_psbt(s: &str) -> Result<Psbt, crate::psbt::error::Error> {
|
||||||
let r = Vec::from_hex(s);
|
let r = Vec::from_hex(s);
|
||||||
|
@ -1393,26 +1398,26 @@ mod tests {
|
||||||
ExtractTxError::AbsurdFeeRate { fee_rate, .. } => fee_rate,
|
ExtractTxError::AbsurdFeeRate { fee_rate, .. } => fee_rate,
|
||||||
_ => panic!(""),
|
_ => panic!(""),
|
||||||
}),
|
}),
|
||||||
Err(FeeRate::from_sat_per_kwu(15060240960843))
|
Err(ABSURD_FEE_RATE)
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
psbt.clone().extract_tx_fee_rate_limit().map_err(|e| match e {
|
psbt.clone().extract_tx_fee_rate_limit().map_err(|e| match e {
|
||||||
ExtractTxError::AbsurdFeeRate { fee_rate, .. } => fee_rate,
|
ExtractTxError::AbsurdFeeRate { fee_rate, .. } => fee_rate,
|
||||||
_ => panic!(""),
|
_ => panic!(""),
|
||||||
}),
|
}),
|
||||||
Err(FeeRate::from_sat_per_kwu(15060240960843))
|
Err(ABSURD_FEE_RATE)
|
||||||
);
|
);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
psbt.clone()
|
psbt.clone()
|
||||||
.extract_tx_with_fee_rate_limit(FeeRate::from_sat_per_kwu(15060240960842))
|
.extract_tx_with_fee_rate_limit(JUST_BELOW_ABSURD_FEE_RATE)
|
||||||
.map_err(|e| match e {
|
.map_err(|e| match e {
|
||||||
ExtractTxError::AbsurdFeeRate { fee_rate, .. } => fee_rate,
|
ExtractTxError::AbsurdFeeRate { fee_rate, .. } => fee_rate,
|
||||||
_ => panic!(""),
|
_ => panic!(""),
|
||||||
}),
|
}),
|
||||||
Err(FeeRate::from_sat_per_kwu(15060240960843))
|
Err(ABSURD_FEE_RATE)
|
||||||
);
|
);
|
||||||
assert!(psbt
|
assert!(psbt
|
||||||
.extract_tx_with_fee_rate_limit(FeeRate::from_sat_per_kwu(15060240960843))
|
.extract_tx_with_fee_rate_limit(ABSURD_FEE_RATE)
|
||||||
.is_ok());
|
.is_ok());
|
||||||
|
|
||||||
// Testing that extract_tx will error at 25k sat/vbyte (6250000 sat/kwu)
|
// Testing that extract_tx will error at 25k sat/vbyte (6250000 sat/kwu)
|
||||||
|
|
Loading…
Reference in New Issue