diff --git a/primitives/src/transaction.rs b/primitives/src/transaction.rs index 7e708e250..05210ee29 100644 --- a/primitives/src/transaction.rs +++ b/primitives/src/transaction.rs @@ -645,6 +645,18 @@ impl<'a> Arbitrary<'a> for Txid { mod tests { use super::*; + #[test] + fn sanity_check() { + let version = Version(123); + assert_eq!(version.to_u32(), 123); + assert_eq!(u32::from(version), 123); + + assert!(!version.is_standard()); + assert!(Version::ONE.is_standard()); + assert!(Version::TWO.is_standard()); + assert!(Version::THREE.is_standard()); + } + #[test] fn transaction_functions() { let txin = TxIn { diff --git a/units/src/amount/tests.rs b/units/src/amount/tests.rs index d3463660f..e0d506abb 100644 --- a/units/src/amount/tests.rs +++ b/units/src/amount/tests.rs @@ -37,6 +37,11 @@ fn sanity_check() { assert_eq!(Amount::from_float_in(2_f64, Denomination::Bitcoin).unwrap(), sat(200_000_000)); assert!(Amount::from_float_in(-100_f64, Denomination::Bitcoin).is_err()); } + + let result = NumOpResult::Valid(sat(123)); + assert_eq!(Some(sat(123)), result.ok()); + assert!(result.is_valid()); + assert!(!result.is_error()); } #[test] @@ -1010,6 +1015,12 @@ fn sum_amounts() { assert_eq!([].iter().sum::>(), Amount::ZERO.into()); assert_eq!([].iter().sum::>(), SignedAmount::ZERO.into()); + let results = [NumOpResult::Valid(sat(42)), NumOpResult::Valid(sat(1337)), NumOpResult::Valid(sat(21))]; + assert_eq!(results.iter().sum::>(), NumOpResult::Valid(sat(1400))); + + let signed_results = [NumOpResult::Valid(ssat(42)), NumOpResult::Valid(ssat(1337)), NumOpResult::Valid(ssat(21))]; + assert_eq!(signed_results.iter().sum::>(), NumOpResult::Valid(ssat(1400))); + let amounts = [sat(42), sat(1337), sat(21)]; assert_eq!( amounts.iter().map(|a| NumOpResult::Valid(*a)).sum::>(),