]> arthur.barton.de Git - ngircd-alex.git/blob - src/testsuite/stress-server.sh
- es wird nun getestet, mit welchen Parametern "ps" aufgerufen werden muss.
[ngircd-alex.git] / src / testsuite / stress-server.sh
1 #!/bin/sh
2 # ngIRCd Test Suite
3 # $Id: stress-server.sh,v 1.3 2002/09/13 06:11:19 alex Exp $
4
5 if [ `uname` = "Darwin" ]; then
6   CLIENTS=20
7 else
8   CLIENTS=50
9 fi
10
11 name=`basename $0`
12 test=`echo ${name} | cut -d '.' -f 1`
13 mkdir -p logs tests
14
15 type expect > /dev/null 2>&1
16 if [ $? -ne 0 ]; then
17   echo "SKIP: ${name} -- \"expect\" not found.";  exit 77
18 fi
19 type telnet > /dev/null 2>&1
20 if [ $? -ne 0 ]; then
21   echo "SKIP: ${name} -- \"telnet\" not found.";  exit 77
22 fi
23
24 echo "      stressing server with $CLIENTS clients (be patient!) ..."
25 no=0
26 while [ ${no} -lt $CLIENTS ]; do
27   cat ${srcdir}/stress-A.e > tests/${no}.e
28   echo "send \"nick test${no}\\r\"" >> tests/${no}.e
29   cat ${srcdir}/stress-B.e >> tests/${no}.e
30   no=`expr ${no} + 1`
31 done
32 no=0
33 while [ ${no} -lt $CLIENTS ]; do
34   expect tests/${no}.e > logs/stress-${no}.log 2> /dev/null &
35   no=`expr ${no} + 1`
36 done
37
38 touch logs/check-idle.log
39 while true; do
40   expect ${srcdir}/check-idle.e >> logs/check-idle.log
41   res=$?
42   [ $res -eq 0 ] && exit 0
43   [ $res -eq 1 ] && exit 1
44   sleep 1
45   echo "====================" >> logs/check-idle.log
46 done
47
48 # -eof-