Test::Builder2::Formatter - Base class for formating test results
package Test::Builder2::Formatter::SomeFormat; use Test::Builder2::Mouse; extends "Test::Builder2::Formatter;
Test::Builder2 delegates the actual formating of test results to a Test::Builder2::Formatter object. This can then decide if it's going to formatter TAP or XML or send email or whatever.
Contains the class to use to make a Streamer.
Defaults to $formatter->default_streamer_class
$formatter->default_streamer_class
Contains the Streamer object to write to. One will be created for you using $formatter->streamer_class.
$formatter->streamer_class
my $default_formatter = Test::Builder2::Formatter->singleton;
Returns the default shared formatter object.
The default Formatter is a Test::Builder2::Formatter::TAP object.
my $formatter = Test::Builder2::Formatter->new(%args);
Creates a new formatter object to feed results to.
You want to call this on a subclass.
my $stream_depth = $formatter->stream_depth;
Returns how many stream start events without stream end events have been seen.
stream start
stream end
For example...
Would indicate a level of 1.
stream start stream start stream end stream start
Would indicate a level of 2.
A value of 0 indiciates the Formatter is not in a stream.
A negative value will throw an exception.
Increment and decrement the stream_depth.
stream_depth
$formatter->accept_event($event);
Accept Events as they happen.
It will increment and decrement stream_depth as stream start and stream end events are seen.
Do not override accept_event(). Override INNER_accept_event().
accept_event()
INNER_accept_event()
$formatter->accept_result($result);
Formats a $result (an instance of Test::Builder2::Result).
It is an error to call accept_result() outside a stream.
Do not override accept_result(). Override INNER_accept_result().
accept_result()
INNER_accept_result()
$output->write($destination, @text);
Outputs @text to the named $destination.
@text
@text is treated like print, so it is simply concatenated.
print
In reality, this is a hand off to $formatter->streamer->write.
$formatter->streamer->write
To install Test::Simple, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Test::Simple
CPAN shell
perl -MCPAN -e shell install Test::Simple
For more information on module installation, please visit the detailed CPAN module installation guide.