The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Test::Stream::Workflow::Meta - Meta-data for tests using workflows

EXPERIMENTAL CODE WARNING

This module is still EXPERIMENTAL. Test-Stream is now stable, but this particular module is still experimental. You are still free to use this module, but you have been warned that it may change in backwords incompatible ways. This message will be removed from this modules POD once it is considered stable.

DESCRIPTION

When a test package uses workflows it needs a place to hold the primary unit. This meta-data holds the primary unit for test packages. It also takes care of ensuring they get run at the correct times.

METHODS

CLASS METHODS

$meta = $CLASS->build($pkg, $file, $start_line, $end_line)

Create a meta-instance for the specified package. If one already exists it will return the existing one instead, ignoring all arguments other than $pkg.

$meta = $CLASS->get($pkg)

Get the existing meta-instance for the specified package. This will return undef if none exists.

$meta = $CLASS->purge($pkg)

Delete the meta-instance for the specified package. The instance will be returned, but will no longer be tied to the package.

OBJECT METHODS

$unit = $meta->unit
$meta->set_unit($unit)

Get/Set the associated unit (Test::Stream::Workflow::Unit).

$runner = $meta->runner
$meta->set_runner($runner)

Get/Set the runner to use (Test::Stream::Workflow::Runner).

$ar = $meta->runner_args
$meta->set_runner_args([...])

Get/Set the args arrayref to be passed to the runner.

$bool = $meta->autorun
$meta->set_autorun($bool)

Defaults to true. Set this to 0 to turn off automatic running of the workflow.

$meta->run()

Run the workflow.

$meta->purge()

Remove the meta object from the package it was created for.

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://www.perl.com/perl/misc/Artistic.html