[RPC] Wallet: test importing of native witness scripts
Integration into segwit.py test by Pieter Wuille.
This commit is contained in:
parent
fd0041aa27
commit
06eaca6313
1 changed files with 23 additions and 0 deletions
|
@ -584,6 +584,29 @@ class SegWitTest(BitcoinTestFramework):
|
||||||
self.nodes[0].importprivkey("cTW5mR5M45vHxXkeChZdtSPozrFwFgmEvTNnanCW6wrqwaCZ1X7K")
|
self.nodes[0].importprivkey("cTW5mR5M45vHxXkeChZdtSPozrFwFgmEvTNnanCW6wrqwaCZ1X7K")
|
||||||
self.create_and_mine_tx_from_txids(solvable_txid)
|
self.create_and_mine_tx_from_txids(solvable_txid)
|
||||||
|
|
||||||
|
# Test that importing native P2WPKH/P2WSH scripts works
|
||||||
|
for use_p2wsh in [False, True]:
|
||||||
|
if use_p2wsh:
|
||||||
|
scriptPubKey = "00203a59f3f56b713fdcf5d1a57357f02c44342cbf306ffe0c4741046837bf90561a"
|
||||||
|
transaction = "01000000000100e1f505000000002200203a59f3f56b713fdcf5d1a57357f02c44342cbf306ffe0c4741046837bf90561a00000000"
|
||||||
|
else:
|
||||||
|
scriptPubKey = "a9142f8c469c2f0084c48e11f998ffbe7efa7549f26d87"
|
||||||
|
transaction = "01000000000100e1f5050000000017a9142f8c469c2f0084c48e11f998ffbe7efa7549f26d8700000000"
|
||||||
|
|
||||||
|
self.nodes[1].importaddress(scriptPubKey, "", False)
|
||||||
|
rawtxfund = self.nodes[1].fundrawtransaction(transaction)['hex']
|
||||||
|
rawtxfund = self.nodes[1].signrawtransaction(rawtxfund)["hex"]
|
||||||
|
txid = self.nodes[1].sendrawtransaction(rawtxfund)
|
||||||
|
|
||||||
|
assert_equal(self.nodes[1].gettransaction(txid, True)["txid"], txid)
|
||||||
|
assert_equal(self.nodes[1].listtransactions("*", 1, 0, True)[0]["txid"], txid)
|
||||||
|
|
||||||
|
# Assert it is properly saved
|
||||||
|
self.stop_node(1)
|
||||||
|
self.start_node(1)
|
||||||
|
assert_equal(self.nodes[1].gettransaction(txid, True)["txid"], txid)
|
||||||
|
assert_equal(self.nodes[1].listtransactions("*", 1, 0, True)[0]["txid"], txid)
|
||||||
|
|
||||||
def mine_and_test_listunspent(self, script_list, ismine):
|
def mine_and_test_listunspent(self, script_list, ismine):
|
||||||
utxo = find_unspent(self.nodes[0], 50)
|
utxo = find_unspent(self.nodes[0], 50)
|
||||||
tx = CTransaction()
|
tx = CTransaction()
|
||||||
|
|
Loading…
Reference in a new issue