Add bitcoin-tx tests
Testing: delin, delout, locktime, and basic createrawtransaction-like functionality.
This commit is contained in:
+13
-3
@@ -17,8 +17,11 @@ def bctest(testDir, testObj):
|
||||
inputData = open(filename).read()
|
||||
stdinCfg = subprocess.PIPE
|
||||
|
||||
outputFn = testObj['output_cmp']
|
||||
outputData = open(testDir + "/" + outputFn).read()
|
||||
outputFn = None
|
||||
outputData = None
|
||||
if "output_cmp" in testObj:
|
||||
outputFn = testObj['output_cmp']
|
||||
outputData = open(testDir + "/" + outputFn).read()
|
||||
|
||||
proc = subprocess.Popen(execargs, stdin=stdinCfg, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
||||
try:
|
||||
@@ -27,10 +30,17 @@ def bctest(testDir, testObj):
|
||||
print("OSError, Failed to execute " + execargs[0])
|
||||
sys.exit(1)
|
||||
|
||||
if outs[0] != outputData:
|
||||
if outputData and (outs[0] != outputData):
|
||||
print("Output data mismatch for " + outputFn)
|
||||
sys.exit(1)
|
||||
|
||||
wantRC = 0
|
||||
if "return_code" in testObj:
|
||||
wantRC = testObj['return_code']
|
||||
if proc.returncode != wantRC:
|
||||
print("Return code mismatch for " + outputFn)
|
||||
sys.exit(1)
|
||||
|
||||
def bctester(testDir, input_basename):
|
||||
input_filename = testDir + "/" + input_basename
|
||||
raw_data = open(input_filename).read()
|
||||
|
||||
@@ -5,5 +5,34 @@
|
||||
{ "exec": ["./bitcoin-tx", "-"],
|
||||
"input": "blanktx.hex",
|
||||
"output_cmp": "blanktx.hex"
|
||||
},
|
||||
{ "exec": ["./bitcoin-tx", "-", "delin=1"],
|
||||
"input": "tx394b54bb.hex",
|
||||
"output_cmp": "tt-delin1-out.hex"
|
||||
},
|
||||
{ "exec": ["./bitcoin-tx", "-", "delin=31"],
|
||||
"input": "tx394b54bb.hex",
|
||||
"return_code": 1
|
||||
},
|
||||
{ "exec": ["./bitcoin-tx", "-", "delout=1"],
|
||||
"input": "tx394b54bb.hex",
|
||||
"output_cmp": "tt-delout1-out.hex"
|
||||
},
|
||||
{ "exec": ["./bitcoin-tx", "-", "delout=2"],
|
||||
"input": "tx394b54bb.hex",
|
||||
"return_code": 1
|
||||
},
|
||||
{ "exec": ["./bitcoin-tx", "-", "locktime=317000"],
|
||||
"input": "tx394b54bb.hex",
|
||||
"output_cmp": "tt-locktime317000-out.hex"
|
||||
},
|
||||
{ "exec":
|
||||
["./bitcoin-tx", "-create",
|
||||
"in=5897de6bd6027a475eadd57019d4e6872c396d0716c4875a5f1a6fcfdf385c1f:0",
|
||||
"in=bf829c6bcf84579331337659d31f89dfd138f7f7785802d5501c92333145ca7c:18",
|
||||
"in=22a6f904655d53ae2ff70e701a0bbd90aa3975c0f40bfc6cc996a9049e31cdfc:1",
|
||||
"outaddr=0.18:13tuJJDR2RgArmgfv6JScSdreahzgc4T6o",
|
||||
"outaddr=4:1P8yWvZW8jVihP1bzHeqfE4aoXNX8AVa46"],
|
||||
"output_cmp": "txcreate1.hex"
|
||||
}
|
||||
]
|
||||
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
|
||||
01000000031f5c38dfcf6f1a5f5a87c416076d392c87e6d41970d5ad5e477a02d66bde97580000000000ffffffff7cca453133921c50d5025878f7f738d1df891fd359763331935784cf6b9c82bf1200000000fffffffffccd319e04a996c96cfc0bf4c07539aa90bd0b1a700ef72fae535d6504f9a6220100000000ffffffff0280a81201000000001976a9141fc11f39be1729bf973a7ab6a615ca4729d6457488ac0084d717000000001976a914f2d4db28cad6502226ee484ae24505c2885cb12d88ac00000000
|
||||
Reference in New Issue
Block a user