aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2018-12-19 19:22:19 +0800
committerchriseth <chris@ethereum.org>2018-12-19 21:59:29 +0800
commit4c7151e57f90c2b0d7a47ff7d6470da54bae00f0 (patch)
treeb11479b5aed528bfb652775f326a93e6b32afbe6 /test
parent1bf396af78766cb7d61c0ea3d52915231b3407ed (diff)
downloaddexon-solidity-4c7151e57f90c2b0d7a47ff7d6470da54bae00f0.tar.gz
dexon-solidity-4c7151e57f90c2b0d7a47ff7d6470da54bae00f0.tar.zst
dexon-solidity-4c7151e57f90c2b0d7a47ff7d6470da54bae00f0.zip
Do not include empty JSON objects in output.
Diffstat (limited to 'test')
-rwxr-xr-xtest/cmdlineTests.sh2
-rw-r--r--test/cmdlineTests/standard.json.stdout2
-rw-r--r--test/cmdlineTests/standard_only_ast_requested.json.stdout2
-rw-r--r--test/libsolidity/LibSolc.cpp4
4 files changed, 6 insertions, 4 deletions
diff --git a/test/cmdlineTests.sh b/test/cmdlineTests.sh
index bb71e012..9d2ffa5f 100755
--- a/test/cmdlineTests.sh
+++ b/test/cmdlineTests.sh
@@ -132,7 +132,7 @@ test_solc_behaviour() {
if [[ "$solc_args" == *"--standard-json"* ]]; then
sed -i -e 's/{[^{]*Warning: This is a pre-release compiler version[^}]*},\{0,1\}//' "$stdout_path"
- sed -i -e 's/,"errors":\[\]//' "$stdout_path"
+ sed -i -e 's/"errors":\[\],\{0,1\}//' "$stdout_path"
else
sed -i -e '/^Warning: This is a pre-release compiler version, please do not use it in production./d' "$stderr_path"
sed -i -e 's/ Consider adding "pragma .*$//' "$stderr_path"
diff --git a/test/cmdlineTests/standard.json.stdout b/test/cmdlineTests/standard.json.stdout
index 490e1f80..59b90c8c 100644
--- a/test/cmdlineTests/standard.json.stdout
+++ b/test/cmdlineTests/standard.json.stdout
@@ -1 +1 @@
-{"contracts":{"A":{"C":{"evm":{}}}},"sources":{"A":{"id":0}}}
+{"sources":{"A":{"id":0}}}
diff --git a/test/cmdlineTests/standard_only_ast_requested.json.stdout b/test/cmdlineTests/standard_only_ast_requested.json.stdout
index f4933c4b..b884ab7d 100644
--- a/test/cmdlineTests/standard_only_ast_requested.json.stdout
+++ b/test/cmdlineTests/standard_only_ast_requested.json.stdout
@@ -1 +1 @@
-{"contracts":{"A":{"C":{"evm":{}}}},"sources":{"A":{"ast":{"absolutePath":"A","exportedSymbols":{"C":[6]},"id":7,"nodeType":"SourceUnit","nodes":[{"id":1,"literals":["solidity",">=","0.0"],"nodeType":"PragmaDirective","src":"0:22:0"},{"baseContracts":[],"contractDependencies":[],"contractKind":"contract","documentation":null,"fullyImplemented":true,"id":6,"linearizedBaseContracts":[6],"name":"C","nodeType":"ContractDefinition","nodes":[{"body":{"id":4,"nodeType":"Block","src":"61:2:0","statements":[]},"documentation":null,"id":5,"implemented":true,"kind":"function","modifiers":[],"name":"f","nodeType":"FunctionDefinition","parameters":{"id":2,"nodeType":"ParameterList","parameters":[],"src":"46:2:0"},"returnParameters":{"id":3,"nodeType":"ParameterList","parameters":[],"src":"61:0:0"},"scope":6,"src":"36:27:0","stateMutability":"pure","superFunction":null,"visibility":"public"}],"scope":7,"src":"23:42:0"}],"src":"0:65:0"},"id":0}}}
+{"sources":{"A":{"ast":{"absolutePath":"A","exportedSymbols":{"C":[6]},"id":7,"nodeType":"SourceUnit","nodes":[{"id":1,"literals":["solidity",">=","0.0"],"nodeType":"PragmaDirective","src":"0:22:0"},{"baseContracts":[],"contractDependencies":[],"contractKind":"contract","documentation":null,"fullyImplemented":true,"id":6,"linearizedBaseContracts":[6],"name":"C","nodeType":"ContractDefinition","nodes":[{"body":{"id":4,"nodeType":"Block","src":"61:2:0","statements":[]},"documentation":null,"id":5,"implemented":true,"kind":"function","modifiers":[],"name":"f","nodeType":"FunctionDefinition","parameters":{"id":2,"nodeType":"ParameterList","parameters":[],"src":"46:2:0"},"returnParameters":{"id":3,"nodeType":"ParameterList","parameters":[],"src":"61:0:0"},"scope":6,"src":"36:27:0","stateMutability":"pure","superFunction":null,"visibility":"public"}],"scope":7,"src":"23:42:0"}],"src":"0:65:0"},"id":0}}}
diff --git a/test/libsolidity/LibSolc.cpp b/test/libsolidity/LibSolc.cpp
index 09c08700..ec97f22f 100644
--- a/test/libsolidity/LibSolc.cpp
+++ b/test/libsolidity/LibSolc.cpp
@@ -81,7 +81,9 @@ BOOST_AUTO_TEST_CASE(standard_compilation)
// Only tests some assumptions. The StandardCompiler is tested properly in another suite.
BOOST_CHECK(result.isMember("sources"));
- BOOST_CHECK(result.isMember("contracts"));
+ // This used to test that it is a member, but we did not actually request any output,
+ // so there should not be a contract member.
+ BOOST_CHECK(!result.isMember("contracts"));
}
BOOST_AUTO_TEST_SUITE_END()