aboutsummaryrefslogtreecommitdiffstats
path: root/TestHelper.cpp
diff options
context:
space:
mode:
authorCJentzsch <jentzsch.software@gmail.com>2015-05-19 22:46:00 +0800
committerCJentzsch <jentzsch.software@gmail.com>2015-05-19 22:46:00 +0800
commitaefd0e9ca5971b1cd307602cc85db3788dcf648d (patch)
treee6eca42d9bfa2cec2ac33a85a9a41ebea453f8ff /TestHelper.cpp
parent8512e30f0ac9193c21d1ce70409426a469ff395a (diff)
downloaddexon-solidity-aefd0e9ca5971b1cd307602cc85db3788dcf648d.tar.gz
dexon-solidity-aefd0e9ca5971b1cd307602cc85db3788dcf648d.tar.zst
dexon-solidity-aefd0e9ca5971b1cd307602cc85db3788dcf648d.zip
handle output larger than 4069 bytes in test
Diffstat (limited to 'TestHelper.cpp')
-rw-r--r--TestHelper.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/TestHelper.cpp b/TestHelper.cpp
index aada8304..476d1ecf 100644
--- a/TestHelper.cpp
+++ b/TestHelper.cpp
@@ -327,7 +327,8 @@ void ImportTest::checkExpectedState(State const& _stateExpect, State const& _sta
void ImportTest::exportTest(bytes const& _output, State const& _statePost)
{
// export output
- m_TestObject["out"] = toHex(_output, 2, HexPrefix::Add);
+
+ m_TestObject["out"] = _output.size() > 4096 ? "#" + toString(_output.size()) : toHex(_output, 2, HexPrefix::Add);
// export logs
m_TestObject["logs"] = exportLog(_statePost.pending().size() ? _statePost.log(0) : LogEntries());
@@ -489,7 +490,11 @@ LogEntries importLog(json_spirit::mArray& _a)
void checkOutput(bytes const& _output, json_spirit::mObject& _o)
{
int j = 0;
- if (_o["out"].type() == json_spirit::array_type)
+
+ if (_o["out"].get_str().find("#") == 0)
+ BOOST_CHECK((u256)_output.size() == toInt(_o["out"].get_str().substr(1)));
+
+ else if (_o["out"].type() == json_spirit::array_type)
for (auto const& d: _o["out"].get_array())
{
BOOST_CHECK_MESSAGE(_output[j] == toInt(d), "Output byte [" << j << "] different!");