f6e74ed3fdd724a011fe4901db326e4a5a1f2478
[idzebra-moved-to-github.git] / test / gils / stop04.sh
1 #!/bin/sh
2 # $Id: stop04.sh,v 1.9 2005-01-03 09:19:26 adam Exp $
3 # test start and stop of the forked server 
4
5 pp=${srcdir:-"."}
6
7 LOG=stop04.log
8
9 rm -f $LOG
10 echo "initializing" >>$LOG
11 mkdir -p reg
12 ../../index/zebraidx -l $LOG -c $pp/zebra1.cfg init || exit 1
13
14 #create a base to test on
15 ../../index/zebraidx -l $LOG -c $pp/zebra1.cfg update records  || exit 1
16
17 echo "Starting server with (forked)..." >>$LOG
18 ../../index/zebrasrv -D -p z.pid -c $pp/zebra1.cfg -l $LOG tcp:@:9901 
19
20 echo "  checking that it runs... " >>$LOG
21 test -f z.pid || exit 1
22 PID=`cat z.pid`
23 kill -CHLD $PID >/dev/null 2>&1 || exit 1
24
25 echo "  connecting to it..." >>$LOG
26 ../api/testclient localhost:9901 utah >>$LOG || exit 1
27 sleep 1
28
29 echo "  checking that it still runs..." >>$LOG
30 kill -CHLD $PID >/dev/null 2>&1 || exit 1
31
32 echo "  connecting again, with a delay..." >>$LOG
33 ../api/testclient localhost:9901 utah 5 >>$LOG
34 sleep 1 # let the client connect 
35
36 echo "  killing it..." >>$LOG
37 kill $PID
38 sleep 1
39
40 echo "  checking that it is dead..." >>$LOG
41 kill -CHLD $PID >/dev/null 2>&1 && sleep 1 && \
42 kill -CHLD $PID >/dev/null 2>&1 && exit 1
43
44
45 # clean up
46 rm -rf reg z.pid