Test::CheckManifest.3pm

Langue: en

Version: 2010-02-17 (ubuntu - 24/10/10)

Section: 3 (Bibliothèques de fonctions)

NAME

Test::CheckManifest - Check if your Manifest matches your distro

SYNOPSIS

   use Test::CheckManifest;
   ok_manifest();
 
 

DESCRIPTION

"Test::CheckManifest"

EXPORT

There is only one method exported: "ok_manifest"

METHODS

ok_manifest [{exlude => $arref}][$msg]

checks whether the Manifest file matches the distro or not. To match a distro the Manifest has to name all files that come along with the distribution.

To check the Manifest file, this module searches for a file named "MANIFEST".

To exclude some directories from this test, you can specify these dirs in the hashref.

   ok_manifest({exclude => ['/var/test/']});
 
 

is ok if the files in "/path/to/your/dist/var/test/" are not named in the "MANIFEST" file. That means that the paths in the exclude array must be ``pseudo-absolute'' (absolute to your distribution).

To use a ``filter'' you can use the key ``filter''

   ok_manifest({filter => [qr/\.svn/]});
 
 

With that you can exclude all files with an '.svn' in the filename or in the path from the test.

These files would be excluded (as examples):

/dist/var/.svn/test
/dist/lib/test.svn

You can also combine ``filter'' and ``exclude'' with 'and' or 'or' default is 'or':

   ok_manifest({exclude => ['/var/test'], 
                filter  => [qr/\.svn/], 
                bool    => 'and'});
 
 

These files have to be named in the "MANIFEST":

/var/foo/.svn/any.file
/dist/t/file.svn
/var/test/test.txt

These files not:

/var/test/.svn/*
/var/test/file.svn

EXCLUDING FILES

Beside "filter" and "exclude" there is another way to exclude files: "MANIFEST.SKIP". This is a file with filenames that should be excluded:
   t/my_very_own.t
   file_to.skip
 
 

ACKNOWLEDGEMENT

Great thanks to Christopher H. Laco, who did a lot of testing stuff for me and he reported some bugs to RT.

AUTHOR

Renee Baecker, <module@renee-baecker.de> Copyright (C) 2006 - 2009 by Renee Baecker

This library is free software; you can redistribute it and/or modify it under the same terms as Artistic License 2.0