Changeset View
Changeset View
Standalone View
Standalone View
test/functional/rpc_signrawtransaction.py
Show First 20 Lines • Show All 240 Lines • ▼ Show 20 Lines | def multiwallet_signing_test(self): | ||||
}] | }] | ||||
rawTx_w1 = w1.createrawtransaction(inputs, outputs) | rawTx_w1 = w1.createrawtransaction(inputs, outputs) | ||||
rawTxSigned_w1 = w1.signrawtransactionwithwallet(rawTx_w1) | rawTxSigned_w1 = w1.signrawtransactionwithwallet(rawTx_w1) | ||||
assert rawTxSigned_w1['complete'] | assert rawTxSigned_w1['complete'] | ||||
assert 'errors' not in rawTxSigned_w1 | assert 'errors' not in rawTxSigned_w1 | ||||
def OP_1NEGATE_test(self): | |||||
self.log.info( | |||||
"Test OP_1NEGATE (0x4f) satisfies BIP62 minimal push standardness rule") | |||||
hex_str = ( | |||||
"0200000001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | |||||
"FFFFFFFF00000000044F024F9CFDFFFFFF01F0B9F5050000000023210277777777" | |||||
"77777777777777777777777777777777777777777777777777777777AC66030000" | |||||
) | |||||
prev_txs = [ | |||||
{ | |||||
"txid": "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF", | |||||
"vout": 0, | |||||
"scriptPubKey": "A914AE44AB6E9AA0B71F1CD2B453B69340E9BFBAEF6087", | |||||
"redeemScript": "4F9C", | |||||
"amount": 1, | |||||
} | |||||
] | |||||
txn = self.nodes[0].signrawtransactionwithwallet(hex_str, prev_txs) | |||||
assert txn["complete"] | |||||
def run_test(self): | def run_test(self): | ||||
self.successful_signing_test() | self.successful_signing_test() | ||||
self.script_verification_error_test() | self.script_verification_error_test() | ||||
self.test_sighashes() | self.test_sighashes() | ||||
self.OP_1NEGATE_test() | |||||
self.test_with_lock_outputs() | self.test_with_lock_outputs() | ||||
# The multiwalet require the node to use different flags, so we run it | # The multiwalet require the node to use different flags, so we run it | ||||
# last. | # last. | ||||
self.restart_node(0, ["-wallet=w1", "-wallet=w2"]) | self.restart_node(0, ["-wallet=w1", "-wallet=w2"]) | ||||
self.multiwallet_signing_test() | self.multiwallet_signing_test() | ||||
if __name__ == '__main__': | if __name__ == '__main__': | ||||
SignRawTransactionsTest().main() | SignRawTransactionsTest().main() |