Sponsoring The Perl Toolchain Summit 2025: Help make this important event another success Learn more

NAME

Test::Stream::Bundle - Tools to help you write custom bundles.

DEPRECATED

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

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

DESCRIPTION

You can reduce your boilerplate by writing your own Test::Stream bundles. A bundle is a set of plugins that get loaded all at once to your specifications.

SYNOPSIS

use strict;
# Gives us an 'import' method that allows this module to be used directly
# if desired.
use Test::Stream::Bundle qw/import/;
sub plugins {
return (
qw{
IPC
TAP
ExitSummary
Core
Context
Exception
Warnings
Compare
Mock
},
);
}

EXPORTS

$class->import()

This import() method gets called when your plugin isused directly use Test::Stream::Bundle::MyBundle. Doing so will load all the specified plugins.

EXPECTED METHODS

@list = $class->plugins()

The plugins() method should return a list of plugins to load. It can also return coderefs which will be run with the original caller arrayref as their only argument.

sub plugins {
return (
qw/Core TAP .../,
sub {
my $caller = shift;
# Package, file, and line that requested the bundle be used.
my ($pkg, $file, $line) = @$caller;
...
},
);
}

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/