if the server is already running when the script is started, it now verifies
authorDaniel Stenberg <daniel@haxx.se>
Mon, 13 Nov 2000 11:45:41 +0000 (11:45 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Mon, 13 Nov 2000 11:45:41 +0000 (11:45 +0000)
that it actually is our test server that runs

tests/httpserver.pl
tests/runtests.sh

index 86ca02f..3d69385 100755 (executable)
@@ -80,31 +80,39 @@ for ( $waitedpid = 0;
             }
         }
 
-        #
-        # we always start the path with a number, this is the
-        # test number that this server will use to know what
-        # contents to pass back to the client
-        #
-        if($path =~ /.*\/(\d*)/) {
-            $testnum=$1;
-        }
-        else {
-            print STDERR "UKNOWN TEST CASE\n";
+        if($path =~ /verifiedserver/) {
+            # this is a hard-coded query-string for the test script
+            # to verify that this is the server actually running!
+            print "HTTP/1.1 999 WE ROOLZ\r\n";
             exit;
         }
-        open(INPUT, ">log/server.input");
-        for(@headers) {
-            print INPUT $_;
-        }
-        close(INPUT);
+        else {
 
-        # send a reply to the client
-        open(DATA, "<data/reply$testnum.txt");
-        while(<DATA>) {
-            print $_;
+            #
+            # we always start the path with a number, this is the
+            # test number that this server will use to know what
+            # contents to pass back to the client
+            #
+            if($path =~ /.*\/(\d*)/) {
+                $testnum=$1;
+            }
+            else {
+                print STDERR "UKNOWN TEST CASE\n";
+                exit;
+            }
+            open(INPUT, ">log/server.input");
+            for(@headers) {
+                print INPUT $_;
+            }
+            close(INPUT);
+            
+            # send a reply to the client
+            open(DATA, "<data/reply$testnum.txt");
+            while(<DATA>) {
+                print $_;
+            }
+            close(DATA);
         }
-        close(DATA);
-
      #   print "Hello there, $name, it's now ", scalar localtime, "\r\n";
     };
 }
index 53c0474..dba9129 100755 (executable)
@@ -31,6 +31,7 @@ stopserver() {
   if [ -f $PIDFILE ] ; then
       PID=`cat $PIDFILE`
       kill -9 $PID
+      rm -f $PIDFILE # server is killed
   fi
 }
 
@@ -55,6 +56,18 @@ runserver () {
     sleep 1 # give it a little time to start
   else
     echo $STATUS
+
+    # verify that our server is one one running on this port:
+    data=`$CURL --silent -i $HOSTIP:$HOSTPORT/verifiedserver`;
+
+    if { echo $data | grep -v "WE ROOLZ" >/dev/null 2>&1; } then
+        echo "Another HTTP server is running on port $HOSTPORT"
+        echo "Edit runtests.sh to use another port and rerun the test script"
+        exit
+    fi
+
+    echo "The running HTTP server has been verified to be our test server"
+
   fi
 }