set -e # cd into script's directory cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null root=$(pwd) export UTILS="$root"/utils REGEXS=() while [[ $# -gt 0 ]]; do case $1 in -h|--help) cat <"$output" 2>&1; then echo "$file FAILED" if [ -z "$VERBOSE" ]; then echo "output of test is as follows" echo "------------------------------" cat "$output" echo "------------------------------" fi exit 1 fi ) || TESTS_FAILED=1 if [ -n "$TESTS_FAILED" ]; then break; fi done # Clean up any shared running clusters. Each cleanup script is responsible for # figuring out if its shared cluster was actually instantiated during any tests. if [ -e "$ROOT_TMPDIR/cleanup-pids" ]; then echo "Cleaning up running pids" tac "$ROOT_TMPDIR/cleanup-pids" | while read -r line; do pid="$(echo "$line" | cut -d' ' -f1)" descr="$(echo "$line" | cut -d' ' -f2-)" echo "Killing $descr ($pid)" kill "$pid" done # This is easier than checking if the pids are still running, and for some # reason it doesn't occur until after the pids have died anyway echo "Waiting for appimage mounts to unmount" while [ "$(find "$ROOT_TMPDIR" -type d -name '*.mount_isle*' | wc -l)" -ge "1" ]; do sleep 1 done fi if [ -z "$TESTS_FAILED" ]; then echo -e '\nall tests succeeded!'; fi