because when we interrupt the tests via ^C, the signal also kills the background process
@@ -4,8 +4,8 @@
trap cleanup EXIT
cleanup() {
- # Kill the testrpc instance that we started (if we started one).
- if [ -n "$testrpc_pid" ]; then
+ # 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
}