Test::Compile::Internal - Test whether your perl files compile.
use Test::Compile::Internal; my $test = Test::Compile::Internal->new(); $test->all_files_ok(); $test->done_testing();
Test::Compile::Internal is an object oriented tool for testing whether your perl files compile.
Test::Compile::Internal
It is primarily to provide the inner workings of Test::Compile, but it can also be used directly to test a CPAN distribution.
Test::Compile
new()
A basic constructor, nothing special.
all_files_ok(@dirs)
Checks all the perl files it can find for compilation errors.
If @dirs is 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()".
@dirs
verbose($verbose)
An accessor to get/set the verbose flag. If verbose is set, you can get some extra diagnostics when compilation fails.
verbose
Verbose is set on by default.
all_pm_files(@dirs)
Returns a list of all the perl module files - that is any files ending in .pm in @dirs and in directories below. If @dirs is undefined, it searches blib if blib exists, or else lib.
Skips any files in CVS or .svn directories.
CVS
.svn
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 in @dirs that either have a .pl extension, or have no extension and have a perl shebang line.
If @dirs is undefined, it searches script if script exists, or else bin if bin exists.
pl_file_compiles($file)
Returns true if $file compiles as a perl script.
$file
pm_file_compiles($file)
Returns true if $file compiles as a perl module.
Test::Compile::Internal encapsulates a Test::Builder object, and provides access to some of its methods.
Test::Builder
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 $test is true, fail if $test is false. Just like Test::Simple's ok().
$test
Test::Simple
ok()
plan($count)
Defines how many tests you plan to run.
exported_to($caller)
Tells Test::Builder what 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.
@msgs
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($reason)
Skips the current test, reporting the $reason.
$reason
skip_all($reason)
Skips all the tests, using the given $reason. Exits immediately with 0.
Sagar R. Shah <srshah@cpan.org>, Marcel Grünauer, <marcel@cpan.org>, Evan Giles, <egiles@cpan.org>
<srshah@cpan.org>
<marcel@cpan.org>
<egiles@cpan.org>
Copyright 2007-2014 by the authors.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
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.
To install Test::Compile, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Test::Compile
CPAN shell
perl -MCPAN -e shell install Test::Compile
For more information on module installation, please visit the detailed CPAN module installation guide.