diff options
author | Glenn Willen <gwillen@nerdnet.org> | 2018-10-30 00:41:19 -0700 |
---|---|---|
committer | Pieter Wuille <pieter.wuille@gmail.com> | 2018-12-03 10:37:22 -0800 |
commit | ff56bb9b44387f7e20ae7de59087cf19ea216726 (patch) | |
tree | 993c57d9fe4689d3e14dcba795361a3ec2308e4c /test/functional | |
parent | db445d4e5a25ff13de014dbbf43bb99cde8b8769 (diff) |
Add regression test for PSBT signing bug #14473
Github-Pull: #14588
Rebased-From: e13fea975d5e4ae961faba36379a1cdaf9e50c1c
Diffstat (limited to 'test/functional')
-rwxr-xr-x | test/functional/rpc_psbt.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/test/functional/rpc_psbt.py b/test/functional/rpc_psbt.py index 7c8c6c9af0..92132addba 100755 --- a/test/functional/rpc_psbt.py +++ b/test/functional/rpc_psbt.py @@ -168,6 +168,13 @@ class PSBTTest(BitcoinTestFramework): assert tx_in["sequence"] > MAX_BIP125_RBF_SEQUENCE assert_equal(decoded_psbt["tx"]["locktime"], 0) + # Regression test for 14473 (mishandling of already-signed witness transaction): + psbtx_info = self.nodes[0].walletcreatefundedpsbt([{"txid":unspent["txid"], "vout":unspent["vout"]}], [{self.nodes[2].getnewaddress():unspent["amount"]+1}]) + complete_psbt = self.nodes[0].walletprocesspsbt(psbtx_info["psbt"]) + double_processed_psbt = self.nodes[0].walletprocesspsbt(complete_psbt["psbt"]) + assert_equal(complete_psbt, double_processed_psbt) + # We don't care about the decode result, but decoding must succeed. + self.nodes[0].decodepsbt(double_processed_psbt["psbt"]) # Make sure change address wallet does not have P2SH innerscript access to results in success # when attempting BnB coin selection |