mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
fix callcreates imoport
This commit is contained in:
parent
22d738b995
commit
108388c440
@ -350,6 +350,19 @@ void checkLog(LogEntries _resultLogs, LogEntries _expectedLogs)
|
||||
}
|
||||
}
|
||||
|
||||
void checkCallCreates(eth::Transactions _resultCallCreates, eth::Transactions _expectedCallCreates)
|
||||
{
|
||||
BOOST_REQUIRE_EQUAL(_resultCallCreates.size(), _expectedCallCreates.size());
|
||||
|
||||
for (size_t i = 0; i < _resultCallCreates.size(); ++i)
|
||||
{
|
||||
BOOST_CHECK(_resultCallCreates[i].data() == _expectedCallCreates[i].data());
|
||||
BOOST_CHECK(_resultCallCreates[i].receiveAddress() == _expectedCallCreates[i].receiveAddress());
|
||||
BOOST_CHECK(_resultCallCreates[i].gas() == _expectedCallCreates[i].gas());
|
||||
BOOST_CHECK(_resultCallCreates[i].value() == _expectedCallCreates[i].value());
|
||||
}
|
||||
}
|
||||
|
||||
std::string getTestPath()
|
||||
{
|
||||
string testPath;
|
||||
|
@ -73,6 +73,8 @@ json_spirit::mArray exportLog(eth::LogEntries _logs);
|
||||
void checkOutput(bytes const& _output, json_spirit::mObject& _o);
|
||||
void checkStorage(std::map<u256, u256> _expectedStore, std::map<u256, u256> _resultStore, Address _expectedAddr);
|
||||
void checkLog(eth::LogEntries _resultLogs, eth::LogEntries _expectedLogs);
|
||||
void checkCallCreates(eth::Transactions _resultCallCreates, eth::Transactions _expectedCallCreates);
|
||||
|
||||
void executeTests(const std::string& _name, const std::string& _testPathAppendix, std::function<void(json_spirit::mValue&, bool)> doTests);
|
||||
std::string getTestPath();
|
||||
void userDefinedTest(std::string testTypeFlag, std::function<void(json_spirit::mValue&, bool)> doTests);
|
||||
|
7
vm.cpp
7
vm.cpp
@ -237,8 +237,8 @@ void FakeExtVM::importCallCreates(mArray& _callcreates)
|
||||
BOOST_REQUIRE(tx.count("destination") > 0);
|
||||
BOOST_REQUIRE(tx.count("gasLimit") > 0);
|
||||
Transaction t = tx["destination"].get_str().empty() ?
|
||||
Transaction(toInt(tx["value"]), 0, toInt(tx["gasLimit"]), data.toBytes()) :
|
||||
Transaction(toInt(tx["value"]), 0, toInt(tx["gasLimit"]), Address(tx["destination"].get_str()), data.toBytes());
|
||||
Transaction(toInt(tx["value"]), 0, toInt(tx["gasLimit"]), fromHex(tx["data"].get_str())) :
|
||||
Transaction(toInt(tx["value"]), 0, toInt(tx["gasLimit"]), Address(tx["destination"].get_str()), fromHex(tx["data"].get_str()));
|
||||
callcreates.push_back(t);
|
||||
}
|
||||
}
|
||||
@ -448,7 +448,8 @@ void doVMTests(json_spirit::mValue& v, bool _fillin)
|
||||
}
|
||||
|
||||
checkAddresses<std::map<Address, std::tuple<u256, u256, std::map<u256, u256>, bytes> > >(test.addresses, fev.addresses);
|
||||
BOOST_CHECK(test.callcreates == fev.callcreates);
|
||||
|
||||
checkCallCreates(fev.callcreates, test.callcreates);
|
||||
|
||||
checkLog(fev.sub.logs, test.sub.logs);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user