X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Ftestsuite%2Fstart-server.sh;h=3d19ffb5997f795fe2dea8d0b421f6b87a49bf0d;hb=e9e3df27b70b7d3c7de2f0208431c8b8803a4da9;hp=cdb802f4107a1d153e9d2aeb7a02b027ef3a9760;hpb=efedfe12ff27a450e85ff0b13c028c2dad1a72e4;p=ngircd-alex.git diff --git a/src/testsuite/start-server.sh b/src/testsuite/start-server.sh index cdb802f4..3d19ffb5 100755 --- a/src/testsuite/start-server.sh +++ b/src/testsuite/start-server.sh @@ -1,30 +1,54 @@ #!/bin/sh # ngIRCd Test Suite -# $Id: start-server.sh,v 1.8 2002/09/20 14:46:55 alex Exp $ -echo " starting server ..." +[ -z "$srcdir" ] && srcdir=`dirname $0` -# alte Logfiles loeschen -rm -rf logs *.log +# read in functions +. ${srcdir}/functions.inc -# pruefen, ob getpid.sh gueltige PID's liefert. Wenn dem nicht so ist, -# wird kein ngIRCd gestartet, da dieser ansonsten nicht mehr am Ende -# des Testlaufs beendet werden koennte! -./getpid.sh make > /dev/null 2>&1 +if [ -n "$1" ]; then + id="$1"; shift +else + id="1" +fi + +echo_n "starting server ${id} ..." + +# remove old logfiles, if this is the first server (ID 1) +[ "$id" = "1" ] && rm -rf logs *.log + +# check weather getpid.sh returns valid PIDs. If not, don't start up the +# test-server, because we won't be able to kill it at the end of the test. +./getpid.sh sh > /dev/null 2>&1 if [ $? -ne 0 ]; then - echo " error: getpid.sh FAILED!" + echo " getpid.sh failed!" exit 1 fi -# MOTD fuer Test-Server erzeugen -echo "This is an ngIRCd Test Server" > ngircd-test.motd +# check if there is a test-server already running +./getpid.sh T-ngircd${id} >/dev/null 2>&1 +if [ $? -eq 0 ]; then + echo " failure: test-server ${id} already running!" + exit 1 +fi + +# generate MOTD for test-server +echo "This is an ngIRCd Test Server" > ngircd-test${id}.motd -# Test-Server starten ... -./ngircd-TEST -np -f ${srcdir}/ngircd-test.conf > ngircd-test.log 2>&1 & +# glibc memory checking, see malloc(3) +MALLOC_CHECK_=3 +export MALLOC_CHECK_ + +# starting up test-server ... +./T-ngircd${id} -n -f ${srcdir}/ngircd-test${id}.conf $* \ + >ngircd-test${id}.log 2>&1 & sleep 1 -# validieren, dass Server laeuft -pid=`./getpid.sh ngircd-TEST` -[ -n "$pid" ] && kill -0 $pid > /dev/null 2>&1 || exit 1 +# validate running test-server +pid=`./getpid.sh T-ngircd${id}` +[ -n "$pid" ] && kill -0 $pid > /dev/null 2>&1; r=$? + +[ $r -eq 0 ] && echo " ok." || echo " failure!" +exit $r # -eof-