Added scripts to test server start/stop/kill
authorHeikki Levanto <heikki@indexdata.dk>
Tue, 22 Oct 2002 14:03:42 +0000 (14:03 +0000)
committerHeikki Levanto <heikki@indexdata.dk>
Tue, 22 Oct 2002 14:03:42 +0000 (14:03 +0000)
test/gils/test01.sh [new file with mode: 0755]
test/gils/test02.sh [new file with mode: 0755]
test/gils/test03.sh [new file with mode: 0755]
test/gils/test04.sh [new file with mode: 0755]

diff --git a/test/gils/test01.sh b/test/gils/test01.sh
new file mode 100755 (executable)
index 0000000..5c9ae67
--- /dev/null
@@ -0,0 +1,35 @@
+# test01.sh - test start and stop of the server with -1
+#
+
+echo "initializing"
+mkdir -p reg
+rm -f idx.log srv.log
+../../index/zebraidx -l idx.log -c zebra1.cfg init || exit 1
+
+#create a base to test on
+../../index/zebraidx -l idx.log -c zebra1.cfg update records  || exit 1
+
+#kill old server (if any)
+test -f zebrasrv.pid && kill -9 `cat zebrasrv.pid`
+rm -f zebrasrv.pid
+rm -f srv.log
+
+echo "Starting server with -1 (one shot)..."
+../../index/zebrasrv -1 -c zebra1.cfg -l srv.log tcp:@:9901 &
+sleep 1
+
+echo "  cheking that it runs... "
+test -f zebrasrv.pid || exit 1
+PID=`cat zebrasrv.pid`
+ps -p $PID >/dev/null || exit 1
+
+echo "  connecting to it..."
+../testclient localhost:9901 utah > log || exit 1
+sleep 1
+
+echo "  checking that server does not run any more"
+ps -p $PID >/dev/null && exit 1
+
+echo ok
+# clean up
+rm -rf reg idx.log srv.log zebrasrv.pid
diff --git a/test/gils/test02.sh b/test/gils/test02.sh
new file mode 100755 (executable)
index 0000000..485cd53
--- /dev/null
@@ -0,0 +1,47 @@
+# test02.sh - test start and stop of the server with -S
+#
+# FIXME - this test does not currently pass  (H 22-oct-2002)
+# Something rotten with signals and threads and mutexes...
+
+echo "initializing"
+mkdir -p reg
+rm -f idx.log srv.log
+../../index/zebraidx -l idx.log -c zebra1.cfg init || exit 1
+
+#create a base to test on
+../../index/zebraidx -l idx.log -c zebra1.cfg update records  || exit 1
+
+#kill old server (if any)
+test -f zebrasrv.pid && kill -9 `cat zebrasrv.pid`
+rm -f zebrasrv.pid
+rm -f srv.log
+
+echo "Starting server with -S (static)..."
+../../index/zebrasrv -S -c zebra1.cfg -l srv.log tcp:@:9901 &
+sleep 1
+
+echo "  cheking that it runs... "
+test -f zebrasrv.pid || exit 1
+PID=`cat zebrasrv.pid`
+ps -p $PID >/dev/null || exit 1
+
+echo "  connecting to it..."
+../testclient localhost:9901 utah > log || exit 1
+sleep 1
+
+echo "  checking that it still runs..."
+ps -p $PID >/dev/null || exit 1
+
+echo "  connecting again, with a delay..."
+../testclient localhost:9901 utah 5 > log &
+sleep 1 # let the client connect 
+
+echo "  killing it..."
+kill  $PID
+
+echo "  checking that it is dead..."
+ps -p $PID >/dev/null && exit 1
+
+echo ok
+# clean up
+rm -rf reg idx.log srv.log zebrasrv.pid
diff --git a/test/gils/test03.sh b/test/gils/test03.sh
new file mode 100755 (executable)
index 0000000..03e5fa4
--- /dev/null
@@ -0,0 +1,60 @@
+# test03.sh - test start and stop of the threaded server (-T)
+#
+# FIXME - this test does not currently pass  (H 22-oct-2002)
+# When the client exits, the process dies with a segfault
+
+echo "initializing"
+mkdir -p reg
+rm -f idx.log srv.log servercrash
+../../index/zebraidx -l idx.log -c zebra1.cfg init || exit 1
+
+#create a base to test on
+../../index/zebraidx -l idx.log -c zebra1.cfg update records  || exit 1
+
+#kill old server (if any)
+test -f zebrasrv.pid && kill -9 `cat zebrasrv.pid`
+rm -f zebrasrv.pid
+rm -f srv.log
+
+echo "Starting server with -T (threaded)..."
+(
+  ../../index/zebrasrv -T -c zebra1.cfg -l srv.log tcp:@:9901 ||
+    echo "server failed with $?" > servercrash
+)&
+sleep 1
+
+echo "  cheking that it runs... "
+test -f zebrasrv.pid || exit 1
+PID=`cat zebrasrv.pid`
+ps -p $PID >/dev/null || exit 1
+
+echo "  connecting to it..."
+../testclient localhost:9901 utah > log || exit 1
+sleep 1
+
+echo "  checking that it still runs..."
+ps -p $PID >/dev/null || exit 1
+
+echo "  connecting again, with a delay..."
+../testclient localhost:9901 utah 5 > log &
+sleep 1 # let the client connect 
+
+echo "  killing it..."
+kill  $PID
+sleep 1
+
+echo "  checking that it still runs waiting for the client"
+ps -p $PID >/dev/null || exit 1
+
+echo "  waiting for the client to exit..."
+sleep 3
+
+echo "  checking that the server is dead..."
+ps -p $PID >/dev/null && exit 1
+
+echo "  checking that it exited normally..."
+test -f servercrash && exit 1
+
+echo ok
+# clean up
+rm -rf reg idx.log srv.log zebrasrv.pid servercrash
diff --git a/test/gils/test04.sh b/test/gils/test04.sh
new file mode 100755 (executable)
index 0000000..30aceb4
--- /dev/null
@@ -0,0 +1,46 @@
+# test04.sh - test start and stop of the forked server 
+#
+
+echo "initializing"
+mkdir -p reg
+rm -f idx.log srv.log
+../../index/zebraidx -l idx.log -c zebra1.cfg init || exit 1
+
+#create a base to test on
+../../index/zebraidx -l idx.log -c zebra1.cfg update records  || exit 1
+
+#kill old server (if any)
+test -f zebrasrv.pid && kill -9 `cat zebrasrv.pid`
+rm -f zebrasrv.pid
+rm -f srv.log
+
+echo "Starting server with (forked)..."
+../../index/zebrasrv  -c zebra1.cfg -l srv.log tcp:@:9901 &
+sleep 1
+
+echo "  cheking that it runs... "
+test -f zebrasrv.pid || exit 1
+PID=`cat zebrasrv.pid`
+ps -p $PID >/dev/null || exit 1
+
+echo "  connecting to it..."
+../testclient localhost:9901 utah > log || exit 1
+sleep 1
+
+echo "  checking that it still runs..."
+ps -p $PID >/dev/null || exit 1
+
+echo "  connecting again, with a delay..."
+../testclient localhost:9901 utah 5 > log &
+sleep 1 # let the client connect 
+
+echo "  killing it..."
+kill  $PID
+sleep 1
+
+echo "  checking that the server is dead..."
+ps -p $PID >/dev/null && exit 1
+
+echo ok
+# clean up
+rm -rf reg idx.log srv.log zebrasrv.pid