From fe537f89cd6b75c10e717a0eb159f33710729b67 Mon Sep 17 00:00:00 2001 From: Hugo Landau Date: Mon, 7 Mar 2022 10:48:13 +0000 Subject: Fix test failure when testing with Test::Harness Fixes an issue where, when the test suite was being run with the older Test::Harness package, the test suite would not complete correctly due to evaluation of $harness->runtests()->has_errors, which is only available for the newer TAP::Parser::Aggregator code path. Fixes #17818. Reviewed-by: Paul Dale Reviewed-by: Richard Levitte Reviewed-by: Tomas Mraz (Merged from https://github.com/openssl/openssl/pull/17823) --- test/run_tests.pl | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/test/run_tests.pl b/test/run_tests.pl index 4ee6a036a9..9e2ea8438b 100644 --- a/test/run_tests.pl +++ b/test/run_tests.pl @@ -314,10 +314,12 @@ my $harness = $package->new(\%tapargs); my $ret = $harness->runtests(map { [ abs2rel($_, rel2abs(curdir())), basename($_) ] } @preps); -die if $ret->has_errors; -$ret = - $harness->runtests(map { [ abs2rel($_, rel2abs(curdir())), basename($_) ] } - sort { reorder($a) cmp reorder($b) } keys %tests); + +if (ref($ret) ne "TAP::Parser::Aggregator" || !$ret->has_errors) { + $ret = + $harness->runtests(map { [ abs2rel($_, rel2abs(curdir())), basename($_) ] } + sort { reorder($a) cmp reorder($b) } keys %tests); +} # If this is a TAP::Parser::Aggregator, $ret->has_errors is the count of # tests that failed. We don't bother with that exact number, just exit -- cgit v1.2.3