43 lines
1.0 KiB
Bash
Executable File
43 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
|
|
trap cleanup EXIT
|
|
|
|
cleanup() {
|
|
if [ "$KEEP_RUNNING" != true ]; then
|
|
docker-compose -f test/docker-compose.yml down
|
|
fi
|
|
}
|
|
cleanup
|
|
|
|
ganache_running() {
|
|
nc -z localhost 8545
|
|
}
|
|
|
|
if [ "$SOLIDITY_COVERAGE" = true ]; then
|
|
node --max-old-space-size=4096 node_modules/.bin/truffle run coverage --network ganache 2>/dev/null &
|
|
pid=$!
|
|
|
|
echo "Waiting in-process ganache to launch on port 8545"
|
|
while ! ganache_running; do
|
|
sleep 0.5
|
|
done
|
|
|
|
echo "Deploy Compound protocol contracts"
|
|
PROVIDER=http://host.docker.internal:8545 docker-compose -f test/docker-compose.yml up compound || true
|
|
|
|
wait $pid
|
|
else
|
|
if ganache_running; then
|
|
echo "Using existing ganache instance"
|
|
else
|
|
echo "Starting our own ganache instance"
|
|
docker-compose -f test/docker-compose.yml up -d ganache
|
|
sleep 5
|
|
echo "Deploy Compound protocol contracts"
|
|
PROVIDER=http://ganache:8545 docker-compose -f test/docker-compose.yml up compound || true
|
|
fi
|
|
node_modules/.bin/truffle test --network ganache "$@"
|
|
fi
|