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

NAME

POE::Test::Loops - Reusable tests for POE::Loop authors

SYNOPSIS

    #!/usr/bin/perl -w

    use strict;
    use Getopt::Long;
    use POE::Test::Loops;

    my ($dir_base, $flag_help, @loop_modules, $flag_verbose);
    my $result = GetOptions(
            'dirbase=s' => \$dir_base,
            'loop=s' => \@loop_modules,
            'verbose' => \$flag_verbose,
            'help' => \$flag_help,
    );

    if (
            !$result or !$dir_base or $flag_help or !@loop_modules
    ) {
            die(
                    "$0 usage:\n",
                    "  --dirbase DIR   (required) base directory for tests\n",
                    "  --loop MODULE   (required) loop modules to test\n",
                    "  --verbose   show some extra output\n",
                    "  --help   you're reading it\n",
            );
    }

    POE::Test::Loops::generate($dir_base, \@loop_modules, $flag_verbose);
    exit 0;

DESCRIPTION

POE::Test::Loops contains one function, generate(), which will generate all the loop tests for one or more POE::Loop subclasses.

The "SYNOPSIS" example is a version of poe-gen-tests, which is a stand-alone utility to generate the actual tests. poe-gen-tests also documents the POE::Test::Loops system in more detail.

FUNCTIONS

generate( $DIRBASE, \@LOOPS, $VERBOSE )

Generates the loop tests. DIRBASE is the (relative) directory in which a subdirectory for each of the LOOPS is created. If VERBOSE is set to a TRUE value some progress reporting is printed.

    POE::Test::Loops::generate(
            "./t",
            [ "POE::Loop::Yours" ],
            1,
    );

SEE ALSO

POE::Loop and poe-gen-tests.

AUTHOR & COPYRIGHT

See poe-gen-tests.