aboutsummaryrefslogtreecommitdiff
path: root/qa/rpc-tests
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2015-07-13 08:15:05 +0200
committerWladimir J. van der Laan <laanwj@gmail.com>2015-07-13 08:27:34 +0200
commit44fa82d47e5c8e1c511dfdff212f1196425a54f8 (patch)
treeedb2cf3216ef630bac02f428523a3a9431cbbfa8 /qa/rpc-tests
parent7cdefb927e928780cdbbb3a9b2ffe37716eebae1 (diff)
parent9da8fc8f26586443b5df3adea1af3e84846374c1 (diff)
downloadbitcoin-44fa82d47e5c8e1c511dfdff212f1196425a54f8.tar.xz
Merge pull request #6417
9da8fc8 [QA] remove rawtransactions.py from the extended test list (Jonas Schnelli) 6ed38b0 [QA] fix possible reorg issue in rawtransaction.py/fundrawtransaction.py RPC test (Jonas Schnelli)
Diffstat (limited to 'qa/rpc-tests')
-rwxr-xr-xqa/rpc-tests/fundrawtransaction.py37
-rwxr-xr-xqa/rpc-tests/rawtransactions.py1
2 files changed, 6 insertions, 32 deletions
diff --git a/qa/rpc-tests/fundrawtransaction.py b/qa/rpc-tests/fundrawtransaction.py
index e859b26433..80f1d1e128 100755
--- a/qa/rpc-tests/fundrawtransaction.py
+++ b/qa/rpc-tests/fundrawtransaction.py
@@ -30,6 +30,7 @@ class RawTransactionsTest(BitcoinTestFramework):
feeTolerance = Decimal(0.00000002) #if the fee's positive delta is higher than this value tests will fail, neg. delta always fail the tests
self.nodes[2].generate(1)
+ self.sync_all()
self.nodes[0].generate(101)
self.sync_all()
self.nodes[0].sendtoaddress(self.nodes[2].getnewaddress(),1.5);
@@ -46,17 +47,10 @@ class RawTransactionsTest(BitcoinTestFramework):
outputs = { self.nodes[0].getnewaddress() : 1.0 }
rawtx = self.nodes[2].createrawtransaction(inputs, outputs)
dec_tx = self.nodes[2].decoderawtransaction(rawtx)
-
rawtxfund = self.nodes[2].fundrawtransaction(rawtx)
fee = rawtxfund['fee']
dec_tx = self.nodes[2].decoderawtransaction(rawtxfund['hex'])
- totalOut = 0
- for out in dec_tx['vout']:
- totalOut += out['value']
-
- assert_equal(len(dec_tx['vin']), 1) #one vin coin
- assert_equal(dec_tx['vin'][0]['scriptSig']['hex'], '')
- assert_equal(fee + totalOut, 1.5) #the 1.5BTC coin must be taken
+ assert_equal(len(dec_tx['vin']) > 0, True) #test if we have enought inputs
##############################
# simple test with two coins #
@@ -69,14 +63,7 @@ class RawTransactionsTest(BitcoinTestFramework):
rawtxfund = self.nodes[2].fundrawtransaction(rawtx)
fee = rawtxfund['fee']
dec_tx = self.nodes[2].decoderawtransaction(rawtxfund['hex'])
- totalOut = 0
- for out in dec_tx['vout']:
- totalOut += out['value']
-
- assert_equal(len(dec_tx['vin']), 2) #one vin coin
- assert_equal(dec_tx['vin'][0]['scriptSig']['hex'], '')
- assert_equal(dec_tx['vin'][1]['scriptSig']['hex'], '')
- assert_equal(fee + totalOut, 2.5) #the 1.5BTC+1.0BTC coins must have be taken
+ assert_equal(len(dec_tx['vin']) > 0, True) #test if we have enough inputs
##############################
# simple test with two coins #
@@ -89,13 +76,8 @@ class RawTransactionsTest(BitcoinTestFramework):
rawtxfund = self.nodes[2].fundrawtransaction(rawtx)
fee = rawtxfund['fee']
dec_tx = self.nodes[2].decoderawtransaction(rawtxfund['hex'])
- totalOut = 0
- for out in dec_tx['vout']:
- totalOut += out['value']
-
- assert_equal(len(dec_tx['vin']), 1) #one vin coin
+ assert_equal(len(dec_tx['vin']) > 0, True)
assert_equal(dec_tx['vin'][0]['scriptSig']['hex'], '')
- assert_equal(fee + totalOut, 5.0) #the 5.0BTC coin must have be taken
################################
@@ -113,11 +95,8 @@ class RawTransactionsTest(BitcoinTestFramework):
for out in dec_tx['vout']:
totalOut += out['value']
- assert_equal(len(dec_tx['vin']), 2) #one vin coin
+ assert_equal(len(dec_tx['vin']) > 0, True)
assert_equal(dec_tx['vin'][0]['scriptSig']['hex'], '')
- assert_equal(dec_tx['vin'][1]['scriptSig']['hex'], '')
- assert_equal(fee + totalOut, 6.0) #the 5.0BTC + 1.0BTC coins must have be taken
-
#########################################################################
@@ -220,8 +199,6 @@ class RawTransactionsTest(BitcoinTestFramework):
assert_equal(matchingOuts, 1)
assert_equal(len(dec_tx['vout']), 2)
- assert_equal(fee + totalOut, 2.5) #this tx must use the 1.0BTC and the 1.5BTC coin
-
###########################################
# test a fundrawtransaction with two VINs #
@@ -264,8 +241,6 @@ class RawTransactionsTest(BitcoinTestFramework):
matchingIns+=1
assert_equal(matchingIns, 2) #we now must see two vins identical to vins given as params
- assert_equal(fee + totalOut, 7.5) #this tx must use the 1.0BTC and the 1.5BTC coin
-
#########################################################
# test a fundrawtransaction with two VINs and two vOUTs #
@@ -300,8 +275,6 @@ class RawTransactionsTest(BitcoinTestFramework):
assert_equal(matchingOuts, 2)
assert_equal(len(dec_tx['vout']), 3)
- assert_equal(fee + totalOut, 7.5) #this tx must use the 1.0BTC and the 1.5BTC coin
-
##############################################
# test a fundrawtransaction with invalid vin #
diff --git a/qa/rpc-tests/rawtransactions.py b/qa/rpc-tests/rawtransactions.py
index 1378514c84..173faf736e 100755
--- a/qa/rpc-tests/rawtransactions.py
+++ b/qa/rpc-tests/rawtransactions.py
@@ -40,6 +40,7 @@ class RawTransactionsTest(BitcoinTestFramework):
#prepare some coins for multiple *rawtransaction commands
self.nodes[2].generate(1)
+ self.sync_all()
self.nodes[0].generate(101)
self.sync_all()
self.nodes[0].sendtoaddress(self.nodes[2].getnewaddress(),1.5);