NAME
Pod::Coverage::Careful - more careful subclass of Pod::Coverage
SYNOPSIS
use Test::Pod::Coverage 1.08;
use Pod::Coverage::Careful;
pod_coverage_ok(
"Some::Module",
{
coverage_class => "Pod::Coverage::Careful",
},
"improved pod coverage on Some::Module",
);
DESCRIPTION
This module carefully subclasses Pod::Coverage to override its idea of which subs need to be documented. This catches several important cases that it misses.
The Pod::Coverage module doesn't count subs that appear to be imported as ones needing documentation. However, this also exempts subs that were generated dynamically, such as:
for my $color (qw(red blue green)) {
no strict "refs";
*$color = sub { print "I like $color.\n" };
}
By supplying "pod_coverage_ok" in Test::Pod::Coverage with a coverage_class
of "Pod::Coverage::Careful", those generated functions will now show up as in need of pod.
It also finds cases where subs are created by aliasing an old one of a different name:
*new_sub = \&old_sub;
This is true whether the alias is created form a sub in this same package, or if you're importing one of a different name.
One imports that are the same name as what they import are still exempted from pod requirements.
BUGS AND RESTRICTIONS
None noted.
SEE ALSO
- Pod::Coverage
-
Checks if the documentation of a module is comprehensive.
- Test::Pod::Coverage
-
Check for pod coverage in your distribution.
AUTHOR
Tom Christiansen <tchrist@perl.com>
LICENCE AND COPYRIGHT
Copyright (c) 2016, Tom Christiansen <tchrist@perl.com>
. All Rights Reserved.
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic.