Rework test/run_tests.pl to support selective verbosity and TAP copy
authorRichard Levitte <levitte@openssl.org>
Wed, 11 Sep 2019 09:05:11 +0000 (11:05 +0200)
committerRichard Levitte <levitte@openssl.org>
Thu, 12 Sep 2019 12:38:00 +0000 (14:38 +0200)
commite3d9a6b5f0157d92aa5bbfdb0f95fd55be9a0396
treeb23eea44c997f5de0dbb2ff6de3594e1600364da
parentf3503cb0f6ffe19c03c731b4b6069f26584917b4
Rework test/run_tests.pl to support selective verbosity and TAP copy

This includes a complete rework of how we use TAP::Harness, by adding
a TAP::Parser subclass that allows additional callbacks to be passed
to perform what we need.  The TAP::Parser callbacks we add are:

    ALL         to print all the TAP output to a file (conditionally)
                to collect all the TAP output to an array (conditionally)
    EOF         to print all the collected TAP output (if there is any)
                if any subtest failed

To get TAP output to file, the environment variable HARNESS_TAP_COPY
must be defined, with a file name as value.  That file will be
overwritten unconditionally.

To get TAP output displayed on failure, the make variable VERBOSE_FAILURE
or VF must be defined with a non-emoty value.

Additionally, the output of test recipe names has been changed to only
display its basename.

Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/9862)
CHANGES
Configurations/descrip.mms.tmpl
INSTALL
test/run_tests.pl