The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

TAP::Parser::Source - Stream output from some source

VERSION

Version 0.54

DESCRIPTION

Takes a command and hopefully returns a stream from it.

SYNOPSIS

use TAP::Parser::Source;
my $source = TAP::Parser::Source->new;
my $stream = $source->source(['/usr/bin/ruby', 'mytest.rb'])->get_stream;

METHODS

Class Methods

new

my $source = TAP::Parser::Source->new;

Returns a new TAP::Parser::Source object.

Instance Methods

source

my $source = $source->source;
$source->source(['./some_prog some_test_file']);

# or
$source->source(['/usr/bin/ruby', 't/ruby_test.rb']);

Getter/setter for the source. The source should generally consist of an array reference of strings which, when executed via &IPC::Open3::open3, should return a filehandle which returns successive rows of TAP.

get_stream

my $stream = $source->get_stream;

Returns a stream of the output generated by executing source.

error

unless ( my $stream = $source->get_stream ) {
    die $source->error;
}

If a stream cannot be created, this method will return the error.

exit

my $exit = $source->exit;

Returns the exit status of the process if and only if an error occurs in opening the file.

merge

my $merge = $source->merge;

Sets or returns the flag that dictates whether STDOUT and STDERR are merged.