diff options
author | chriseth <chris@ethereum.org> | 2017-09-28 16:59:15 +0800 |
---|---|---|
committer | chriseth <chris@ethereum.org> | 2017-09-29 18:05:45 +0800 |
commit | 08effa0af54647971415cb66dc9181afad9642ee (patch) | |
tree | 84b91fd8fa32a40da6715f09806116c09976b028 /test/libsolidity/AnalysisFramework.h | |
parent | 9d8edb46f24517dc5a0dbc0b496caad75cf39ca3 (diff) | |
download | dexon-solidity-08effa0af54647971415cb66dc9181afad9642ee.tar.gz dexon-solidity-08effa0af54647971415cb66dc9181afad9642ee.tar.zst dexon-solidity-08effa0af54647971415cb66dc9181afad9642ee.zip |
More verbose error messages.
Diffstat (limited to 'test/libsolidity/AnalysisFramework.h')
-rw-r--r-- | test/libsolidity/AnalysisFramework.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/test/libsolidity/AnalysisFramework.h b/test/libsolidity/AnalysisFramework.h index 07e28f2b..a566ba1d 100644 --- a/test/libsolidity/AnalysisFramework.h +++ b/test/libsolidity/AnalysisFramework.h @@ -57,7 +57,8 @@ protected: bool success(std::string const& _source); Error expectError(std::string const& _source, bool _warning = false, bool _allowMultiple = false); - void printErrors(); + std::string formatErrors(); + std::string formatError(Error const& _error); static ContractDefinition const* retrieveContractByName(SourceUnit const& _source, std::string const& _name); static FunctionTypePointer retrieveFunctionBySignature( @@ -105,7 +106,10 @@ CHECK_ERROR_OR_WARNING(text, Warning, substring, true, true) do \ { \ auto sourceAndError = parseAnalyseAndReturnError((text), true); \ - BOOST_CHECK(sourceAndError.second == nullptr); \ + std::string message; \ + if (sourceAndError.second) \ + message = formatError(*sourceAndError.second); \ + BOOST_CHECK_MESSAGE(!sourceAndError.second, message); \ } \ while(0) |