Blame


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