runtests: add a runner initialization function

This sets up the runner environment to start running tests.

Ref: #10818
This commit is contained in:
Dan Fandrich 2023-04-27 14:08:41 -07:00
parent 82fa5ca836
commit d4d22adf40
2 changed files with 37 additions and 16 deletions

View File

@ -36,6 +36,7 @@ BEGIN {
checktestcmd checktestcmd
prepro prepro
restore_test_env restore_test_env
runner_init
runner_clearlocks runner_clearlocks
runner_stopservers runner_stopservers
runner_test_preprocess runner_test_preprocess
@ -117,6 +118,28 @@ sub stderrfilename {
return "$logdir/stderr$testnum"; return "$logdir/stderr$testnum";
} }
#######################################################################
# 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. # Check for a command in the PATH of the machine running curl.
# #

View File

@ -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 { sub catch_zap {
my $signame = shift; my $signame = shift;
logmsg "runtests.pl received SIG$signame, exiting\n"; logmsg "runtests.pl received SIG$signame, exiting\n";
@ -2231,7 +2221,6 @@ if ($gdbthis) {
cleardir($LOGDIR); cleardir($LOGDIR);
mkdir($LOGDIR, 0777); mkdir($LOGDIR, 0777);
mkdir("$LOGDIR/$PIDDIR", 0777);
####################################################################### #######################################################################
# initialize some variables # initialize some variables
@ -2468,11 +2457,7 @@ sub displaylogs {
} }
####################################################################### #######################################################################
# Setup CI Test Run # Scan tests to find suitable candidates
citest_starttestrun();
#######################################################################
# The main test-loop
# #
my $failed; my $failed;
@ -2504,6 +2489,19 @@ if($listonly) {
exit(0); 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 # run through each candidate test and execute it
foreach my $testnum (@runtests) { foreach my $testnum (@runtests) {
$count++; $count++;