From 2b37583ca55195965ce2f129d75a1fc114d8b5f6 Mon Sep 17 00:00:00 2001 From: ChrisCho-H Date: Sat, 19 Apr 2025 14:23:31 +0900 Subject: [PATCH] test: add test for push slice minimal Test push_slice and push_slice_nom_minimal from OP_1...OP_16 and OP_1NEGATE --- bitcoin/src/blockdata/script/tests.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/bitcoin/src/blockdata/script/tests.rs b/bitcoin/src/blockdata/script/tests.rs index a7878b3b8..53c4d3f57 100644 --- a/bitcoin/src/blockdata/script/tests.rs +++ b/bitcoin/src/blockdata/script/tests.rs @@ -33,6 +33,13 @@ fn script() { // data script = script.push_slice(b"NRA4VR"); comp.extend([6u8, 78, 82, 65, 52, 86, 82].iter().cloned()); assert_eq!(script.as_bytes(), &comp[..]); + // data push minimality + for n in 1..=16 { + script = script.push_slice([n]); comp.extend([0x50 + n].iter().cloned()); assert_eq!(script.as_bytes(), &comp[..]); + script = script.push_slice_non_minimal([n]); comp.extend([1, n].iter().cloned()); assert_eq!(script.as_bytes(), &comp[..]); + } + script = script.push_slice([0x81]); comp.extend([0x4f].iter().cloned()); assert_eq!(script.as_bytes(), &comp[..]); + script = script.push_slice_non_minimal([0x81]); comp.extend([1, 0x81].iter().cloned()); assert_eq!(script.as_bytes(), &comp[..]); // keys const KEYSTR1: &str = "21032e58afe51f9ed8ad3cc7897f634d881fdbe49a81564629ded8156bebd2ffd1af";