cloudron-e2e-test/parallel_test.sh

48 lines
982 B
Bash
Raw Normal View History

2015-11-14 03:59:43 +00:00
#!/bin/bash
set -eu
export DEBUG=superagent-sync,e2e:*
export DEBUG_COLORS=true
2015-11-14 04:32:02 +00:00
readonly tests=(app-flow-test cloudron-user-test new-user-test)
2015-11-14 03:59:43 +00:00
# cleanup
rm -f logs/*
echo "Cleaning up"
./node_modules/.bin/mocha test/000-cleanup.js > "logs/000-cleanup.log" 2>&1
# run tests
for t in "${tests[@]}"; do
echo "Starting test ${t}"
./node_modules/.bin/mocha "test/${t}.js" > "logs/${t}.log" 2>&1 &
done
2015-11-14 04:32:02 +00:00
# update test modifies release file, so run it separately
sleep 20 # wait for the other tests to have created the cloudron
./node_modules/.bin/mocha "test/cloudron-update-test.js" > "logs/cloudron-update-test.log" 2>&1 &
2015-11-14 03:59:43 +00:00
# wait for tests to finish
fail=0
echo "Waiting for jobs to finish"
for job in `jobs -p`; do
wait $job || let "fail+=1"
done
echo
echo
for t in "${tests[@]}"; do
echo "=========== ${t} =============="
2015-11-14 04:51:19 +00:00
cat "logs/${t}.log"
2015-11-14 03:59:43 +00:00
echo
echo
done
if [ "$fail" == "0" ]; then
exit 0
else
echo "Fail count: ${fail}"
exit 1
fi