NAME
Test2::Harness::Collector::TapParser - Produce EventFacets from a line of TAP.
DESCRIPTION
This module is responsible for reading and processing any TAP output from tests. Lines of TAP output are processed into Test2::Event facet data. Note that Test2 -> TAP -> Test2
is lossy at the Test2 -> TAP
step.
SYNOPSIS
my
$facet_data
= parse_tap_line(
"1..1"
);
is(
$facet_data
,
{
trace
=> {
nested
=> 0},
hubs
=> [{
nested
=> 0}],
plan
=> {
details
=>
''
,
count
=> 1,
skip
=> 0,
},
},
"Parsed the plan"
);
$facet_data
= parse_tap_line(
"# foo"
);
is(
$facet_data
,
{
trace
=> {
nested
=> 0 },
hubs
=> [ {
nested
=> 0 } ],
info
=> [
{
tag
=>
'NOTE'
,
details
=>
'foo'
,
debug
=> 0,
},
],
},
"Parsed the note"
);
$facet_data
= parse_tap_line(
"ok 1"
);
is(
$facet_data
,
{
trace
=> {
nested
=> 0},
hubs
=> [{
nested
=> 0}],
assert
=> {
no_debug
=> 1,
pass
=> 1,
number
=>
'1'
,
details
=>
''
,
},
},
"Parsed the assertion"
);
EXPORTS
- $facet_data = parse_tap_line($line)
-
Parse a line of TAP. It is assumed to be STDOUT thus all comments are turned into notes. Using this export will NOT add the usual
from_tap
facet. It is better to use one of the other 2 exports. - $facet_data = parse_stdout_tap($line)
-
Parse a line of TAP from stdout.
- $facet_data = parse_stderr_tap($line)
-
Parse a line of TAP from stderr. This will ONLY parse comment lines (ones that start with a
#
, which may be indented). All comments will be treated as diag's, all other lines will be ignored.
SOURCE
The source code repository for Test2-Harness can be found at http://github.com/Test-More/Test2-Harness/.
MAINTAINERS
AUTHORS
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/