Test::Manifest - interact with a t/test_manifest file
See the functions section.
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.
make test
You can specify any order or any files that you like, though, with the test directive to WriteMakefile.
test
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.
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.
eval "use Test::Manifest"; unless( $@ ) { * ExtUtils::MM_Any::test_via_harness = sub { 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/
This source is part of a SourceForge project which always has the latest sources in CVS, as well as all of the previous releases.
http://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.
brian d foy, <bdfoy@cpan.org>
brian d foy
Copyright 2002-2004, brian d foy, All Rights Reserved
You may use and distribute this module under the same terms as Perl itself
To install Test::Manifest, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Test::Manifest
CPAN shell
perl -MCPAN -e shell install Test::Manifest
For more information on module installation, please visit the detailed CPAN module installation guide.