1Test::Pod::No404s(3pm)User Contributed Perl DocumentationTest::Pod::No404s(3pm)
2
3
4
6 Test::Pod::No404s - Using this test module will check your POD for any
7 http 404 links
8
10 This document describes v0.02 of Test::Pod::No404s - released November 01, 2014 as part of Test-Pod-No404s.
11
13 #!/usr/bin/perl
14 use strict; use warnings;
15
16 use Test::More;
17
18 eval "use Test::Pod::No404s";
19 if ( $@ ) {
20 plan skip_all => 'Test::Pod::No404s required for testing POD';
21 } else {
22 all_pod_files_ok();
23 }
24
26 This module looks for any http(s) links in your POD and verifies that
27 they will not return a 404. It uses LWP::UserAgent for the heavy
28 lifting, and simply lets you know if it failed to retrieve the
29 document. More specifically, it uses $response->is_error as the "test."
30
31 This module does NOT check "pod" or "man" links like "L<Test::Pod>" in
32 your pod. For that, please check out Test::Pod::LinkCheck.
33
34 Normally, you wouldn't want this test to be run during end-user
35 installation because they might have no internet! It is HIGHLY
36 recommended that this be used only for module authors' RELEASE_TESTING
37 phase. To do that, just modify the synopsis to add an env check :)
38
40 pod_file_ok
41 "pod_file_ok()" will okay the test if there is no http(s) links present
42 in the POD or if all links are not an error. Furthermore, if the POD
43 was malformed as reported by Pod::Simple, the test will fail and not
44 attempt to check the links.
45
46 When it fails, "pod_file_ok()" will show any failing links as
47 diagnostics.
48
49 The optional second argument TESTNAME is the name of the test. If it
50 is omitted, "pod_file_ok()" chooses a default test name "404 test for
51 FILENAME".
52
53 all_pod_files_ok
54 This function is what you will usually run. It automatically finds any
55 POD in your distribution and runs checks on them.
56
57 Accepts an optional argument: an array of files to check. By default it
58 checks all POD files it can find in the distribution. Every file it
59 finds is passed to the "pod_file_ok" function.
60
62 Automatically exports the two subs.
63
65 Please see those modules/websites for more information related to this
66 module.
67
68 • Test::Pod::LinkCheck
69
71 Perldoc
72 You can find documentation for this module with the perldoc command.
73
74 perldoc Test::Pod::No404s
75
76 Websites
77 The following websites have more information about this module, and may
78 be of help to you. As always, in addition to those websites please use
79 your favorite search engine to discover more resources.
80
81 • MetaCPAN
82
83 A modern, open-source CPAN search engine, useful to view POD in
84 HTML format.
85
86 <http://metacpan.org/release/Test-Pod-No404s>
87
88 • Search CPAN
89
90 The default CPAN search engine, useful to view POD in HTML format.
91
92 <http://search.cpan.org/dist/Test-Pod-No404s>
93
94 • RT: CPAN's Bug Tracker
95
96 The RT ( Request Tracker ) website is the default bug/issue
97 tracking system for CPAN.
98
99 <http://rt.cpan.org/NoAuth/Bugs.html?Dist=Test-Pod-No404s>
100
101 • AnnoCPAN
102
103 The AnnoCPAN is a website that allows community annotations of Perl
104 module documentation.
105
106 <http://annocpan.org/dist/Test-Pod-No404s>
107
108 • CPAN Ratings
109
110 The CPAN Ratings is a website that allows community ratings and
111 reviews of Perl modules.
112
113 <http://cpanratings.perl.org/d/Test-Pod-No404s>
114
115 • CPAN Forum
116
117 The CPAN Forum is a web forum for discussing Perl modules.
118
119 <http://cpanforum.com/dist/Test-Pod-No404s>
120
121 • CPANTS
122
123 The CPANTS is a website that analyzes the Kwalitee ( code metrics )
124 of a distribution.
125
126 <http://cpants.cpanauthors.org/dist/overview/Test-Pod-No404s>
127
128 • CPAN Testers
129
130 The CPAN Testers is a network of smokers who run automated tests on
131 uploaded CPAN distributions.
132
133 <http://www.cpantesters.org/distro/T/Test-Pod-No404s>
134
135 • CPAN Testers Matrix
136
137 The CPAN Testers Matrix is a website that provides a visual
138 overview of the test results for a distribution on various
139 Perls/platforms.
140
141 <http://matrix.cpantesters.org/?dist=Test-Pod-No404s>
142
143 • CPAN Testers Dependencies
144
145 The CPAN Testers Dependencies is a website that shows a chart of
146 the test results of all dependencies for a distribution.
147
148 <http://deps.cpantesters.org/?module=Test::Pod::No404s>
149
150 Email
151 You can email the author of this module at "APOCAL at cpan.org" asking
152 for help with any problems you have.
153
154 Internet Relay Chat
155 You can get live help by using IRC ( Internet Relay Chat ). If you
156 don't know what IRC is, please read this excellent guide:
157 <http://en.wikipedia.org/wiki/Internet_Relay_Chat>. Please be courteous
158 and patient when talking to us, as we might be busy or sleeping! You
159 can join those networks/channels and get help:
160
161 • irc.perl.org
162
163 You can connect to the server at 'irc.perl.org' and join this
164 channel: #perl-help then talk to this person for help: Apocalypse.
165
166 • irc.freenode.net
167
168 You can connect to the server at 'irc.freenode.net' and join this
169 channel: #perl then talk to this person for help: Apocal.
170
171 • irc.efnet.org
172
173 You can connect to the server at 'irc.efnet.org' and join this
174 channel: #perl then talk to this person for help: Ap0cal.
175
176 Bugs / Feature Requests
177 Please report any bugs or feature requests by email to
178 "bug-test-pod-no404s at rt.cpan.org", or through the web interface at
179 <http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Test-Pod-No404s>. You
180 will be automatically notified of any progress on the request by the
181 system.
182
183 Source Code
184 The code is open to the world, and available for you to hack on. Please
185 feel free to browse it and play with it, or whatever. If you want to
186 contribute patches, please send me a diff or prod me to pull from your
187 repository :)
188
189 <https://github.com/apocalypse/perl-test-pod-no404s>
190
191 git clone git://github.com/apocalypse/perl-test-pod-no404s.git
192
194 Apocalypse <APOCAL@cpan.org>
195
197 This software is copyright (c) 2014 by Apocalypse.
198
199 This is free software; you can redistribute it and/or modify it under
200 the same terms as the Perl 5 programming language system itself.
201
202 The full text of the license can be found in the LICENSE file included
203 with this distribution.
204
206 THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
207 APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
208 HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT
209 WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT
210 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
211 PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE
212 OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU
213 ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
214
215 IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
216 WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR
217 CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
218 INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES
219 ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT
220 NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES
221 SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO
222 OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY
223 HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
224
225
226
227perl v5.32.1 2021-01-27 Test::Pod::No404s(3pm)