aboutsummaryrefslogtreecommitdiff
path: root/test/util/data
diff options
context:
space:
mode:
authorKashif Smith <1489460+kashifs@users.noreply.github.com>2023-12-07 04:41:00 -0500
committerKashif Smith <1489460+kashifs@users.noreply.github.com>2023-12-08 20:27:13 -0500
commit94feaf2b66d68b3c849375e1d9d3a81c17cd2045 (patch)
tree5bbe445c8cf5e8f81bd96314f9843bd1d928c3ba /test/util/data
parentc2b836b119eeed8727d73bcca5e95055eb93fb1a (diff)
downloadbitcoin-94feaf2b66d68b3c849375e1d9d3a81c17cd2045.tar.xz
tests: Add unit tests for bitcoin-tx replaceable command
Diffstat (limited to 'test/util/data')
-rw-r--r--test/util/data/bitcoin-util-test.json80
-rw-r--r--test/util/data/txreplace1.hex1
-rw-r--r--test/util/data/txreplacenoinputs.hex1
-rw-r--r--test/util/data/txreplaceomittedn.hex1
-rw-r--r--test/util/data/txreplacesingleinput.hex1
5 files changed, 83 insertions, 1 deletions
diff --git a/test/util/data/bitcoin-util-test.json b/test/util/data/bitcoin-util-test.json
index c9c64274c6..83b3c430d5 100644
--- a/test/util/data/bitcoin-util-test.json
+++ b/test/util/data/bitcoin-util-test.json
@@ -163,7 +163,85 @@
"replaceable=0foo"],
"return_code": 1,
"error_txt": "error: Invalid TX input index",
- "description": "Tests the check for an invalid input index with replaceable"
+ "description": "Tests the check for an invalid string input index with replaceable"
+ },
+ {
+ "exec": "./bitcoin-tx",
+ "args":
+ ["-create",
+ "in=5897de6bd6027a475eadd57019d4e6872c396d0716c4875a5f1a6fcfdf385c1f:0",
+ "replaceable=-1"],
+ "return_code": 1,
+ "error_txt": "error: Invalid TX input index",
+ "description": "Tests the check for an invalid negative input index with replaceable"
+ },
+ {
+ "exec": "./bitcoin-tx",
+ "args":
+ ["-create",
+ "in=5897de6bd6027a475eadd57019d4e6872c396d0716c4875a5f1a6fcfdf385c1f:0",
+ "replaceable=1"],
+ "return_code": 1,
+ "error_txt": "error: Invalid TX input index",
+ "description": "Tests the check for an invalid positive out-of-bounds input index with replaceable"
+ },
+ {
+ "exec": "./bitcoin-tx",
+ "args":
+ ["-create",
+ "in=5897de6bd6027a475eadd57019d4e6872c396d0716c4875a5f1a6fcfdf385c1f:0",
+ "replaceable=0"],
+ "output_cmp": "txreplacesingleinput.hex",
+ "description": "Tests that the 'SEQUENCE' value for a single input is set to fdffffff for single input"
+ },
+ {
+ "exec": "./bitcoin-tx",
+ "args":
+ ["-create",
+ "in=5897de6bd6027a475eadd57019d4e6872c396d0716c4875a5f1a6fcfdf385c1f:0",
+ "replaceable="],
+ "output_cmp": "txreplacesingleinput.hex",
+ "description": "Tests that the 'SEQUENCE' value for a single input is set to fdffffff when N omitted"
+ },
+ {
+ "exec": "./bitcoin-tx",
+ "args":
+ ["-create",
+ "in=5897de6bd6027a475eadd57019d4e6872c396d0716c4875a5f1a6fcfdf385c1f:0",
+ "in=bf829c6bcf84579331337659d31f89dfd138f7f7785802d5501c92333145ca7c:18",
+ "in=22a6f904655d53ae2ff70e701a0bbd90aa3975c0f40bfc6cc996a9049e31cdfc:1",
+ "replaceable=1"],
+ "output_cmp": "txreplace1.hex",
+ "description": "Tests that only the 'SEQUENCE' value of input[1] is set to fdffffff"
+ },
+ {
+ "exec": "./bitcoin-tx",
+ "args":
+ ["-create",
+ "in=5897de6bd6027a475eadd57019d4e6872c396d0716c4875a5f1a6fcfdf385c1f:0",
+ "in=bf829c6bcf84579331337659d31f89dfd138f7f7785802d5501c92333145ca7c:18",
+ "in=22a6f904655d53ae2ff70e701a0bbd90aa3975c0f40bfc6cc996a9049e31cdfc:1",
+ "replaceable="],
+ "output_cmp": "txreplaceomittedn.hex",
+ "description": "Tests that the 'SEQUENCE' value for each input is set to fdffffff when N omitted"
+ },
+ {
+ "exec": "./bitcoin-tx",
+ "args":
+ ["-create",
+ "replaceable="],
+ "output_cmp": "txreplacenoinputs.hex",
+ "description": "Tests behavior when no inputs are provided in the transaction"
+ },
+ {
+ "exec": "./bitcoin-tx",
+ "args":
+ ["-create",
+ "in=5897de6bd6027a475eadd57019d4e6872c396d0716c4875a5f1a6fcfdf385c1f:0:abcdef00",
+ "replaceable="],
+ "return_code": 1,
+ "error_txt": "error: invalid TX sequence id 'abcdef00'",
+ "description": "Try to make invalid input replaceable"
},
{ "exec": "./bitcoin-tx",
"args":
diff --git a/test/util/data/txreplace1.hex b/test/util/data/txreplace1.hex
new file mode 100644
index 0000000000..7401c4e5dd
--- /dev/null
+++ b/test/util/data/txreplace1.hex
@@ -0,0 +1 @@
+02000000031f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000ffffffff7cca453133921c50d5025878f7f738d1df891fd359763331935784cf6b9c82bf1200000000fdfffffffccd319e04a996c96cfc0bf4c07539aa90bd0b1a700ef72fae535d6504f9a6220100000000ffffffff0000000000
diff --git a/test/util/data/txreplacenoinputs.hex b/test/util/data/txreplacenoinputs.hex
new file mode 100644
index 0000000000..22d830eda1
--- /dev/null
+++ b/test/util/data/txreplacenoinputs.hex
@@ -0,0 +1 @@
+02000000000000000000
diff --git a/test/util/data/txreplaceomittedn.hex b/test/util/data/txreplaceomittedn.hex
new file mode 100644
index 0000000000..a687836a09
--- /dev/null
+++ b/test/util/data/txreplaceomittedn.hex
@@ -0,0 +1 @@
+02000000031f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000fdffffff7cca453133921c50d5025878f7f738d1df891fd359763331935784cf6b9c82bf1200000000fdfffffffccd319e04a996c96cfc0bf4c07539aa90bd0b1a700ef72fae535d6504f9a6220100000000fdffffff0000000000
diff --git a/test/util/data/txreplacesingleinput.hex b/test/util/data/txreplacesingleinput.hex
new file mode 100644
index 0000000000..b3e442795e
--- /dev/null
+++ b/test/util/data/txreplacesingleinput.hex
@@ -0,0 +1 @@
+02000000011f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000fdffffff0000000000