]> arthur.barton.de Git - ngircd-alex.git/blob - src/testsuite/wait-tests.sh
Fixes to who-test: accept any ident, escape some '*' flags.
[ngircd-alex.git] / src / testsuite / wait-tests.sh
1 #!/bin/sh
2 #
3 # ngIRCd Test Suite
4 # Copyright (c)2002-2004 by Alexander Barton (alex@barton.de)
5 #
6 # This program is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 2 of the License, or
9 # (at your option) any later version.
10 # Please read the file COPYING, README and AUTHORS for more information.
11 #
12 # $Id: wait-tests.sh,v 1.5 2005/08/12 21:34:19 alex Exp $
13 #
14
15 [ "$1" -gt 0 ] 2> /dev/null && MAX="$1" || MAX=5
16
17 # detect source directory
18 [ -z "$srcdir" ] && srcdir=`dirname $0`
19
20 PS_FLAGS="-f"
21 ps $PS_FLAGS >/dev/null 2>&1
22 [ $? -ne 0 ] && PS_FLAGS="a"
23
24 # read in functions
25 . ${srcdir}/functions.inc
26
27 msg=0
28 while true; do
29   count=`ps $PS_FLAGS | grep "expect " | wc -l`
30   count=`expr $count - 1`
31
32   [ $count -le $MAX ] && break
33
34   if [ $msg -lt 1 ]; then
35     echo_n "      waiting for processes to settle: "
36     msg=1
37   fi
38
39   # there are still clients connected. Wait ...
40   echo_n "$count>$MAX "
41   sleep 1
42 done
43
44 [ $msg -gt 0 ] && echo "done: $count"
45 exit 0
46
47 # -eof-