mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-05-06 03:49:16 +02:00
Merge bitcoin/bitcoin#29022: Make bitcoin-tx replaceable value optional
98afe78661doc: Update bitcoin-tx replaceable documentation (Kashif Smith)94feaf2b66tests: Add unit tests for bitcoin-tx replaceable command (Kashif Smith)c2b836b119bitcoin-tx: Make replaceable value optional (Kashif Smith) Pull request description: This fixes #28638. The issue was originally raised by dooglus, who also suggested the patch found in this code. Additionally, test coverage has been added and documentation has been updated. ACKs for top commit: achow101: ACK98afe78661pinheadmz: ACK98afe78661hernanmarino: Tested ACK98afe78661instagibbs: untested ACK98afe78661Tree-SHA512: ea1384aba7b0014c8cbeb7280d66b1e617d406fb02471dff33873057132b80518c94c7caa4b0426c26d17ce8aa393107de319dde781ace8df72f0314c8c75159
This commit is contained in:
@@ -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":
|
||||
|
||||
1
test/util/data/txreplace1.hex
Normal file
1
test/util/data/txreplace1.hex
Normal file
@@ -0,0 +1 @@
|
||||
02000000031f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000ffffffff7cca453133921c50d5025878f7f738d1df891fd359763331935784cf6b9c82bf1200000000fdfffffffccd319e04a996c96cfc0bf4c07539aa90bd0b1a700ef72fae535d6504f9a6220100000000ffffffff0000000000
|
||||
1
test/util/data/txreplacenoinputs.hex
Normal file
1
test/util/data/txreplacenoinputs.hex
Normal file
@@ -0,0 +1 @@
|
||||
02000000000000000000
|
||||
1
test/util/data/txreplaceomittedn.hex
Normal file
1
test/util/data/txreplaceomittedn.hex
Normal file
@@ -0,0 +1 @@
|
||||
02000000031f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000fdffffff7cca453133921c50d5025878f7f738d1df891fd359763331935784cf6b9c82bf1200000000fdfffffffccd319e04a996c96cfc0bf4c07539aa90bd0b1a700ef72fae535d6504f9a6220100000000fdffffff0000000000
|
||||
1
test/util/data/txreplacesingleinput.hex
Normal file
1
test/util/data/txreplacesingleinput.hex
Normal file
@@ -0,0 +1 @@
|
||||
02000000011f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000fdffffff0000000000
|
||||
Reference in New Issue
Block a user