aboutsummaryrefslogtreecommitdiff
path: root/test/functional/feature_cltv.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/functional/feature_cltv.py')
-rwxr-xr-xtest/functional/feature_cltv.py18
1 files changed, 4 insertions, 14 deletions
diff --git a/test/functional/feature_cltv.py b/test/functional/feature_cltv.py
index ca35def3ce..cc59ea8c9b 100755
--- a/test/functional/feature_cltv.py
+++ b/test/functional/feature_cltv.py
@@ -11,7 +11,7 @@ Test that the CHECKLOCKTIMEVERIFY soft-fork activates at (regtest) block height
from test_framework.test_framework import BitcoinTestFramework
from test_framework.util import *
from test_framework.mininode import *
-from test_framework.blocktools import create_coinbase, create_block
+from test_framework.blocktools import create_coinbase, create_block, create_transaction
from test_framework.script import CScript, OP_1NEGATE, OP_CHECKLOCKTIMEVERIFY, OP_DROP, CScriptNum
from io import BytesIO
@@ -49,16 +49,6 @@ def cltv_validate(node, tx, height):
list(CScript(new_tx.vin[0].scriptSig)))
return new_tx
-def create_transaction(node, coinbase, to_address, amount):
- from_txid = node.getblock(coinbase)['tx'][0]
- inputs = [{ "txid" : from_txid, "vout" : 0}]
- outputs = { to_address : amount }
- rawtx = node.createrawtransaction(inputs, outputs)
- signresult = node.signrawtransactionwithwallet(rawtx)
- tx = CTransaction()
- tx.deserialize(BytesIO(hex_str_to_bytes(signresult['hex'])))
- return tx
-
class BIP65Test(BitcoinTestFramework):
def set_test_params(self):
self.num_nodes = 1
@@ -69,12 +59,12 @@ class BIP65Test(BitcoinTestFramework):
self.nodes[0].add_p2p_connection(P2PInterface())
self.log.info("Mining %d blocks", CLTV_HEIGHT - 2)
- self.coinbase_blocks = self.nodes[0].generate(CLTV_HEIGHT - 2)
+ self.coinbase_txids = [self.nodes[0].getblock(b)['tx'][0] for b in self.nodes[0].generate(CLTV_HEIGHT - 2)]
self.nodeaddress = self.nodes[0].getnewaddress()
self.log.info("Test that an invalid-according-to-CLTV transaction can still appear in a block")
- spendtx = create_transaction(self.nodes[0], self.coinbase_blocks[0],
+ spendtx = create_transaction(self.nodes[0], self.coinbase_txids[0],
self.nodeaddress, 1.0)
cltv_invalidate(spendtx)
spendtx.rehash()
@@ -109,7 +99,7 @@ class BIP65Test(BitcoinTestFramework):
self.log.info("Test that invalid-according-to-cltv transactions cannot appear in a block")
block.nVersion = 4
- spendtx = create_transaction(self.nodes[0], self.coinbase_blocks[1],
+ spendtx = create_transaction(self.nodes[0], self.coinbase_txids[1],
self.nodeaddress, 1.0)
cltv_invalidate(spendtx)
spendtx.rehash()