The below change doesn't work, because "can_load" must be used differently.
When running on SLES 11 which contains perl 1.10.0 (and thus no
TAP::Harness module), run_tests.pl gives:
Can't locate object method "new" via package "TAP::Harness" (perhaps you
forgot to load "TAP::Harness"?) at .././test/run_tests.pl line 64.
Please see below for a patch.
Am 10.05.2017 um 17:05 schrieb Richard Levitte:
The branch master has been updated
via 76e0d0b21cc4e8a879d54f4d78a392826dadb1d1 (commit)
from 03d8e9cb43da5c524e5890a5a51e2c77f1fbd789 (commit)
- Log -----------------------------------------------------------------
commit 76e0d0b21cc4e8a879d54f4d78a392826dadb1d1
Author: Richard Levitte <[email protected]>
Date: Wed May 10 12:58:36 2017 +0200
Prefer TAP::Harness over Test::Harness
TAP:Harness came along in perl 5.10.1, and since we claim to support
perl 5.10.0 in configuration and testing, we can only load it
conditionally.
The main reason to use TAP::Harness rather than Test::Harness is its
capability to merge stdout and stderr output from the test recipes,
which Test::Harness can't. The merge gives much more comprehensible
output when testing verbosely.
Reviewed-by: Rich Salz <[email protected]>
Reviewed-by: Matt Caswell <[email protected]>
(Merged from https://github.com/openssl/openssl/pull/3424)
-----------------------------------------------------------------------
Summary of changes:
test/run_tests.pl | 58 ++++++++++++++++++++++++++++++++++++++++++++-----------
1 file changed, 47 insertions(+), 11 deletions(-)
diff --git a/test/run_tests.pl b/test/run_tests.pl
index 9c5ade1..aa1dba0 100644
--- a/test/run_tests.pl
+++ b/test/run_tests.pl
@@ -17,7 +17,10 @@ BEGIN {
use File::Spec::Functions qw/catdir catfile curdir abs2rel rel2abs/;
use File::Basename;
use if $^O ne "VMS", 'File::Glob' => qw/glob/;
-use Test::Harness qw/runtests $switches/;
+use Module::Load::Conditional qw(can_load);
+
+my $TAP_Harness = can_load({modules => [ 'TAP::Harness' ]})
+ ? 'TAP::Harness' : 'OpenSSL::TAP::Harness';
The following patch fixes the can_load use:
--- test/run_tests.pl 2017-05-25 16:21:00.000000000 +0200
+++ test/run_tests.pl 2017-05-25 21:07:20.066149000 +0200
@@ -19,7 +19,7 @@
use if $^O ne "VMS", 'File::Glob' => qw/glob/;
use Module::Load::Conditional qw(can_load);
-my $TAP_Harness = can_load({modules => [ 'TAP::Harness' ]})
+my $TAP_Harness = can_load(modules => { 'TAP::Harness' => undef })
? 'TAP::Harness' : 'OpenSSL::TAP::Harness';
my $srctop = $ENV{SRCTOP} || $ENV{TOP};
It should be applied to master and the 1.1.0 branch.
Should I open a GH issue or pull request for that trivial change?
Thanks a bunch,
Rainer
--
openssl-dev mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-dev