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

NAME

Acme::Test

SYNOPSIS

    use Acme::Test qw[Your::Module Your::Other::Module];

DESCRIPTION

All the latest software craze is about regression tests and XP programming -- Write a test, make sure it fails. Then write the functionality and make sure the test now passes, etc. Although these are good ideas, who really has time for this? Fixing faililng tests is a lot of work, and one can only be happy with a test suite that has no fails.

Enter Acme::Test -- automate test-suite generation with guaranteed passing tests for your modules!

USE

Simply write

    use Acme::Test 'Your::Module';

at the top of your test scrip, and everything else goes automatically.

Acme::Test will not only 'test' your subroutines, but also any global variables and even IO and format handles! It will also make a distinction between public and private subroutines/variables.

EXAMPLE

Imagine your test.pl script would look something like this:

    use lib '../devel/file-basename/lib';
    use Acme::Test 'File::Basename';

Then the resulting test output would look pretty much like this:

        # Testing File::Basename
        # [Public] Testing global array @File::Basename::EXPORT
        ok 1 -     @EXPORT available
        ok 2 -     @EXPORT initialized properly
        ok 3 -     @EXPORT contains all expected elements
        # [Public] Testing global scalar $File::Basename::Fileparse_fstype
        ok 4 -     $Fileparse_fstype available
        ok 5 -     $Fileparse_fstype initialized properly
        ok 6 -     $Fileparse_fstype content OK
        # [Public] Testing global scalar $File::Basename::Fileparse_igncase
        ok 7 -     $Fileparse_igncase available
        ok 8 -     $Fileparse_igncase initialized properly
        ok 9 -     $Fileparse_igncase content OK
        # [Public] Testing global array @File::Basename::ISA
        ok 10 -     @ISA available
        ok 11 -     @ISA initialized properly
        ok 12 -     @ISA contains all expected elements
        # [Public] Testing global scalar $File::Basename::VERSION
        ok 13 -     $VERSION available
        ok 14 -     $VERSION initialized properly
        ok 15 -     $VERSION content OK
        # [Public] Testing subroutine File::Basename::basename()
        ok 16 -     basename() passed expected parameters
        ok 17 -     basename() catches faulty input
        ok 18 -     basename() works as expected with no input
        ok 19 -     basename() return value OK
        # [Public] Testing subroutine File::Basename::dirname()
        ok 20 -     dirname() passed expected parameters
        ok 21 -     dirname() catches faulty input
        ok 22 -     dirname() works as expected with no input
        ok 23 -     dirname() return value OK
        # [Public] Testing subroutine File::Basename::fileparse()
        ok 24 -     fileparse() passed expected parameters
        ok 25 -     fileparse() catches faulty input
        ok 26 -     fileparse() works as expected with no input
        ok 27 -     fileparse() return value OK
        # [Public] Testing subroutine File::Basename::fileparse_set_fstype()
        ok 28 -     fileparse_set_fstype() passed expected parameters
        ok 29 -     fileparse_set_fstype() catches faulty input
        ok 30 -     fileparse_set_fstype() works as expected with no input
        ok 31 -     fileparse_set_fstype() return value OK
        1..31

BUGS

In code this funky, I'm sure there are some ;)

AUTHOR

This module by Jos Boumans <kane@cpan.org>.

COPYRIGHT

This module is copyright (c) 2002 Jos Boumans <kane@cpan.org>. All rights reserved.

This library is free software; you may redistribute and/or modify it under the same terms as Perl itself.