#!/bin/bash # (C)2009 DatuX - Released under GPL abort() { echo -e "\a\e[1;31mFatal error: $1\e[0m" >&2 exit 1 } runtest() { OK=.runtests/$1.ok # test nog NIET ok? if ! [ -e $OK ]; then echo -e "\e[1;32mStarting test $1:\e[0m" >&2 START=`date +%s` $1 || abort "$1 failed!" END=`date +%s` echo -e "\e[1;32mTest $1 succeeded.\e[0m" >&2 touch $OK (( SECONDS=END-START )) echo -e "$SECONDS\t$ID\t$CASE_DESCRIPTION\t$1" >> timing.log else echo -e "\e[1;32m(Skipping $1, already completed)\e[0m" >&2 fi } for PAR in $*; do eval "$PAR=1" &>/dev/null; done #gebruik resume om te resumen if ! [ "$resume" ]; then rm -fr .runtests &>/dev/null rm -f runtests.log &>/dev/null fi mkdir .runtests &>/dev/null START=`date +%s` for TEST in ./[0-9]*; do runtest $TEST 2>&1 | sed -u "s#^#$TEST | #" | tee -a runtests.log [ $PIPESTATUS == "0" ] || exit 1 done echo END=`date +%s` (( TIME=(END-START)/60 )) echo "Total test time: $TIME minutes."; echo -e "\e[1;32mALL TESTS SUCCEEDED!\e[0m" >&2 #Alles klaar, zorg dat men niet meer kan resumen. rm -r .runtests &>/dev/null