diff options
author | Marek Kotewicz <marek.kotewicz@gmail.com> | 2015-03-30 20:02:27 +0800 |
---|---|---|
committer | Marek Kotewicz <marek.kotewicz@gmail.com> | 2015-03-30 20:02:27 +0800 |
commit | 0f416747ad3492aaab2b3a61d380579410753727 (patch) | |
tree | 20675f21b0e35ef459d27c9e5b1ece9021326473 /ClientBase.cpp | |
parent | 735c02c468de32b4f91c59794039b67ab29a8170 (diff) | |
download | dexon-solidity-0f416747ad3492aaab2b3a61d380579410753727.tar dexon-solidity-0f416747ad3492aaab2b3a61d380579410753727.tar.gz dexon-solidity-0f416747ad3492aaab2b3a61d380579410753727.tar.bz2 dexon-solidity-0f416747ad3492aaab2b3a61d380579410753727.tar.lz dexon-solidity-0f416747ad3492aaab2b3a61d380579410753727.tar.xz dexon-solidity-0f416747ad3492aaab2b3a61d380579410753727.tar.zst dexon-solidity-0f416747ad3492aaab2b3a61d380579410753727.zip |
failing tests for getting genesis block
Diffstat (limited to 'ClientBase.cpp')
-rw-r--r-- | ClientBase.cpp | 37 |
1 files changed, 24 insertions, 13 deletions
diff --git a/ClientBase.cpp b/ClientBase.cpp index 2197ac83..304182cf 100644 --- a/ClientBase.cpp +++ b/ClientBase.cpp @@ -34,34 +34,45 @@ BOOST_AUTO_TEST_CASE(blocks) { enumerateClients([](Json::Value const& _json, dev::eth::ClientBase& _client) -> void { - for (string const& name: _json["postState"].getMemberNames()) + auto compareState = [&_client](Json::Value const& _o, string const& _name, BlockNumber _blockNumber) -> void { - Json::Value o = _json["postState"][name]; - Address address(name); + Address address(_name); // balanceAt - u256 expectedBalance = u256(o["balance"].asString()); - u256 balance = _client.balanceAt(address); + u256 expectedBalance = u256(_o["balance"].asString()); + u256 balance = _client.balanceAt(address, _blockNumber); ETH_CHECK_EQUAL(expectedBalance, balance); // countAt - u256 expectedCount = u256(o["nonce"].asString()); - u256 count = _client.countAt(address); + u256 expectedCount = u256(_o["nonce"].asString()); + u256 count = _client.countAt(address, _blockNumber); ETH_CHECK_EQUAL(expectedCount, count); // stateAt - for (string const& pos: o["storage"].getMemberNames()) + for (string const& pos: _o["storage"].getMemberNames()) { - u256 expectedState = u256(o["storage"][pos].asString()); - u256 state = _client.stateAt(address, u256(pos)); + u256 expectedState = u256(_o["storage"][pos].asString()); + u256 state = _client.stateAt(address, u256(pos), _blockNumber); ETH_CHECK_EQUAL(expectedState, state); } // codeAt - bytes expectedCode = fromHex(o["code"].asString()); - bytes code = _client.codeAt(address); + bytes expectedCode = fromHex(_o["code"].asString()); + bytes code = _client.codeAt(address, _blockNumber); ETH_CHECK_EQUAL_COLLECTIONS(expectedCode.begin(), expectedCode.end(), - code.begin(), code.end()); + code.begin(), code.end()); + }; + + for (string const& name: _json["postState"].getMemberNames()) + { + Json::Value o = _json["postState"][name]; + compareState(o, name, PendingBlock); + } + + for (string const& name: _json["pre"].getMemberNames()) + { + Json::Value o = _json["pre"][name]; + compareState(o, name, 0); } // number |