From 654b2772b883a9c42e6629649f5237974718c0f6 Mon Sep 17 00:00:00 2001 From: Tobin Harding Date: Tue, 25 Jan 2022 09:24:10 +1100 Subject: [PATCH] Add passing unit tests for read_scriptbool In preparation for refactoring `read_scriptbool` add passing unit tests. --- src/blockdata/script.rs | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/blockdata/script.rs b/src/blockdata/script.rs index 88406702..dd3c99a1 100644 --- a/src/blockdata/script.rs +++ b/src/blockdata/script.rs @@ -1448,5 +1448,23 @@ mod test { assert!(instructions.next().is_none()); assert!(instructions.next().is_none()); } + + #[test] + fn read_scriptbool_zero_is_false() { + let v: Vec = vec![0x00, 0x00, 0x00, 0x00]; + assert!(!read_scriptbool(&v)); + + let v: Vec = vec![0x00, 0x00, 0x00, 0x80]; // With sign bit set. + assert!(!read_scriptbool(&v)); + } + + #[test] + fn read_scriptbool_non_zero_is_true() { + let v: Vec = vec![0x01, 0x00, 0x00, 0x00]; + assert!(read_scriptbool(&v)); + + let v: Vec = vec![0x01, 0x00, 0x00, 0x80]; // With sign bit set. + assert!(read_scriptbool(&v)); + } }