Add built local::lib
[catagits/Gitalist.git] / local-lib5 / man / man3 / Test::Pod::Coverage.3pm
1 .\" Automatically generated by Pod::Man 2.22 (Pod::Simple 3.10)
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sp \" Vertical space (when we can't use .PP)
6 .if t .sp .5v
7 .if n .sp
8 ..
9 .de Vb \" Begin verbatim text
10 .ft CW
11 .nf
12 .ne \\$1
13 ..
14 .de Ve \" End verbatim text
15 .ft R
16 .fi
17 ..
18 .\" Set up some character translations and predefined strings.  \*(-- will
19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
20 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
21 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
22 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
23 .\" nothing in troff, for use with C<>.
24 .tr \(*W-
25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
26 .ie n \{\
27 .    ds -- \(*W-
28 .    ds PI pi
29 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
30 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
31 .    ds L" ""
32 .    ds R" ""
33 .    ds C` ""
34 .    ds C' ""
35 'br\}
36 .el\{\
37 .    ds -- \|\(em\|
38 .    ds PI \(*p
39 .    ds L" ``
40 .    ds R" ''
41 'br\}
42 .\"
43 .\" Escape single quotes in literal strings from groff's Unicode transform.
44 .ie \n(.g .ds Aq \(aq
45 .el       .ds Aq '
46 .\"
47 .\" If the F register is turned on, we'll generate index entries on stderr for
48 .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
49 .\" entries marked with X<> in POD.  Of course, you'll have to process the
50 .\" output yourself in some meaningful fashion.
51 .ie \nF \{\
52 .    de IX
53 .    tm Index:\\$1\t\\n%\t"\\$2"
54 ..
55 .    nr % 0
56 .    rr F
57 .\}
58 .el \{\
59 .    de IX
60 ..
61 .\}
62 .\"
63 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
64 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
65 .    \" fudge factors for nroff and troff
66 .if n \{\
67 .    ds #H 0
68 .    ds #V .8m
69 .    ds #F .3m
70 .    ds #[ \f1
71 .    ds #] \fP
72 .\}
73 .if t \{\
74 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
75 .    ds #V .6m
76 .    ds #F 0
77 .    ds #[ \&
78 .    ds #] \&
79 .\}
80 .    \" simple accents for nroff and troff
81 .if n \{\
82 .    ds ' \&
83 .    ds ` \&
84 .    ds ^ \&
85 .    ds , \&
86 .    ds ~ ~
87 .    ds /
88 .\}
89 .if t \{\
90 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
91 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
92 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
93 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
94 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
95 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
96 .\}
97 .    \" troff and (daisy-wheel) nroff accents
98 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
99 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
100 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
101 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
102 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
103 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
104 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
105 .ds ae a\h'-(\w'a'u*4/10)'e
106 .ds Ae A\h'-(\w'A'u*4/10)'E
107 .    \" corrections for vroff
108 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
109 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
110 .    \" for low resolution devices (crt and lpr)
111 .if \n(.H>23 .if \n(.V>19 \
112 \{\
113 .    ds : e
114 .    ds 8 ss
115 .    ds o a
116 .    ds d- d\h'-1'\(ga
117 .    ds D- D\h'-1'\(hy
118 .    ds th \o'bp'
119 .    ds Th \o'LP'
120 .    ds ae ae
121 .    ds Ae AE
122 .\}
123 .rm #[ #] #H #V #F C
124 .\" ========================================================================
125 .\"
126 .IX Title "Coverage 3"
127 .TH Coverage 3 "2006-01-26" "perl v5.8.7" "User Contributed Perl Documentation"
128 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
129 .\" way too many mistakes in technical documents.
130 .if n .ad l
131 .nh
132 .SH "NAME"
133 Test::Pod::Coverage \- Check for pod coverage in your distribution.
134 .SH "VERSION"
135 .IX Header "VERSION"
136 Version 1.08
137 .SH "SYNOPSIS"
138 .IX Header "SYNOPSIS"
139 Checks for \s-1POD\s0 coverage in files for your distribution.
140 .PP
141 .Vb 2
142 \&    use Test::Pod::Coverage tests=>1;
143 \&    pod_coverage_ok( "Foo::Bar", "Foo::Bar is covered" );
144 .Ve
145 .PP
146 Can also be called with Pod::Coverage parms.
147 .PP
148 .Vb 6
149 \&    use Test::Pod::Coverage tests=>1;
150 \&    pod_coverage_ok(
151 \&        "Foo::Bar",
152 \&        { also_private => [ qr/^[A\-Z_]+$/ ], },
153 \&        "Foo::Bar, with all\-caps functions as privates",
154 \&    );
155 .Ve
156 .PP
157 The Pod::Coverage parms are also useful for subclasses that don't
158 re-document the parent class's methods.  Here's an example from
159 Mail::SRS.
160 .PP
161 .Vb 1
162 \&    pod_coverage_ok( "Mail::SRS" ); # No exceptions
163 \&
164 \&    # Define the three overridden methods.
165 \&    my $trustme = { trustme => [qr/^(new|parse|compile)$/] };
166 \&    pod_coverage_ok( "Mail::SRS::DB", $trustme );
167 \&    pod_coverage_ok( "Mail::SRS::Guarded", $trustme );
168 \&    pod_coverage_ok( "Mail::SRS::Reversable", $trustme );
169 \&    pod_coverage_ok( "Mail::SRS::Shortcut", $trustme );
170 .Ve
171 .PP
172 Alternately, you could use Pod::Coverage::CountParents, which always allows
173 a subclass to reimplement its parents' methods without redocumenting them.  For
174 example:
175 .PP
176 .Vb 2
177 \&    my $trustparents = { coverage_class => \*(AqPod::Coverage::CountParents\*(Aq };
178 \&    pod_coverage_ok( "IO::Handle::Frayed", $trustparents );
179 .Ve
180 .PP
181 (The \f(CW\*(C`coverage_class\*(C'\fR parameter is not passed to the coverage class with other
182 parameters.)
183 .PP
184 If you want \s-1POD\s0 coverage for your module, but don't want to make
185 Test::Pod::Coverage a prerequisite for installing, create the following
186 as your \fIt/pod\-coverage.t\fR file:
187 .PP
188 .Vb 3
189 \&    use Test::More;
190 \&    eval "use Test::Pod::Coverage";
191 \&    plan skip_all => "Test::Pod::Coverage required for testing pod coverage" if $@;
192 \&
193 \&    plan tests => 1;
194 \&    pod_coverage_ok( "Pod::Master::Html");
195 .Ve
196 .PP
197 Finally, Module authors can include the following in a \fIt/pod\-coverage.t\fR
198 file and have \f(CW\*(C`Test::Pod::Coverage\*(C'\fR automatically find and check all
199 modules in the module distribution:
200 .PP
201 .Vb 4
202 \&    use Test::More;
203 \&    eval "use Test::Pod::Coverage 1.00";
204 \&    plan skip_all => "Test::Pod::Coverage 1.00 required for testing POD coverage" if $@;
205 \&    all_pod_coverage_ok();
206 .Ve
207 .SH "FUNCTIONS"
208 .IX Header "FUNCTIONS"
209 All functions listed below are exported to the calling namespace.
210 .ie n .SS "all_pod_coverage_ok( [$parms, ] $msg )"
211 .el .SS "all_pod_coverage_ok( [$parms, ] \f(CW$msg\fP )"
212 .IX Subsection "all_pod_coverage_ok( [$parms, ] $msg )"
213 Checks that the \s-1POD\s0 code in all modules in the distro have proper \s-1POD\s0
214 coverage.
215 .PP
216 If the \fI\f(CI$parms\fI\fR hashref if passed in, they're passed into the
217 \&\f(CW\*(C`Pod::Coverage\*(C'\fR object that the function uses.  Check the
218 Pod::Coverage manual for what those can be.
219 .PP
220 The exception is the \f(CW\*(C`coverage_class\*(C'\fR parameter, which specifies a class to
221 use for coverage testing.  It defaults to \f(CW\*(C`Pod::Coverage\*(C'\fR.
222 .ie n .SS "pod_coverage_ok( $module, [$parms, ] $msg )"
223 .el .SS "pod_coverage_ok( \f(CW$module\fP, [$parms, ] \f(CW$msg\fP )"
224 .IX Subsection "pod_coverage_ok( $module, [$parms, ] $msg )"
225 Checks that the \s-1POD\s0 code in \fI\f(CI$module\fI\fR has proper \s-1POD\s0 coverage.
226 .PP
227 If the \fI\f(CI$parms\fI\fR hashref if passed in, they're passed into the
228 \&\f(CW\*(C`Pod::Coverage\*(C'\fR object that the function uses.  Check the
229 Pod::Coverage manual for what those can be.
230 .PP
231 The exception is the \f(CW\*(C`coverage_class\*(C'\fR parameter, which specifies a class to
232 use for coverage testing.  It defaults to \f(CW\*(C`Pod::Coverage\*(C'\fR.
233 .SS "all_modules( [@dirs] )"
234 .IX Subsection "all_modules( [@dirs] )"
235 Returns a list of all modules in \fI\f(CI$dir\fI\fR and in directories below. If
236 no directories are passed, it defaults to \fIblib\fR if \fIblib\fR exists,
237 or \fIlib\fR if not.
238 .PP
239 Note that the modules are as \*(L"Foo::Bar\*(R", not \*(L"Foo/Bar.pm\*(R".
240 .PP
241 The order of the files returned is machine-dependent.  If you want them
242 sorted, you'll have to sort them yourself.
243 .SH "BUGS"
244 .IX Header "BUGS"
245 Please report any bugs or feature requests to
246 \&\f(CW\*(C`bug\-test\-pod\-coverage at rt.cpan.org\*(C'\fR, or through the web interface at
247 <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Test\-Pod\-Coverage>.
248 I will be notified, and then you'll automatically be notified of progress on
249 your bug as I make changes.
250 .SH "SUPPORT"
251 .IX Header "SUPPORT"
252 You can find documentation for this module with the perldoc command.
253 .PP
254 .Vb 1
255 \&    perldoc Test::Pod::Coverage
256 .Ve
257 .PP
258 You can also look for information at:
259 .IP "\(bu" 4
260 AnnoCPAN: Annotated \s-1CPAN\s0 documentation
261 .Sp
262 <http://annocpan.org/dist/Test\-Pod\-Coverage>
263 .IP "\(bu" 4
264 \&\s-1CPAN\s0 Ratings
265 .Sp
266 <http://cpanratings.perl.org/d/Test\-Pod\-Coverage>
267 .IP "\(bu" 4
268 \&\s-1RT:\s0 \s-1CPAN\s0's request tracker
269 .Sp
270 <http://rt.cpan.org/NoAuth/Bugs.html?Dist=Test\-Pod\-Coverage>
271 .IP "\(bu" 4
272 Search \s-1CPAN\s0
273 .Sp
274 <http://search.cpan.org/dist/Test\-Pod\-Coverage>
275 .SH "AUTHOR"
276 .IX Header "AUTHOR"
277 Written by Andy Lester, \f(CW\*(C`<andy at petdance.com>\*(C'\fR.
278 .SH "ACKNOWLEDGEMENTS"
279 .IX Header "ACKNOWLEDGEMENTS"
280 Thanks to Ricardo Signes for patches, and Richard Clamp for
281 writing Pod::Coverage.
282 .SH "COPYRIGHT & LICENSE"
283 .IX Header "COPYRIGHT & LICENSE"
284 Copyright 2006, Andy Lester, All Rights Reserved.
285 .PP
286 You may use, modify, and distribute this package under the
287 same terms as Perl itself.