|tests => NUMBER||
Specifies that in addition to the tests run by this module, your test
script will run additional tests. In other words, this value influences
the test plan. For example:
DEPRECATED FEATURE. I plan to remove this in the future unless Im contacted by someone that says they find this useful.
|only => STRING|LIST||
Specifies that only certain sets of tests are to be run. Possible values
are those mentioned in TEST TYPES below. For example, if you only want
to run the POD tests, you could say:
To specify that you only want to run the POD tests and the use tests, and also that you are going to run two tests of your own, use:
Note that when you specify the versions option, the use option is automatically added. This is because in order to get a modules $VERSION, it has to be loaded. In this case we might as well run a use test.
The value for only can be a string or a reference to a list of strings.
|not => STRING|LIST||
Specifies that certain types of tests should not be run. All tests not
mentioned in this argument are run. For example, if you want to test
everything except the POD, use:
The value for not can be a string or a reference to a list of strings. Although it doesnt seem to make much sense, you can use both only and not. In this case only the tests specified in only, but not not are run (if this makes any sense).
|distversion||If you test this to a true value, as well as testing that each module has a $VERSION defined, Test::Distribution will also ensure that the $VERSION matches that of the distribution.|
|podcoveropts||You can set this to be a hash reference of options to pass to Test::Pod::Coverages pod_coverage_ok method (which in turn gets passed to Pod::Coverage.|
Here is a description of the types of tests available.
description Checks that the following files exist:
Changes or ChangeLog MANIFEST README Build.PL or Makefile.PL prereq Checks whether all use()d modules that arent in the perl core are also mentioned in Makefile.PLs PREREQ_PM. pod Checks for POD errors in files podcover Checks for Pod Coverage sig If the distribution has a SIGNATURE file, checks the SIGNATURE matches the files. use This use()s the modules to make sure the load happens ok. versions Checks that all packages define $VERSION strings.
There are a few subroutines to help you see what this module is doing. Note that these subroutines are neither exported nor exportable, so you have to call them fully qualified.
Test::Distribution::packages() This is a list of packages that have been found. That is, we assume that each file contains a package of the name indicated by the files relative position. For example, a file in blib/lib/Foo/Bar.pm is expected to be available via use Foo::Bar. Test::Distribution::files() This is a list of files that tests have been run on. The filenames are relative to the distributions root directory, so they start with blib/lib. Test::Distribution::num_tests() This is the number of tests that this module has run, based on your specifications.
This module uses Module::Build for its installation. To install this module type the following:
perl Build.PL ./Build ./Build test ./Build install
If you do not have Module::Build type:
This module requires these other modules and libraries:
This module has these optional dependencies:
If Module::CoreList is missing, the prereq tests are skipped.
If Test::Pod is missing, the pod tests are skipped.
Just because these items are in the todo list, does not mean they will actually be done. If you think one of these would be helpful say so - and it will then move up on my priority list.
o Module::Build support [currently waiting for a fix on Test::Prereq ]
Let me know what you think of these ideas. Are they necessary? Unnecessary? Do you have feature requests of your own?
export test type This would mandate that there should be a test for each exported symbol of each module.
To report a bug or request an enhancement use CPANs excellent Request Tracker.
This source is part of a SourceForge project which always has the latest sources in svn.
Marcel Gruenauer <email@example.com>
Sagar R. Shah
This module was inspired by a use.perl.org journal entry by brian d foy (see <http://use.perl.org/~brian_d_foy/journal/7463>) where he describes an idea by Andy Lester.
Copyright 2002-2003 Marcel Gruenauer. All rights reserved.
Copyright 2003-2007, Sagar R. Shah, All rights reserved.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
perl(1), ExtUtils::Manifest(3pm), File::Find::Rule(3pm), Module::CoreList(3pm), Test::More(3pm), Test::Pod(3pm), Test::Pod::Coverage(3pm), Test::Signature(3pm).
|perl v5.20.3||TEST::DISTRIBUTION (3)||2016-03-17|