mirror of
https://github.com/comit-network/xmr-btc-swap.git
synced 2025-02-02 10:35:22 -05:00
Update assert_weight test to account for a range up to 8 bytes.
Weights fluctuate because of the length of the signatures. Valid ecdsa signatures can have 68, 69, 70, 71, or 72 bytes. Since most of our transactions have 2 signatures the weight can be up to 8 bytes less than the static weight (4 bytes per signature).
This commit is contained in:
parent
d96e20a5b0
commit
330269a1e9
@ -393,40 +393,26 @@ mod tests {
|
|||||||
.unwrap();
|
.unwrap();
|
||||||
let refund_transaction = bob_state6.signed_refund_transaction().unwrap();
|
let refund_transaction = bob_state6.signed_refund_transaction().unwrap();
|
||||||
|
|
||||||
assert_weight(
|
assert_weight(redeem_transaction, TxRedeem::weight(), "TxRedeem");
|
||||||
redeem_transaction.get_weight(),
|
assert_weight(cancel_transaction, TxCancel::weight(), "TxCancel");
|
||||||
TxRedeem::weight(),
|
assert_weight(punish_transaction, TxPunish::weight(), "TxPunish");
|
||||||
"TxRedeem",
|
assert_weight(refund_transaction, TxRefund::weight(), "TxRefund");
|
||||||
);
|
|
||||||
assert_weight(
|
|
||||||
cancel_transaction.get_weight(),
|
|
||||||
TxCancel::weight(),
|
|
||||||
"TxCancel",
|
|
||||||
);
|
|
||||||
assert_weight(
|
|
||||||
punish_transaction.get_weight(),
|
|
||||||
TxPunish::weight(),
|
|
||||||
"TxPunish",
|
|
||||||
);
|
|
||||||
assert_weight(
|
|
||||||
refund_transaction.get_weight(),
|
|
||||||
TxRefund::weight(),
|
|
||||||
"TxRefund",
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Weights fluctuate -+1 wu because of the length of the signatures.
|
// Weights fluctuate because of the length of the signatures. Valid ecdsa
|
||||||
// Some of our transactions have 2 signatures and hence the weight can fluctuate
|
// signatures can have 68, 69, 70, 71, or 72 bytes. Since most of our
|
||||||
// +-2
|
// transactions have 2 signatures the weight can be up to 8 bytes less than
|
||||||
fn assert_weight(is_weight: usize, expected_weight: usize, tx_name: &str) {
|
// the static weight (4 bytes per signature).
|
||||||
|
fn assert_weight(transaction: Transaction, expected_weight: usize, tx_name: &str) {
|
||||||
|
let is_weight = transaction.get_weight();
|
||||||
|
|
||||||
assert!(
|
assert!(
|
||||||
is_weight + 1 == expected_weight
|
expected_weight - is_weight <= 8,
|
||||||
|| is_weight + 2 == expected_weight
|
"{} to have weight {}, but was {}. Transaction: {:#?}",
|
||||||
|| is_weight == expected_weight,
|
|
||||||
"{} to have weight {}, but was {}",
|
|
||||||
tx_name,
|
tx_name,
|
||||||
expected_weight,
|
expected_weight,
|
||||||
is_weight
|
is_weight,
|
||||||
|
transaction
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user