diff options
| author | Gavin Andresen <[email protected]> | 2013-01-29 19:37:44 -0800 |
|---|---|---|
| committer | Gavin Andresen <[email protected]> | 2013-01-29 19:37:44 -0800 |
| commit | db3b4ade7ba8a91afaa649177d5f297f20eb40fd (patch) | |
| tree | 9a03e88480630844c8732379b2b7286313b1b901 /src/test | |
| parent | Merge branch 'master' of github.com:bitcoin/bitcoin (diff) | |
| parent | Deal with LevelDB errors (diff) | |
| download | discoin-db3b4ade7ba8a91afaa649177d5f297f20eb40fd.tar.xz discoin-db3b4ade7ba8a91afaa649177d5f297f20eb40fd.zip | |
Merge pull request #2224 from sipa/valstate
Improve error handling during validation
Diffstat (limited to 'src/test')
| -rw-r--r-- | src/test/miner_tests.cpp | 4 | ||||
| -rw-r--r-- | src/test/transaction_tests.cpp | 12 |
2 files changed, 11 insertions, 5 deletions
diff --git a/src/test/miner_tests.cpp b/src/test/miner_tests.cpp index bc2a05a6b..af284653d 100644 --- a/src/test/miner_tests.cpp +++ b/src/test/miner_tests.cpp @@ -73,7 +73,9 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity) txFirst.push_back(new CTransaction(pblock->vtx[0])); pblock->hashMerkleRoot = pblock->BuildMerkleTree(); pblock->nNonce = blockinfo[i].nonce; - assert(ProcessBlock(NULL, pblock)); + CValidationState state; + BOOST_CHECK(ProcessBlock(state, NULL, pblock)); + BOOST_CHECK(state.IsValid()); pblock->hashPrevBlock = pblock->GetHash(); } delete pblocktemplate; diff --git a/src/test/transaction_tests.cpp b/src/test/transaction_tests.cpp index 23837c6c1..f44d46fdb 100644 --- a/src/test/transaction_tests.cpp +++ b/src/test/transaction_tests.cpp @@ -66,7 +66,9 @@ BOOST_AUTO_TEST_CASE(tx_valid) CTransaction tx; stream >> tx; - BOOST_CHECK_MESSAGE(tx.CheckTransaction(), strTest); + CValidationState state; + BOOST_CHECK_MESSAGE(tx.CheckTransaction(state), strTest); + BOOST_CHECK(state.IsValid()); for (unsigned int i = 0; i < tx.vin.size(); i++) { @@ -133,7 +135,8 @@ BOOST_AUTO_TEST_CASE(tx_invalid) CTransaction tx; stream >> tx; - fValid = tx.CheckTransaction(); + CValidationState state; + fValid = tx.CheckTransaction(state) && state.IsValid(); for (unsigned int i = 0; i < tx.vin.size() && fValid; i++) { @@ -159,11 +162,12 @@ BOOST_AUTO_TEST_CASE(basic_transaction_tests) CDataStream stream(vch, SER_DISK, CLIENT_VERSION); CTransaction tx; stream >> tx; - BOOST_CHECK_MESSAGE(tx.CheckTransaction(), "Simple deserialized transaction should be valid."); + CValidationState state; + BOOST_CHECK_MESSAGE(tx.CheckTransaction(state) && state.IsValid(), "Simple deserialized transaction should be valid."); // Check that duplicate txins fail tx.vin.push_back(tx.vin[0]); - BOOST_CHECK_MESSAGE(!tx.CheckTransaction(), "Transaction with duplicate txins should be invalid."); + BOOST_CHECK_MESSAGE(!tx.CheckTransaction(state) || !state.IsValid(), "Transaction with duplicate txins should be invalid."); } // |