aboutsummaryrefslogtreecommitdiffstats
path: root/SolidityParser.cpp
diff options
context:
space:
mode:
authorGav Wood <g@ethdev.com>2015-02-05 00:48:12 +0800
committerGav Wood <g@ethdev.com>2015-02-05 00:48:12 +0800
commit458e65f3cb74dc112e11616e4860bafa7ad07149 (patch)
treecb33b547625d6ddacfdebb42cf265bca1432082d /SolidityParser.cpp
parentd5e876c10630d46900b5170d770503f3a539da12 (diff)
parentbade3d98e91fe3e3a20dafba61a975a5638554b7 (diff)
downloaddexon-solidity-458e65f3cb74dc112e11616e4860bafa7ad07149.tar
dexon-solidity-458e65f3cb74dc112e11616e4860bafa7ad07149.tar.gz
dexon-solidity-458e65f3cb74dc112e11616e4860bafa7ad07149.tar.bz2
dexon-solidity-458e65f3cb74dc112e11616e4860bafa7ad07149.tar.lz
dexon-solidity-458e65f3cb74dc112e11616e4860bafa7ad07149.tar.xz
dexon-solidity-458e65f3cb74dc112e11616e4860bafa7ad07149.tar.zst
dexon-solidity-458e65f3cb74dc112e11616e4860bafa7ad07149.zip
Merge pull request #948 from guanqun/add-some-tests-for-named-args
Add some tests for named args
Diffstat (limited to 'SolidityParser.cpp')
-rw-r--r--SolidityParser.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/SolidityParser.cpp b/SolidityParser.cpp
index 4ccdcd57..9ba38a4a 100644
--- a/SolidityParser.cpp
+++ b/SolidityParser.cpp
@@ -124,6 +124,24 @@ BOOST_AUTO_TEST_CASE(single_function_param)
BOOST_CHECK_NO_THROW(parseText(text));
}
+BOOST_AUTO_TEST_CASE(missing_parameter_name_in_named_args)
+{
+ char const* text = "contract test {\n"
+ " function a(uint a, uint b, uint c) returns (uint r) { r = a * 100 + b * 10 + c * 1; }\n"
+ " function b() returns (uint r) { r = a({: 1, : 2, : 3}); }\n"
+ "}\n";
+ BOOST_CHECK_THROW(parseText(text), ParserError);
+}
+
+BOOST_AUTO_TEST_CASE(missing_argument_in_named_args)
+{
+ char const* text = "contract test {\n"
+ " function a(uint a, uint b, uint c) returns (uint r) { r = a * 100 + b * 10 + c * 1; }\n"
+ " function b() returns (uint r) { r = a({a: , b: , c: }); }\n"
+ "}\n";
+ BOOST_CHECK_THROW(parseText(text), ParserError);
+}
+
BOOST_AUTO_TEST_CASE(function_natspec_documentation)
{
ASTPointer<ContractDefinition> contract;