Provided by: libtest2-harness-perl_1.000155-1_all bug

NAME

       Test2::Tools::HarnessTester - Run events through a harness for a summary

DESCRIPTION

       This tool allows you to process events through the Test2::Harness auditor.  The main
       benefit here is to get a pass/fail result, as well as counts for assertions, failures, and
       errors.

SYNOPSIS

           use Test2::V0;
           use Test2::API qw/intercept/;
           use Test2::Tools::HarnessTester qw/summarize_events/;

           my $events = intercept {
               ok(1, "pass");
               ok(2, "pass gain");
               done_testing;
           };

           is(
               summarize_events($events),
               {
                   # Each of these is the negation of the other, no need to check both
                   pass       => 1,
                   fail       => 0,

                   # The plan facet, see Test2::EventFacet::Plan
                   plan       => {count => 2},

                   # Statistics
                   assertions => 2,
                   errors     => 0,
                   failures   => 0,
               }
           );

EXPORTS

   $summary = summarize_events($events)
       This takes an arrayref of events, such as that produced by "intercept {...}" from
       Test2::API. The result is a hashref that summarizes the results of the events as processed
       by Test2::Harness, specifically the Test2::Harness::Auditor::Watcher module.

       Fields in the summary hash:

       pass => $BOOL
       fail => $BOOL
           These are negatives of eachother. These represent the pass/fail state after processing
           the events. When one is true the other should be false. These are normalized to 1 and
           0.

       plan => $HASHREF
           If a plan was provided this will have the Test2::EventFacet::Plan facet, but as a
           hashref, not a blessed instance.

           Note: This is reference to the original data, not a copy, if you modify it you will
           modify the event as well.

       assertions => $INT
           Count of assertions made.

       errors => $INT
           Count of errors seen.

       failures => $INT
           Count of failures seen.

   $path = make_example_dir()
       This will create a temporary directory with 't', 't2', and 'xt' subdirectories each of
       which will contain a single passing test.

       This is re-exported from App::Yath::Tester.

SOURCE

       The source code repository for Test2-Harness can be found at
       http://github.com/Test-More/Test2-Harness/.

MAINTAINERS

       Chad Granum <exodist@cpan.org>

AUTHORS

       Chad Granum <exodist@cpan.org>

COPYRIGHT

       Copyright 2020 Chad Granum <exodist7@gmail.com>.

       This program is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.

       See http://dev.perl.org/licenses/