From e8d1658b583878bce1858d6dd748e83ce1450967 Mon Sep 17 00:00:00 2001 From: chriseth Date: Wed, 23 Aug 2017 14:21:15 +0200 Subject: [PATCH 1/2] Add external tests. --- scripts/test_emscripten.sh | 3 +++ test/externalTests.sh | 49 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100755 test/externalTests.sh diff --git a/scripts/test_emscripten.sh b/scripts/test_emscripten.sh index a2dbe61cf..f6846f1c5 100755 --- a/scripts/test_emscripten.sh +++ b/scripts/test_emscripten.sh @@ -51,3 +51,6 @@ npm version $VERSION echo "Running solc-js tests..." npm run test + +echo "Running external tests...." +"$REPO_ROOT"/test/externalTests.sh "$REPO_ROOT"/build/solc/soljson.js diff --git a/test/externalTests.sh b/test/externalTests.sh new file mode 100755 index 000000000..1b74561b7 --- /dev/null +++ b/test/externalTests.sh @@ -0,0 +1,49 @@ +#!/usr/bin/env bash + +#------------------------------------------------------------------------------ +# Bash script to run external Solidity tests. +# +# Argument: Path to soljson.js to test. +# +# Requires npm, networking access and git to download the tests. +# +# ------------------------------------------------------------------------------ +# This file is part of solidity. +# +# solidity is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# solidity is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with solidity. If not, see +# +# (c) 2016 solidity contributors. +#------------------------------------------------------------------------------ + +set -e + +if [ ! -f "$1" ] +then + echo "Usage: $0 " + exit 1 +fi + +SOLJSON="$1" + +DIR=$(mktemp -d) +( + cd "$DIR" + echo "Running Zeppelin tests..." + git clone https://github.com/OpenZeppelin/zeppelin-solidity.git + cd zeppelin-solidity + npm install + cp "$SOLJSON" ./node_modules/solc/soljson.js + npm run test +) +rm -rf "$DIR" From a0d515c1a7bf99db88655e4b727936170f917baf Mon Sep 17 00:00:00 2001 From: Alex Beregszaszi Date: Wed, 23 Aug 2017 21:54:22 +0100 Subject: [PATCH 2/2] Keep REPO_ROOT as absolute path --- scripts/test_emscripten.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/test_emscripten.sh b/scripts/test_emscripten.sh index f6846f1c5..f1d44a1fa 100755 --- a/scripts/test_emscripten.sh +++ b/scripts/test_emscripten.sh @@ -28,7 +28,7 @@ set -e -REPO_ROOT="$(dirname "$0")"/.. +REPO_ROOT=$(cd $(dirname "$0")/.. && pwd) cd $REPO_ROOT/build