aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Beregszaszi <alex@rtfs.hu>2017-08-24 06:57:04 +0800
committerGitHub <noreply@github.com>2017-08-24 06:57:04 +0800
commitee8fa886cc0fa39ae9c41e9685a576166362906c (patch)
tree1beb19877573aee6bd7acf56d2145dbb398eb605
parente7832eccf4031c7157009c3912e4c076d8a683ff (diff)
parenta0d515c1a7bf99db88655e4b727936170f917baf (diff)
downloaddexon-solidity-ee8fa886cc0fa39ae9c41e9685a576166362906c.tar
dexon-solidity-ee8fa886cc0fa39ae9c41e9685a576166362906c.tar.gz
dexon-solidity-ee8fa886cc0fa39ae9c41e9685a576166362906c.tar.bz2
dexon-solidity-ee8fa886cc0fa39ae9c41e9685a576166362906c.tar.lz
dexon-solidity-ee8fa886cc0fa39ae9c41e9685a576166362906c.tar.xz
dexon-solidity-ee8fa886cc0fa39ae9c41e9685a576166362906c.tar.zst
dexon-solidity-ee8fa886cc0fa39ae9c41e9685a576166362906c.zip
Merge pull request #2782 from ethereum/externalTests
Add external tests.
-rwxr-xr-xscripts/test_emscripten.sh5
-rwxr-xr-xtest/externalTests.sh49
2 files changed, 53 insertions, 1 deletions
diff --git a/scripts/test_emscripten.sh b/scripts/test_emscripten.sh
index a2dbe61c..f1d44a1f 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
@@ -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 00000000..1b74561b
--- /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 <http://www.gnu.org/licenses/>
+#
+# (c) 2016 solidity contributors.
+#------------------------------------------------------------------------------
+
+set -e
+
+if [ ! -f "$1" ]
+then
+ echo "Usage: $0 <path to soljson.js>"
+ 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"