diff options
author | Justin Turner Arthur <justinarthur@gmail.com> | 2018-09-25 21:10:13 -0500 |
---|---|---|
committer | Justin Turner Arthur <justinarthur@gmail.com> | 2018-09-26 21:50:51 -0500 |
commit | 17b42f4122740a7d9c91f3b42f77907e9cdcf680 (patch) | |
tree | 32c408cc51feaee923cbaae5a9e52e9eb6f29cdb /test/functional | |
parent | 3a4449e9ad945313c6637283757de8d539cf790f (diff) | |
download | bitcoin-17b42f4122740a7d9c91f3b42f77907e9cdcf680.tar.xz |
Check for specific tx acceptance failures based on script signature
Diffstat (limited to 'test/functional')
-rwxr-xr-x | test/functional/p2p_segwit.py | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/test/functional/p2p_segwit.py b/test/functional/p2p_segwit.py index 1b3c5bd1fb..afbbfa8992 100755 --- a/test/functional/p2p_segwit.py +++ b/test/functional/p2p_segwit.py @@ -769,12 +769,16 @@ class SegWitTest(BitcoinTestFramework): # will require a witness to spend a witness program regardless of # segwit activation. Note that older bitcoind's that are not # segwit-aware would also reject this for failing CLEANSTACK. - test_transaction_acceptance(self.nodes[0], self.test_node, spend_tx, with_witness=False, accepted=False) + with self.nodes[0].assert_debug_log( + expected_msgs=(spend_tx.hash, 'was not accepted: non-mandatory-script-verify-flag (Witness program was passed an empty witness)')): + test_transaction_acceptance(self.nodes[0], self.test_node, spend_tx, with_witness=False, accepted=False) # Try to put the witness script in the scriptSig, should also fail. spend_tx.vin[0].scriptSig = CScript([p2wsh_pubkey, b'a']) spend_tx.rehash() - test_transaction_acceptance(self.nodes[0], self.test_node, spend_tx, with_witness=False, accepted=False) + with self.nodes[0].assert_debug_log( + expected_msgs=('Not relaying invalid transaction {}'.format(spend_tx.hash), 'was not accepted: mandatory-script-verify-flag-failed (Script evaluated without error but finished with a false/empty top stack element)')): + test_transaction_acceptance(self.nodes[0], self.test_node, spend_tx, with_witness=False, accepted=False) # Now put the witness script in the witness, should succeed after # segwit activates. |