had to up the gasLimit in test.sh to avoid an out of gas error when deploying the scripts
66 lines
2.3 KiB
Bash
Executable File
66 lines
2.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Exit script as soon as a command fails.
|
|
set -o errexit
|
|
|
|
# Executes cleanup function at script exit.
|
|
trap cleanup EXIT
|
|
|
|
cleanup() {
|
|
# Kill the testrpc instance that we started (if we started one and if it's still running).
|
|
if [ -n "$testrpc_pid" ] && ps -p $testrpc_pid > /dev/null; then
|
|
kill -9 $testrpc_pid
|
|
fi
|
|
}
|
|
|
|
if [ "$SOLIDITY_COVERAGE" = true ]; then
|
|
testrpc_port=8555
|
|
else
|
|
testrpc_port=8545
|
|
fi
|
|
|
|
testrpc_running() {
|
|
nc -z localhost "$testrpc_port"
|
|
}
|
|
|
|
start_testrpc() {
|
|
# We define 10 accounts with balance 1M ether, needed for high-value tests.
|
|
local accounts=(
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501200,1000000000000000000000000"
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501201,1000000000000000000000000"
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501202,1000000000000000000000000"
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501203,1000000000000000000000000"
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501204,1000000000000000000000000"
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501205,1000000000000000000000000"
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501206,1000000000000000000000000"
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501207,1000000000000000000000000"
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501208,1000000000000000000000000"
|
|
--account="0x2bdd21761a483f71054e14f5b827213567971c676928d9a1808cbfa4b7501209,1000000000000000000000000"
|
|
)
|
|
|
|
if [ "$SOLIDITY_COVERAGE" = true ]; then
|
|
node_modules/.bin/testrpc-sc --gasLimit 0xfffffffffff --port "$testrpc_port" "${accounts[@]}" > /dev/null &
|
|
else
|
|
node_modules/.bin/testrpc --gasLimit 0xfffffffffff "${accounts[@]}" > /dev/null &
|
|
fi
|
|
|
|
testrpc_pid=$!
|
|
}
|
|
|
|
if testrpc_running; then
|
|
echo "Using existing testrpc instance"
|
|
else
|
|
echo "Starting our own testrpc instance"
|
|
start_testrpc
|
|
fi
|
|
|
|
if [ "$SOLIDITY_COVERAGE" = true ]; then
|
|
node_modules/.bin/solidity-coverage
|
|
|
|
if [ "$CONTINUOUS_INTEGRATION" = true ]; then
|
|
cat coverage/lcov.info | node_modules/.bin/coveralls
|
|
fi
|
|
else
|
|
node_modules/.bin/truffle test "$@"
|
|
fi
|