aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtests/runtests.pl24
1 files changed, 20 insertions, 4 deletions
diff --git a/tests/runtests.pl b/tests/runtests.pl
index eaaf9dff0..f6932f4dc 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -83,6 +83,8 @@ my $listonly; # only list the tests
my $pwd; # current working directory
+my %run; # running server
+
chomp($pwd = `pwd`);
# enable memory debugging if curl is compiled with it
@@ -202,7 +204,7 @@ sub runhttpserver {
# verify that our server is up and running:
my $data=`$CURL --silent -i $HOSTIP:$HOSTPORT/verifiedserver 2>/dev/null`;
- if ( $data !~ /WE ROOLZ/ ) {
+ if ( $data !~ /WE ROOLZ: (\d+)/ ) {
sleep(1);
next;
}
@@ -308,7 +310,10 @@ sub runftpserver {
# verify that our server is up and running:
my $data=`$CURL --silent -i ftp://$HOSTIP:$FTPPORT/verifiedserver 2>/dev/null`;
- if ( $data !~ /WE ROOLZ/ ) {
+ if ( $data !~ /WE ROOLZ: (\d+)/ ) {
+ if($verbose) {
+ print STDERR "RUN: Retrying FTP server existance in 1 sec\n";
+ }
sleep(1);
next;
}
@@ -839,6 +844,19 @@ sub singletest {
unlink($FTPDCMD); # remove the instructions for this test
+ my @what = getpart("client", "killserver");
+ for(@what) {
+ my $serv = $_;
+ chomp $serv;
+ if($run{$serv}) {
+ stopserver($run{$serv}); # the pid file is in the hash table
+ $run{$serv}=""; # clear it
+ }
+ else {
+ print STDERR "RUN: The $serv server is not running\n";
+ }
+ }
+
if($memory_debug) {
if(! -f $memdump) {
print "\n** ALERT! memory debuggin without any output file?\n";
@@ -873,8 +891,6 @@ sub singletest {
return 0;
}
-my %run;
-
##############################################################################
# This function makes sure the right set of server is running for the
# specified test case. This is a useful design when we run single tests as not