NAME
Test::Compile::Internal - Test whether your perl files compile.
SYNOPSIS
use Test::Compile::Internal;
my $test = Test::Compile::Internal->new();
$test->all_files_ok();
$test->done_testing();
DESCRIPTION
Test::Compile::Internal is an object oriented tool for testing whether your perl files compile.
It is primarily to provide the inner workings of Test::Compile, but it can also be used directly to test a CPAN distribution.
METHODS
new()-
A basic constructor, nothing special.
all_files_ok(@dirs)-
Checks all the perl files it can find for compilation errors.
If
@dirsis defined then it is taken as an array of directories to be searched for perl files, otherwise it searches some default locatioons - see "all_pm_files()" and "all_pl_files()". verbose($verbose)-
An accessor to get/set the verbose flag. If
verboseis set, you can get some extra diagnostics when compilation fails.Verbose is set off by default.
all_pm_files(@dirs)-
Returns a list of all the perl module files - that is any files ending in .pm in
@dirsand in directories below. If@dirsis undefined, it searches blib if blib exists, or else lib.Skips any files in
CVSor.svndirectories.The order of the files returned is machine-dependent. If you want them sorted, you'll have to sort them yourself.
all_pl_files(@dirs)-
Returns a list of all the perl script files - that is, any files ending in .pl or files with no extension in
@dirsand in directories below. If@dirsis undefined, it searches script if script exists, or else bin if bin exists.Skips any files in
CVSor.svndirectories.The order of the files returned is machine-dependent. If you want them sorted, you'll have to sort them yourself.
pl_file_compiles($file)-
Returns true if
$filecompiles as a perl script. pm_file_compiles($file)-
Returns true if
$filecompiles as a perl module.
TEST METHODS
Test::Compile::Internal encapsulates a Test::Builder object, and provides access to some of its methods.
done_testing()-
Declares that you are done testing, no more tests will be run after this point.
ok($test,$name)-
Your basic test. Pass if
$testis true, fail if$testis false. Just likeTest::Simple'sok(). plan($count)-
Defines how many tests you plan to run.
exported_to($caller)-
Tells
Test::Builderwhat package you exported your functions to. I am not sure why you would want to do that, or whether it would do you any good. diag(@msgs)-
Prints out the given
@msgs. Like print, arguments are simply appended together.Output will be indented and marked with a # so as not to interfere with test output. A newline will be put on the end if there isn't one already.
We encourage using this rather than calling print directly.
skip($why)-
Skips the current test, reporting
$why. skip_all($reason)-
Skips all the tests, using the given
$reason. Exits immediately with 0.
AUTHORS
Sagar R. Shah <srshah@cpan.org>, Marcel Grünauer, <marcel@cpan.org>, Evan Giles, <egiles@cpan.org>
COPYRIGHT AND LICENSE
Copyright 2007-2012 by the authors.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
SEE ALSO
Test::Strict proveds functions to ensure your perl files comnpile, with the added bonus that it will check you have used strict in all your files.