aboutsummaryrefslogtreecommitdiff
path: root/src/test
diff options
context:
space:
mode:
authorMatt Corallo <git@bluematt.me>2012-09-05 21:46:48 -0400
committerMatt Corallo <git@bluematt.me>2012-09-05 22:33:59 -0400
commit1fcebc16c59e52921f4bf1e9a0073364ef13a08a (patch)
tree85230e7a9dc4f81e0792fc30d1cfa6150c72def1 /src/test
parent8788221761afc2c2990da746d9a6c444ff869684 (diff)
downloadbitcoin-1fcebc16c59e52921f4bf1e9a0073364ef13a08a.tar.xz
check tx.CheckTransaction for data-driven tx tests.
(and change so that only one case has to fail to make a tx_invalid test correct)
Diffstat (limited to 'src/test')
-rw-r--r--src/test/transaction_tests.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/test/transaction_tests.cpp b/src/test/transaction_tests.cpp
index de6e18f14d..c230458866 100644
--- a/src/test/transaction_tests.cpp
+++ b/src/test/transaction_tests.cpp
@@ -66,6 +66,8 @@ BOOST_AUTO_TEST_CASE(tx_valid)
CTransaction tx;
stream >> tx;
+ BOOST_CHECK_MESSAGE(tx.CheckTransaction(), strTest);
+
for (unsigned int i = 0; i < tx.vin.size(); i++)
{
if (!mapprevOutScriptPubKeys.count(tx.vin[i].prevout))
@@ -131,7 +133,9 @@ BOOST_AUTO_TEST_CASE(tx_invalid)
CTransaction tx;
stream >> tx;
- for (unsigned int i = 0; i < tx.vin.size(); i++)
+ fValid = tx.CheckTransaction();
+
+ for (unsigned int i = 0; i < tx.vin.size() && fValid; i++)
{
if (!mapprevOutScriptPubKeys.count(tx.vin[i].prevout))
{
@@ -139,8 +143,10 @@ BOOST_AUTO_TEST_CASE(tx_invalid)
break;
}
- BOOST_CHECK_MESSAGE(!VerifyScript(tx.vin[i].scriptSig, mapprevOutScriptPubKeys[tx.vin[i].prevout], tx, i, test[2].get_bool(), 0), strTest);
+ fValid = VerifyScript(tx.vin[i].scriptSig, mapprevOutScriptPubKeys[tx.vin[i].prevout], tx, i, test[2].get_bool(), 0);
}
+
+ BOOST_CHECK_MESSAGE(!fValid, strTest);
}
}
}