aboutsummaryrefslogtreecommitdiffstats
path: root/test/libsolidity
diff options
context:
space:
mode:
authorchriseth <c@ethdev.com>2017-03-10 00:03:53 +0800
committerchriseth <c@ethdev.com>2017-03-14 21:21:33 +0800
commit47cd8964b8617e5c7e93232719224c8334a4c764 (patch)
treeea29137b7c499b0ddbef1e62bb8a4d401c694224 /test/libsolidity
parent9aab3b8639afa6e30e866e052a412b6f39c6ef6c (diff)
downloaddexon-solidity-47cd8964b8617e5c7e93232719224c8334a4c764.tar.gz
dexon-solidity-47cd8964b8617e5c7e93232719224c8334a4c764.tar.zst
dexon-solidity-47cd8964b8617e5c7e93232719224c8334a4c764.zip
Require and Assert.
Diffstat (limited to 'test/libsolidity')
-rw-r--r--test/libsolidity/SolidityEndToEndTest.cpp42
1 files changed, 24 insertions, 18 deletions
diff --git a/test/libsolidity/SolidityEndToEndTest.cpp b/test/libsolidity/SolidityEndToEndTest.cpp
index baed3f1e..2a286cea 100644
--- a/test/libsolidity/SolidityEndToEndTest.cpp
+++ b/test/libsolidity/SolidityEndToEndTest.cpp
@@ -9133,24 +9133,30 @@ BOOST_AUTO_TEST_CASE(invalid_instruction)
BOOST_CHECK(callContractFunction("f()") == encodeArgs());
}
-//BOOST_AUTO_TEST_CASE(assert)
-//{
-// char const* sourceCode = R"(
-// contract C {
-// function f() {
-// assert(false);
-// }
-// function g(bool val) returns (bool) {
-// assert(val == true);
-// return true;
-// }
-// }
-// )";
-// compileAndRun(sourceCode, 0, "C");
-// BOOST_CHECK(callContractFunction("f()") == encodeArgs());
-// BOOST_CHECK(callContractFunction("g(bool)", false) == encodeArgs());
-// BOOST_CHECK(callContractFunction("g(bool)", true) == encodeArgs(true));
-//}
+BOOST_AUTO_TEST_CASE(assert_require)
+{
+ char const* sourceCode = R"(
+ contract C {
+ function f() {
+ assert(false);
+ }
+ function g(bool val) returns (bool) {
+ assert(val == true);
+ return true;
+ }
+ function h(bool val) returns (bool) {
+ require(val);
+ return true;
+ }
+ }
+ )";
+ compileAndRun(sourceCode, 0, "C");
+ BOOST_CHECK(callContractFunction("f()") == encodeArgs());
+ BOOST_CHECK(callContractFunction("g(bool)", false) == encodeArgs());
+ BOOST_CHECK(callContractFunction("g(bool)", true) == encodeArgs(true));
+ BOOST_CHECK(callContractFunction("h(bool)", false) == encodeArgs());
+ BOOST_CHECK(callContractFunction("h(bool)", true) == encodeArgs(true));
+}
BOOST_AUTO_TEST_CASE(revert)
{