NAME
Test::Manifest - interact with a t/test_manifest file
SYNOPSIS
See the functions section.
DESCRIPTION
MakeMaker assumes that you want to run all of the .t files in the t/ directory in ascii-betical order during make test
unless you say otherwise. This leads to some interesting naming schemes for test files to get them in the desired order.
You can specify any order or any files that you like, though, with the test
directive to WriteMakefile.
Test::Manifest looks in the t/test_manifest file to find out which tests you want to run and the order in which you want to run them. It constructs the right value for MakeMaker to do the right thing.
FUNCTIONS
- run_t_manifest
-
Run all of the files in t/test_manifest through Test::Harness:runtests in the order they appear in the file.
If you want to use this, in Makefile.PL you need to override some MakeMaker magic (after you load ExtUtils::MakeMaker). I recommend putting something like this directly in Makefile.PL so it does not depend on anything else. A Makefile.PL with dependencies is a big headache.
sub ExtUtils::MM_Any::test_via_harness { my($self, $perl, $tests) = @_; return qq|\t$perl "-MTest::Manifest" | . qq|"-e" "run_t_manifest(\$(TEST_VERBOSE), '\$(INST_LIB)', | . qq|'\$(INST_ARCHLIB)')"\n|; }
- get_t_files()
-
In scalar context it returns a single string that you can use directly in WriteMakefile().
In list context it returns a list of the files it found in t/test_manifest.
If a t/test_manifest file does not exist, get_t_files() returns nothing.
get_t_files() warns you if it can't find t/test_manifest, or if entries start with "t/".
- make_test_manifest()
-
Creates the test_manifest file in the t directory by reading the contents of the t directory.
TO DO: specify tests in argument lists.
TO DO: specify files to skip.
- manifest_name
-
Returns the name of the test manifest file, relative to t/
SOURCE AVAILABILITY
This source is part of a SourceForge project which always has the latest sources in CVS, as well as all of the previous releases.
https://sourceforge.net/projects/brian-d-foy/
If, for some reason, I disappear from the world, one of the other members of the project can shepherd this module appropriately.
AUTHOR
brian d foy, <bdfoy@cpan.org<
COPYRIGHT
Copyright 2002, brian d foy, All Rights Reserved
You may use and distribute this module under the same terms as Perl itself