diff options
author | LianaHus <liana@ethdev.com> | 2015-08-24 20:24:10 +0800 |
---|---|---|
committer | LianaHus <liana@ethdev.com> | 2015-08-24 20:24:10 +0800 |
commit | 4c7777128b172e19b916afc474e54464a5f29051 (patch) | |
tree | b9476d5888cb283e84115f50691127fed9f60a6f /test/libsolidity | |
parent | ffcf18406b605afe56f545fa4a41bc3bbb870c28 (diff) | |
download | dexon-solidity-4c7777128b172e19b916afc474e54464a5f29051.tar.gz dexon-solidity-4c7777128b172e19b916afc474e54464a5f29051.tar.zst dexon-solidity-4c7777128b172e19b916afc474e54464a5f29051.zip |
added check for string as mapping key for local var.
Diffstat (limited to 'test/libsolidity')
-rw-r--r-- | test/libsolidity/SolidityEndToEndTest.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/test/libsolidity/SolidityEndToEndTest.cpp b/test/libsolidity/SolidityEndToEndTest.cpp index 3f021708..3bb12f09 100644 --- a/test/libsolidity/SolidityEndToEndTest.cpp +++ b/test/libsolidity/SolidityEndToEndTest.cpp @@ -5188,14 +5188,17 @@ BOOST_AUTO_TEST_CASE(storage_string_as_mapping_key_without_variable) char const* sourceCode = R"( contract Test { mapping(string => uint) data; - function f() returns (uint) { - data["abc"] = 2; - return data["abc"]; + function f() returns (uint r, uint rl) { + mapping(string => uint) dataLocal; + dataLocal["abc"] = 2; + rl = dataLocal["abc"]; + data["abc"] = 3; + r = data["abc"]; } } )"; compileAndRun(sourceCode, 0, "Test"); - BOOST_CHECK(callContractFunction("f()") == encodeArgs(u256(2))); + BOOST_CHECK(callContractFunction("f()") == encodeArgs(u256(3), u256(2))); } BOOST_AUTO_TEST_SUITE_END() |