summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDan Fandrich <dan@coneharvesters.com>2023-04-27 14:08:41 -0700
committerDan Fandrich <dan@coneharvesters.com>2023-05-05 00:45:43 -0700
commitd4d22adf4013c8c576db301a0f2bc84d823b9fa6 (patch)
tree3b6f62edec9594c773605c16b9d7a049f72648f1
parent82fa5ca8368e378a72d19767dc5795eaa790924a (diff)
downloadcurl-d4d22adf4013c8c576db301a0f2bc84d823b9fa6.tar.gz
runtests: add a runner initialization function
This sets up the runner environment to start running tests. Ref: #10818
-rw-r--r--tests/runner.pm23
-rwxr-xr-xtests/runtests.pl30
2 files changed, 37 insertions, 16 deletions
diff --git a/tests/runner.pm b/tests/runner.pm
index feaa4e529..737f24d60 100644
--- a/tests/runner.pm
+++ b/tests/runner.pm
@@ -36,6 +36,7 @@ BEGIN {
checktestcmd
prepro
restore_test_env
+ runner_init
runner_clearlocks
runner_stopservers
runner_test_preprocess
@@ -118,6 +119,28 @@ sub stderrfilename {
}
#######################################################################
+# Initialize the runner and prepare it to run tests
+#
+sub runner_init {
+ my ($logdir)=@_;
+
+ # Set this directory as ours
+ # TODO: This will need to be uncommented once there are multiple runners
+ #$LOGDIR = $logdir;
+ mkdir("$LOGDIR/$PIDDIR", 0777);
+
+ # enable memory debugging if curl is compiled with it
+ $ENV{'CURL_MEMDEBUG'} = "$LOGDIR/$MEMDUMP";
+ $ENV{'CURL_ENTROPY'}="12345678";
+ $ENV{'CURL_FORCETIME'}=1; # for debug NTLM magic
+ $ENV{'CURL_GLOBAL_INIT'}=1; # debug curl_global_init/cleanup use
+ $ENV{'HOME'}=$pwd;
+ $ENV{'CURL_HOME'}=$ENV{'HOME'};
+ $ENV{'XDG_CONFIG_HOME'}=$ENV{'HOME'};
+ $ENV{'COLUMNS'}=79; # screen width!
+}
+
+#######################################################################
# Check for a command in the PATH of the machine running curl.
#
sub checktestcmd {
diff --git a/tests/runtests.pl b/tests/runtests.pl
index 3958d4911..6ffa032be 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -182,16 +182,6 @@ sub logmsg {
}
}
-# enable memory debugging if curl is compiled with it
-$ENV{'CURL_MEMDEBUG'} = "$LOGDIR/$MEMDUMP";
-$ENV{'CURL_ENTROPY'}="12345678";
-$ENV{'CURL_FORCETIME'}=1; # for debug NTLM magic
-$ENV{'CURL_GLOBAL_INIT'}=1; # debug curl_global_init/cleanup use
-$ENV{'HOME'}=$pwd;
-$ENV{'CURL_HOME'}=$ENV{'HOME'};
-$ENV{'XDG_CONFIG_HOME'}=$ENV{'HOME'};
-$ENV{'COLUMNS'}=79; # screen width!
-
sub catch_zap {
my $signame = shift;
logmsg "runtests.pl received SIG$signame, exiting\n";
@@ -2231,7 +2221,6 @@ if ($gdbthis) {
cleardir($LOGDIR);
mkdir($LOGDIR, 0777);
-mkdir("$LOGDIR/$PIDDIR", 0777);
#######################################################################
# initialize some variables
@@ -2468,11 +2457,7 @@ sub displaylogs {
}
#######################################################################
-# Setup CI Test Run
-citest_starttestrun();
-
-#######################################################################
-# The main test-loop
+# Scan tests to find suitable candidates
#
my $failed;
@@ -2504,6 +2489,19 @@ if($listonly) {
exit(0);
}
+#######################################################################
+# Setup CI Test Run
+citest_starttestrun();
+
+#######################################################################
+# Initialize the runner to prepare to run tests
+cleardir($LOGDIR);
+mkdir($LOGDIR, 0777);
+runner_init($LOGDIR);
+
+#######################################################################
+# The main test-loop
+#
# run through each candidate test and execute it
foreach my $testnum (@runtests) {
$count++;