mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Some fixes on Types.cpp for FixedBytesType
This commit is contained in:
parent
3d0f4b0f22
commit
c89413f6ea
@ -103,7 +103,7 @@ BOOST_AUTO_TEST_CASE(single_function_param)
|
|||||||
{
|
{
|
||||||
char const* text = "contract test {\n"
|
char const* text = "contract test {\n"
|
||||||
" uint256 stateVar;\n"
|
" uint256 stateVar;\n"
|
||||||
" function functionName(bytes32 in) returns (bytes32 out) {}\n"
|
" function functionName(bytes32 input) returns (bytes32 out) {}\n"
|
||||||
"}\n";
|
"}\n";
|
||||||
ETH_TEST_CHECK_NO_THROW(parseText(text), "Parsing failed.");
|
ETH_TEST_CHECK_NO_THROW(parseText(text), "Parsing failed.");
|
||||||
}
|
}
|
||||||
@ -133,7 +133,7 @@ BOOST_AUTO_TEST_CASE(function_natspec_documentation)
|
|||||||
char const* text = "contract test {\n"
|
char const* text = "contract test {\n"
|
||||||
" uint256 stateVar;\n"
|
" uint256 stateVar;\n"
|
||||||
" /// This is a test function\n"
|
" /// This is a test function\n"
|
||||||
" function functionName(bytes32 in) returns (bytes32 out) {}\n"
|
" function functionName(bytes32 input) returns (bytes32 out) {}\n"
|
||||||
"}\n";
|
"}\n";
|
||||||
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
||||||
auto functions = contract->getDefinedFunctions();
|
auto functions = contract->getDefinedFunctions();
|
||||||
@ -148,7 +148,7 @@ BOOST_AUTO_TEST_CASE(function_normal_comments)
|
|||||||
char const* text = "contract test {\n"
|
char const* text = "contract test {\n"
|
||||||
" uint256 stateVar;\n"
|
" uint256 stateVar;\n"
|
||||||
" // We won't see this comment\n"
|
" // We won't see this comment\n"
|
||||||
" function functionName(bytes32 in) returns (bytes32 out) {}\n"
|
" function functionName(bytes32 input) returns (bytes32 out) {}\n"
|
||||||
"}\n";
|
"}\n";
|
||||||
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
||||||
auto functions = contract->getDefinedFunctions();
|
auto functions = contract->getDefinedFunctions();
|
||||||
@ -164,13 +164,13 @@ BOOST_AUTO_TEST_CASE(multiple_functions_natspec_documentation)
|
|||||||
char const* text = "contract test {\n"
|
char const* text = "contract test {\n"
|
||||||
" uint256 stateVar;\n"
|
" uint256 stateVar;\n"
|
||||||
" /// This is test function 1\n"
|
" /// This is test function 1\n"
|
||||||
" function functionName1(bytes32 in) returns (bytes32 out) {}\n"
|
" function functionName1(bytes32 input) returns (bytes32 out) {}\n"
|
||||||
" /// This is test function 2\n"
|
" /// This is test function 2\n"
|
||||||
" function functionName2(bytes32 in) returns (bytes32 out) {}\n"
|
" function functionName2(bytes32 input) returns (bytes32 out) {}\n"
|
||||||
" // nothing to see here\n"
|
" // nothing to see here\n"
|
||||||
" function functionName3(bytes32 in) returns (bytes32 out) {}\n"
|
" function functionName3(bytes32 input) returns (bytes32 out) {}\n"
|
||||||
" /// This is test function 4\n"
|
" /// This is test function 4\n"
|
||||||
" function functionName4(bytes32 in) returns (bytes32 out) {}\n"
|
" function functionName4(bytes32 input) returns (bytes32 out) {}\n"
|
||||||
"}\n";
|
"}\n";
|
||||||
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
||||||
auto functions = contract->getDefinedFunctions();
|
auto functions = contract->getDefinedFunctions();
|
||||||
@ -197,7 +197,7 @@ BOOST_AUTO_TEST_CASE(multiline_function_documentation)
|
|||||||
" uint256 stateVar;\n"
|
" uint256 stateVar;\n"
|
||||||
" /// This is a test function\n"
|
" /// This is a test function\n"
|
||||||
" /// and it has 2 lines\n"
|
" /// and it has 2 lines\n"
|
||||||
" function functionName1(bytes32 in) returns (bytes32 out) {}\n"
|
" function functionName1(bytes32 input) returns (bytes32 out) {}\n"
|
||||||
"}\n";
|
"}\n";
|
||||||
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
||||||
auto functions = contract->getDefinedFunctions();
|
auto functions = contract->getDefinedFunctions();
|
||||||
@ -218,11 +218,11 @@ BOOST_AUTO_TEST_CASE(natspec_comment_in_function_body)
|
|||||||
" /// I should not interfere with actual natspec comments\n"
|
" /// I should not interfere with actual natspec comments\n"
|
||||||
" uint256 c;\n"
|
" uint256 c;\n"
|
||||||
" mapping(address=>bytes32) d;\n"
|
" mapping(address=>bytes32) d;\n"
|
||||||
" string name = \"Solidity\";"
|
" bytes7 name = \"Solidity\";"
|
||||||
" }\n"
|
" }\n"
|
||||||
" /// This is a test function\n"
|
" /// This is a test function\n"
|
||||||
" /// and it has 2 lines\n"
|
" /// and it has 2 lines\n"
|
||||||
" function fun(bytes32 in) returns (bytes32 out) {}\n"
|
" function fun(bytes32 input) returns (bytes32 out) {}\n"
|
||||||
"}\n";
|
"}\n";
|
||||||
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
||||||
auto functions = contract->getDefinedFunctions();
|
auto functions = contract->getDefinedFunctions();
|
||||||
@ -247,7 +247,7 @@ BOOST_AUTO_TEST_CASE(natspec_docstring_between_keyword_and_signature)
|
|||||||
" /// I should not interfere with actual natspec comments\n"
|
" /// I should not interfere with actual natspec comments\n"
|
||||||
" uint256 c;\n"
|
" uint256 c;\n"
|
||||||
" mapping(address=>bytes32) d;\n"
|
" mapping(address=>bytes32) d;\n"
|
||||||
" string name = \"Solidity\";"
|
" bytes7 name = \"Solidity\";"
|
||||||
" }\n"
|
" }\n"
|
||||||
"}\n";
|
"}\n";
|
||||||
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
||||||
@ -270,7 +270,7 @@ BOOST_AUTO_TEST_CASE(natspec_docstring_after_signature)
|
|||||||
" /// I should not interfere with actual natspec comments\n"
|
" /// I should not interfere with actual natspec comments\n"
|
||||||
" uint256 c;\n"
|
" uint256 c;\n"
|
||||||
" mapping(address=>bytes32) d;\n"
|
" mapping(address=>bytes32) d;\n"
|
||||||
" string name = \"Solidity\";"
|
" bytes7 name = \"Solidity\";"
|
||||||
" }\n"
|
" }\n"
|
||||||
"}\n";
|
"}\n";
|
||||||
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
ETH_TEST_REQUIRE_NO_THROW(contract = parseText(text), "Parsing failed");
|
||||||
@ -296,7 +296,7 @@ BOOST_AUTO_TEST_CASE(struct_definition)
|
|||||||
BOOST_AUTO_TEST_CASE(mapping)
|
BOOST_AUTO_TEST_CASE(mapping)
|
||||||
{
|
{
|
||||||
char const* text = "contract test {\n"
|
char const* text = "contract test {\n"
|
||||||
" mapping(address => string) names;\n"
|
" mapping(address => bytes32) names;\n"
|
||||||
"}\n";
|
"}\n";
|
||||||
ETH_TEST_CHECK_NO_THROW(parseText(text), "Parsing failed");
|
ETH_TEST_CHECK_NO_THROW(parseText(text), "Parsing failed");
|
||||||
}
|
}
|
||||||
@ -344,7 +344,7 @@ BOOST_AUTO_TEST_CASE(variable_definition_with_initialization)
|
|||||||
" var b = 2;\n"
|
" var b = 2;\n"
|
||||||
" uint256 c = 0x87;\n"
|
" uint256 c = 0x87;\n"
|
||||||
" mapping(address=>bytes32) d;\n"
|
" mapping(address=>bytes32) d;\n"
|
||||||
" string name = \"Solidity\";"
|
" bytes7 name = \"Solidity\";"
|
||||||
" customtype varname;\n"
|
" customtype varname;\n"
|
||||||
" }\n"
|
" }\n"
|
||||||
"}\n";
|
"}\n";
|
||||||
@ -662,7 +662,7 @@ BOOST_AUTO_TEST_CASE(event_arguments)
|
|||||||
{
|
{
|
||||||
char const* text = R"(
|
char const* text = R"(
|
||||||
contract c {
|
contract c {
|
||||||
event e(uint a, string32 s);
|
event e(uint a, bytes32 s);
|
||||||
})";
|
})";
|
||||||
ETH_TEST_CHECK_NO_THROW(parseText(text), "Parsing failed");
|
ETH_TEST_CHECK_NO_THROW(parseText(text), "Parsing failed");
|
||||||
}
|
}
|
||||||
@ -671,7 +671,7 @@ BOOST_AUTO_TEST_CASE(event_arguments_indexed)
|
|||||||
{
|
{
|
||||||
char const* text = R"(
|
char const* text = R"(
|
||||||
contract c {
|
contract c {
|
||||||
event e(uint a, string32 indexed s, bool indexed b);
|
event e(uint a, bytes32 indexed s, bool indexed b);
|
||||||
})";
|
})";
|
||||||
ETH_TEST_CHECK_NO_THROW(parseText(text), "Parsing failed");
|
ETH_TEST_CHECK_NO_THROW(parseText(text), "Parsing failed");
|
||||||
}
|
}
|
||||||
@ -799,7 +799,7 @@ BOOST_AUTO_TEST_CASE(arrays_in_events)
|
|||||||
{
|
{
|
||||||
char const* text = R"(
|
char const* text = R"(
|
||||||
contract c {
|
contract c {
|
||||||
event e(uint[10] a, string7[8] indexed b, c[3] x);
|
event e(uint[10] a, bytes7[8] indexed b, c[3] x);
|
||||||
})";
|
})";
|
||||||
ETH_TEST_CHECK_NO_THROW(parseText(text), "Parsing failed");
|
ETH_TEST_CHECK_NO_THROW(parseText(text), "Parsing failed");
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user