Unify json and non-json commandline tests.

This commit is contained in:
chriseth 2018-12-20 12:32:53 +01:00
parent b18c8a60ff
commit 6e626ad955

View File

@ -215,31 +215,27 @@ printTask "Testing passing empty remappings..."
test_solc_behaviour "${0}" "=/some/remapping/target" "" "" 1 "Invalid remapping: \"=/some/remapping/target\"."
test_solc_behaviour "${0}" "ctx:=/some/remapping/target" "" "" 1 "Invalid remapping: \"ctx:=/some/remapping/target\"."
printTask "Running standard JSON commandline tests..."
(
cd "$REPO_ROOT"/test/cmdlineTests/standard_json/
for tdir in */
do
stdin="${tdir}/input.json"
stdout=$(cat ${tdir}/output.json 2>/dev/null || true)
exitCode=$(cat ${tdir}/exit 2>/dev/null || true)
err=$(cat ${tdir}/err 2>/dev/null || true)
printTask " - ${tdir}"
test_solc_behaviour "" "--standard-json" "$stdin" "$stdout" "$exitCode" "$err"
done
)
printTask "Running general commandline tests..."
(
cd "$REPO_ROOT"/test/cmdlineTests/regular_sol
cd "$REPO_ROOT"/test/cmdlineTests/
for tdir in */
do
args=$(cat ${tdir}/args 2>/dev/null || true)
stdout=$(cat ${tdir}/output 2>/dev/null || true)
if [ -e "${tdir}/input.json" ]
then
inputFile=""
stdin="${tdir}/input.json"
stdout=$(cat ${tdir}/output.json 2>/dev/null || true)
args="--standard-json "$(cat ${tdir}/args 2>/dev/null || true)
else
inputFile="${tdir}input.sol"
stdin=""
stdout=$(cat ${tdir}/output 2>/dev/null || true)
args=$(cat ${tdir}/args 2>/dev/null || true)
fi
exitCode=$(cat ${tdir}/exit 2>/dev/null || true)
err=$(cat ${tdir}/err 2>/dev/null || true)
printTask " - ${tdir}"
test_solc_behaviour "${tdir}contracts.sol" "$args" "" "$stdout" "$exitCode" "$err"
test_solc_behaviour "$inputFile" "$args" "$stdin" "$stdout" "$exitCode" "$err"
done
)