X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Ftestsuite%2Ftests.sh;h=fc4a4d5d25e2dda2dbbdb62ef62a5b3a887f27bf;hb=afb59ab8e5ccf5d48c78dab53e8ec64d21829a8d;hp=f820628f8d1102bb7c1da297d3a24bffffe379b1;hpb=8bede388af99cee1b0b32c108ca4704548c0b790;p=ngircd-alex.git diff --git a/src/testsuite/tests.sh b/src/testsuite/tests.sh index f820628f..fc4a4d5d 100755 --- a/src/testsuite/tests.sh +++ b/src/testsuite/tests.sh @@ -1,7 +1,7 @@ #!/bin/sh # # ngIRCd Test Suite -# Copyright (c)2001-2012 Alexander Barton (alex@barton.de) and Contributors. +# Copyright (c)2001-2014 Alexander Barton (alex@barton.de) and Contributors. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -18,6 +18,7 @@ test=`echo ${name} | cut -d '.' -f 1` [ -d logs ] || mkdir logs if [ ! -r "$test" ]; then + echo "$test: test not found" >>tests-skipped.lst echo "${name}: test \"$test\" not found!"; exit 77 exit 1 fi @@ -27,17 +28,30 @@ fi type expect > /dev/null 2>&1 if [ $? -ne 0 ]; then + echo "$test: \"expect\" not found" >>tests-skipped.lst echo "${name}: \"expect\" not found."; exit 77 fi type telnet > /dev/null 2>&1 if [ $? -ne 0 ]; then + echo "$test: \"telnet\" not found" >>tests-skipped.lst echo "${name}: \"telnet\" not found."; exit 77 fi +# prepare expect script +e_in="${srcdir}/${test}.e" +e_tmp="${test}.e_" +e_exec="$e_in" +if test -t 1 2>/dev/null; then + sed -e 's|^expect |puts -nonewline stderr "."; expect |g' \ + "$e_in" >"$e_tmp" + [ $? -eq 0 ] && e_exec="$e_tmp" +fi + echo_n "running ${test} ..." -expect ${srcdir}/${test}.e > logs/${test}.log 2>&1; r=$? +expect "$e_exec" > logs/${test}.log; r=$? [ $r -eq 0 ] && echo " ok." || echo " failure!" +rm -f "$e_tmp" exit $r # -eof-