NAME

Test::Stream::Plugin::Capture - Plugin for capturing STDERR and STDOUT.

DEPRECATED

This distribution is deprecated in favor of Test2, Test2::Suite, and Test2::Workflow.

See Test::Stream::Manual::ToTest2 for a conversion guide.

DESCRIPTION

This plugin provides the capture { ... } function which can be used to capture all STDERR and STDOUT output from the code in the provided codeblock. This will not intercept TAP output from Test::Stream itself, so it is safe to run tests within the block.

SYNOPSIS

is(
    capture {
        print STDERR "First STDERR\n";
        print STDOUT "First STDOUT\n";
        print STDERR "Second STDERR\n";
        print STDOUT "Second STDOUT\n";
    },
    {
        STDOUT => "First STDOUT\nSecond STDOUT\n",
        STDERR => "First STDERR\nSecond STDERR\n",
    },
    "Captured stdout and stderr"
);

EXPORTS

$out = capture { ... }

Captures all STDERR and STDOUT output within the codeblock. $out will be a hashref with STDERR and STDOUT as keys. All output is combined into a single string per handle.

SOURCE

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

MAINTAINERS

Chad Granum <exodist@cpan.org>

AUTHORS

Chad Granum <exodist@cpan.org>

COPYRIGHT

Copyright 2015 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/