|
@@ -1,12 +1,24 @@
|
|
|
-#! /bin/bash
|
|
|
+#!/bin/bash
|
|
|
|
|
|
-
|
|
|
+# Executes cleanup function at script exit.
|
|
|
+trap cleanup EXIT
|
|
|
|
|
|
-output=$(nc -z localhost 8555; echo $?)
|
|
|
-[ $output -eq "0" ] && trpc_running=true
|
|
|
-if [ ! $trpc_running ]; then
|
|
|
+cleanup() {
|
|
|
+ # Kill the testrpc instance that we started (if we started one).
|
|
|
+ if [ -n "$testrpc_pid" ]; then
|
|
|
+ kill -9 $testrpc_pid
|
|
|
+ fi
|
|
|
+}
|
|
|
+
|
|
|
+testrpc_running() {
|
|
|
+ nc -z localhost 8555
|
|
|
+}
|
|
|
+
|
|
|
+if testrpc_running; then
|
|
|
+ echo "Using existing testrpc-sc instance"
|
|
|
+else
|
|
|
echo "Starting testrpc-sc to generate coverage"
|
|
|
- # we give each account 1M ether, needed for high-value tests
|
|
|
+ # We define 10 accounts with balance 1M ether, needed for high-value tests.
|
|
|
./node_modules/ethereumjs-testrpc-sc/bin/testrpc --gasLimit 0xfffffffffff --port 8555 \
|
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501200,1000000000000000000000000" \
|
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501201,1000000000000000000000000" \
|
|
@@ -19,7 +31,7 @@ if [ ! $trpc_running ]; then
|
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501208,1000000000000000000000000" \
|
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501209,1000000000000000000000000" \
|
|
|
> /dev/null &
|
|
|
- trpc_pid=$!
|
|
|
+ testrpc_pid=$!
|
|
|
fi
|
|
|
-SOLIDITY_COVERAGE=true && ./node_modules/.bin/solidity-coverage
|
|
|
|
|
|
+SOLIDITY_COVERAGE=true ./node_modules/.bin/solidity-coverage
|