only check rootHash of state if FATDB is off

This commit is contained in:
CJentzsch 2015-03-02 20:45:42 +01:00
parent 28dbaf3478
commit 8e46c888eb

View File

@ -71,7 +71,13 @@ void doStateTests(json_spirit::mValue& v, bool _fillin)
}
if (_fillin)
{
#if ETH_FATDB
importer.exportTest(output, theState);
#else
BOOST_THROW_EXCEPTION(Exception() << errinfo_comment("You can not fill tests when FATDB is switched off"));
#endif
}
else
{
BOOST_REQUIRE(o.count("post") > 0);
@ -84,6 +90,8 @@ void doStateTests(json_spirit::mValue& v, bool _fillin)
checkLog(theState.pending().size() ? theState.log(0) : LogEntries(), importer.m_environment.sub.logs);
// check addresses
#if ETH_FATDB
cout << "fatDB is defined\n";
auto expectedAddrs = importer.m_statePost.addresses();
auto resultAddrs = theState.addresses();
for (auto& expectedPair : expectedAddrs)
@ -102,6 +110,8 @@ void doStateTests(json_spirit::mValue& v, bool _fillin)
}
}
checkAddresses<map<Address, u256> >(expectedAddrs, resultAddrs);
#endif
BOOST_CHECK_MESSAGE(theState.rootHash() == h256(o["postStateRoot"].get_str()), "wrong post state root");
}
}
}