Acme-Test
view release on metacpan or search on metacpan
lib/Acme/Test.pm view on Meta::CPAN
my $href = {
CODE => { type => 'subroutine',
post => '()',
tests => [
'passed expected parameters',
'catches faulty input',
'works as expected with no input',
'return value OK',
]
},
SCALAR => { type => 'global scalar',
pre => '$',
tests => [
'available',
'initialized properly',
'content OK',
]
},
HASH => { type => 'global hash',
pre => '%',
tests => [
'available',
'initialized properly',
'contains all expected key/value pairs',
]
},
ARRAY => { type => 'global array',
pre => '@',
tests => [
'available',
'initialized properly',
'contains all expected elements',
]
},
IO => { type => 'global IO/Filehandle',
tests => [
'available',
'initialized properly',
]
},
FORMAT => { type => 'format',
tests => [
'available',
'prints ok',
]
lib/Acme/Test.pm view on Meta::CPAN
=head1 USE
Simply write
use Acme::Test 'Your::Module';
at the top of your test scrip, and everything else goes automatically.
C<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.
=head1 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
( run in 0.715 second using v1.01-cache-2.11-cpan-49f99fa48dc )