mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge pull request #4695 from ethereum/test-natspec
Be explicit about which contract to test for in the Natspec tests
This commit is contained in:
commit
9d3827266c
@ -41,6 +41,7 @@ public:
|
|||||||
|
|
||||||
void checkNatspec(
|
void checkNatspec(
|
||||||
std::string const& _code,
|
std::string const& _code,
|
||||||
|
std::string const& _contractName,
|
||||||
std::string const& _expectedDocumentationString,
|
std::string const& _expectedDocumentationString,
|
||||||
bool _userDocumentation
|
bool _userDocumentation
|
||||||
)
|
)
|
||||||
@ -52,9 +53,9 @@ public:
|
|||||||
|
|
||||||
Json::Value generatedDocumentation;
|
Json::Value generatedDocumentation;
|
||||||
if (_userDocumentation)
|
if (_userDocumentation)
|
||||||
generatedDocumentation = m_compilerStack.natspecUser(m_compilerStack.lastContractName());
|
generatedDocumentation = m_compilerStack.natspecUser(_contractName);
|
||||||
else
|
else
|
||||||
generatedDocumentation = m_compilerStack.natspecDev(m_compilerStack.lastContractName());
|
generatedDocumentation = m_compilerStack.natspecDev(_contractName);
|
||||||
Json::Value expectedDocumentation;
|
Json::Value expectedDocumentation;
|
||||||
jsonParseStrict(_expectedDocumentationString, expectedDocumentation);
|
jsonParseStrict(_expectedDocumentationString, expectedDocumentation);
|
||||||
BOOST_CHECK_MESSAGE(
|
BOOST_CHECK_MESSAGE(
|
||||||
@ -93,7 +94,7 @@ BOOST_AUTO_TEST_CASE(user_basic_test)
|
|||||||
" \"mul(uint256)\":{ \"notice\": \"Multiplies `a` by 7\"}"
|
" \"mul(uint256)\":{ \"notice\": \"Multiplies `a` by 7\"}"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, true);
|
checkNatspec(sourceCode, "test", natspec, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_and_user_basic_test)
|
BOOST_AUTO_TEST_CASE(dev_and_user_basic_test)
|
||||||
@ -119,8 +120,8 @@ BOOST_AUTO_TEST_CASE(dev_and_user_basic_test)
|
|||||||
" \"mul(uint256)\":{ \"notice\": \"Multiplies `a` by 7\"}"
|
" \"mul(uint256)\":{ \"notice\": \"Multiplies `a` by 7\"}"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, devNatspec, false);
|
checkNatspec(sourceCode, "test", devNatspec, false);
|
||||||
checkNatspec(sourceCode, userNatspec, true);
|
checkNatspec(sourceCode, "test", userNatspec, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(user_multiline_comment)
|
BOOST_AUTO_TEST_CASE(user_multiline_comment)
|
||||||
@ -140,7 +141,7 @@ BOOST_AUTO_TEST_CASE(user_multiline_comment)
|
|||||||
" \"mul_and_add(uint256,uint256)\":{ \"notice\": \"Multiplies `a` by 7 and then adds `b`\"}"
|
" \"mul_and_add(uint256,uint256)\":{ \"notice\": \"Multiplies `a` by 7 and then adds `b`\"}"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, true);
|
checkNatspec(sourceCode, "test", natspec, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(user_multiple_functions)
|
BOOST_AUTO_TEST_CASE(user_multiple_functions)
|
||||||
@ -171,7 +172,7 @@ BOOST_AUTO_TEST_CASE(user_multiple_functions)
|
|||||||
" \"sub(int256)\":{ \"notice\": \"Subtracts 3 from `input`\"}"
|
" \"sub(int256)\":{ \"notice\": \"Subtracts 3 from `input`\"}"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, true);
|
checkNatspec(sourceCode, "test", natspec, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(user_empty_contract)
|
BOOST_AUTO_TEST_CASE(user_empty_contract)
|
||||||
@ -182,7 +183,7 @@ BOOST_AUTO_TEST_CASE(user_empty_contract)
|
|||||||
|
|
||||||
char const* natspec = "{\"methods\":{} }";
|
char const* natspec = "{\"methods\":{} }";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, true);
|
checkNatspec(sourceCode, "test", natspec, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_and_user_no_doc)
|
BOOST_AUTO_TEST_CASE(dev_and_user_no_doc)
|
||||||
@ -201,8 +202,8 @@ BOOST_AUTO_TEST_CASE(dev_and_user_no_doc)
|
|||||||
char const* devNatspec = "{\"methods\":{}}";
|
char const* devNatspec = "{\"methods\":{}}";
|
||||||
char const* userNatspec = "{\"methods\":{}}";
|
char const* userNatspec = "{\"methods\":{}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, devNatspec, false);
|
checkNatspec(sourceCode, "test", devNatspec, false);
|
||||||
checkNatspec(sourceCode, userNatspec, true);
|
checkNatspec(sourceCode, "test", userNatspec, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_desc_after_nl)
|
BOOST_AUTO_TEST_CASE(dev_desc_after_nl)
|
||||||
@ -228,7 +229,7 @@ BOOST_AUTO_TEST_CASE(dev_desc_after_nl)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_multiple_params)
|
BOOST_AUTO_TEST_CASE(dev_multiple_params)
|
||||||
@ -253,7 +254,7 @@ BOOST_AUTO_TEST_CASE(dev_multiple_params)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_multiple_params_mixed_whitespace)
|
BOOST_AUTO_TEST_CASE(dev_multiple_params_mixed_whitespace)
|
||||||
@ -276,7 +277,7 @@ BOOST_AUTO_TEST_CASE(dev_multiple_params_mixed_whitespace)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_mutiline_param_description)
|
BOOST_AUTO_TEST_CASE(dev_mutiline_param_description)
|
||||||
@ -302,7 +303,7 @@ BOOST_AUTO_TEST_CASE(dev_mutiline_param_description)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_multiple_functions)
|
BOOST_AUTO_TEST_CASE(dev_multiple_functions)
|
||||||
@ -353,7 +354,7 @@ BOOST_AUTO_TEST_CASE(dev_multiple_functions)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_return)
|
BOOST_AUTO_TEST_CASE(dev_return)
|
||||||
@ -381,7 +382,7 @@ BOOST_AUTO_TEST_CASE(dev_return)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
BOOST_AUTO_TEST_CASE(dev_return_desc_after_nl)
|
BOOST_AUTO_TEST_CASE(dev_return_desc_after_nl)
|
||||||
{
|
{
|
||||||
@ -411,7 +412,7 @@ BOOST_AUTO_TEST_CASE(dev_return_desc_after_nl)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -443,7 +444,7 @@ BOOST_AUTO_TEST_CASE(dev_multiline_return)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_multiline_comment)
|
BOOST_AUTO_TEST_CASE(dev_multiline_comment)
|
||||||
@ -476,7 +477,7 @@ BOOST_AUTO_TEST_CASE(dev_multiline_comment)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}}";
|
"}}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_contract_no_doc)
|
BOOST_AUTO_TEST_CASE(dev_contract_no_doc)
|
||||||
@ -496,7 +497,7 @@ BOOST_AUTO_TEST_CASE(dev_contract_no_doc)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}";
|
"}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_contract_doc)
|
BOOST_AUTO_TEST_CASE(dev_contract_doc)
|
||||||
@ -520,7 +521,7 @@ BOOST_AUTO_TEST_CASE(dev_contract_doc)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}";
|
"}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_author_at_function)
|
BOOST_AUTO_TEST_CASE(dev_author_at_function)
|
||||||
@ -546,7 +547,7 @@ BOOST_AUTO_TEST_CASE(dev_author_at_function)
|
|||||||
" }\n"
|
" }\n"
|
||||||
"}";
|
"}";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, false);
|
checkNatspec(sourceCode, "test", natspec, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(natspec_notice_without_tag)
|
BOOST_AUTO_TEST_CASE(natspec_notice_without_tag)
|
||||||
@ -569,7 +570,7 @@ BOOST_AUTO_TEST_CASE(natspec_notice_without_tag)
|
|||||||
}
|
}
|
||||||
)ABCDEF";
|
)ABCDEF";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, true);
|
checkNatspec(sourceCode, "test", natspec, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(natspec_multiline_notice_without_tag)
|
BOOST_AUTO_TEST_CASE(natspec_multiline_notice_without_tag)
|
||||||
@ -592,7 +593,7 @@ BOOST_AUTO_TEST_CASE(natspec_multiline_notice_without_tag)
|
|||||||
}
|
}
|
||||||
)ABCDEF";
|
)ABCDEF";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, true);
|
checkNatspec(sourceCode, "test", natspec, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(empty_comment)
|
BOOST_AUTO_TEST_CASE(empty_comment)
|
||||||
@ -608,7 +609,7 @@ BOOST_AUTO_TEST_CASE(empty_comment)
|
|||||||
}
|
}
|
||||||
)ABCDEF";
|
)ABCDEF";
|
||||||
|
|
||||||
checkNatspec(sourceCode, natspec, true);
|
checkNatspec(sourceCode, "test", natspec, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
BOOST_AUTO_TEST_CASE(dev_title_at_function_error)
|
BOOST_AUTO_TEST_CASE(dev_title_at_function_error)
|
||||||
|
Loading…
Reference in New Issue
Block a user