summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Fandrich <dan@coneharvesters.com>2023-04-21 15:00:00 -0700
committerDan Fandrich <dan@coneharvesters.com>2023-04-24 16:04:24 -0700
commitb88ea272c1926a801d3e7f41faad61a43584a3d1 (patch)
treec0536e0bb81e1680dc22ad21dcf4f3c1774d9302
parent640f4c2267802730b0eaf6d539f7d0fce3ffc3f6 (diff)
downloadcurl-b88ea272c1926a801d3e7f41faad61a43584a3d1.tar.gz
runtests: create runner functions for clearlocks and stopservers
runtests.pl now uses runner for all server actions beyond the initial variable configuration. Ref: #10818
-rw-r--r--tests/runner.pm18
-rwxr-xr-xtests/runtests.pl8
-rw-r--r--tests/servers.pm4
3 files changed, 24 insertions, 6 deletions
diff --git a/tests/runner.pm b/tests/runner.pm
index 69fe323c8..22f88ae7c 100644
--- a/tests/runner.pm
+++ b/tests/runner.pm
@@ -36,6 +36,8 @@ BEGIN {
checktestcmd
prepro
restore_test_env
+ runner_clearlocks
+ runner_stopservers
runner_test_preprocess
runner_test_run
$DBGCURL
@@ -63,6 +65,7 @@ use processhelp qw(
);
use servers qw(
checkcmd
+ clearlocks
serverfortest
stopserver
stopservers
@@ -995,4 +998,19 @@ sub runner_test_run {
return (0, \%testtimings, $cmdres, $CURLOUT, $tool, $usedvalgrind);
}
+
+###################################################################
+# Kill the server processes that still have lock files in a directory
+sub runner_clearlocks {
+ my ($lockdir)=@_;
+ clearlocks($lockdir);
+}
+
+
+###################################################################
+# Kill all server processes
+sub runner_stopservers {
+ return stopservers($verbose);
+}
+
1;
diff --git a/tests/runtests.pl b/tests/runtests.pl
index 8cda319c1..fad5c17d0 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -195,7 +195,7 @@ $ENV{'COLUMNS'}=79; # screen width!
sub catch_zap {
my $signame = shift;
logmsg "runtests.pl received SIG$signame, exiting\n";
- stopservers($verbose);
+ runner_stopservers();
die "Somebody sent me a SIG$signame";
}
$SIG{INT} = \&catch_zap;
@@ -1412,7 +1412,7 @@ sub singletest_check {
if(!$filename) {
logmsg "ERROR: section verify=>file$partsuffix ".
"has no name attribute\n";
- stopservers($verbose);
+ runner_stopservers();
# timestamp test result verification end
$timevrfyend{$testnum} = Time::HiRes::time();
return -1;
@@ -1626,7 +1626,7 @@ sub singletest {
# first, remove all lingering log files
if(!cleardir($LOGDIR) && $clearlocks) {
- clearlocks($LOGDIR);
+ runner_clearlocks($LOGDIR);
cleardir($LOGDIR);
}
@@ -2546,7 +2546,7 @@ my $sofar = time() - $start;
citest_finishtestrun();
# Tests done, stop the servers
-my $unexpected = stopservers($verbose);
+my $unexpected = runner_stopservers();
my $numskipped = %skipped ? sum values %skipped : 0;
my $all = $total + $numskipped;
diff --git a/tests/servers.pm b/tests/servers.pm
index 241e0e5d7..44c71a6e9 100644
--- a/tests/servers.pm
+++ b/tests/servers.pm
@@ -54,9 +54,7 @@ BEGIN {
# functions
qw(
- clearlocks
initserverconfig
- stopservers
)
);
@@ -64,8 +62,10 @@ BEGIN {
# functions
qw(
checkcmd
+ clearlocks
serverfortest
stopserver
+ stopservers
subvariables
),