if the server is already running when the script is started, it now verifies

that it actually is our test server that runs
This commit is contained in:
Daniel Stenberg 2000-11-13 11:45:41 +00:00
parent bfb118e42a
commit 1cc8af2779
2 changed files with 42 additions and 21 deletions

View File

@ -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";
};
}

View File

@ -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
}