This file is indexed.

/usr/share/perl5/Test2/Manual/Testing.pm is in libtest2-suite-perl 0.000102-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
package Test2::Manual::Testing;
use strict;
use warnings;

our $VERSION = '0.000102';

1;

__END__

=head1 NAME

Test2::Manual::Testing - Hub for documentation about writing tests with Test2.

=head1 DESCRIPTION

This document outlines all the tutorials and POD that cover writing tests. This
section does not cover any Test2 internals, nor does it cover how to write new
tools, for that see L<Test2::Manual::Tooling>.

=head1 NAMESPACE MAP

When writing tests there are a couple namespaces to focus on:

=over 4

=item Test2::Tools::*

This is where toolsets can be found. A toolset exports functions that help you
make assertions about your code. Toolsets will only export functions, they
should not ever have extra/global effects.

=item Test2::Plugins::*

This is where plugins live. Plugins should not export anything, but instead
will introduce or alter behaviors for Test2 in general. These behaviors may be
lexically scoped, or they may be global.

=item Test2::Bundle::*

Bundles combine toolsets and plugins together to reduce your boilerplate. First
time test writers are encouraged to start with the L<Test2::V0> bundle (which
is an exception to the namespace rule as it does not live under
C<Test2::Bundle::>). If you find yourself loading several plugins and toolsets
over and over again you could benefit from writing your own bundle.

=item Test2::Require::*

This namespace contains modules that will cause a test to skip if specific
conditions are not met. Use this if you have tests that only run on specific
perl versions, or require external libraries that may not always be available.

=back

=head1 LISTING DEPENDENCIES

When you use L<Test2>, specifically things included in L<Test2::Suite> you need
to list them in your modules test dependencies. It is important to note that
you should list the tools/plugins/bundles you need, you should not simply list
L<Test2::Suite> as your dependency. L<Test2::Suite> is a living distribution
intended to represent the "current" best practices. As tools, plugins, and
bundles evolve, old ones will become discouraged and potentially be moved from
L<Test2::Suite> into their own distributions.

One goal of L<Test2::Suite> is to avoid breaking backwards compatibility.
Another goal is to always improve by replacing bad designs with better ones.
When necessary L<Test2::Suite> will break old modules out into separate dists
and define new ones, typically with a new bundle. In short, if we feel the need
to break something we will do so by creating a new bundle, and discouraging the
old one, but we will not break the old one.

So for example, if you use L<Test2::V0>, and L<Dist::Zilla> you
should have this in your config:

    [Prereqs / TestRequires]
    Test2::V0 = 0.000060

You B<SHOULD NOT> do this:

    [Prereqs / TestRequires]
    Test2::Suite = 0.000060

Because L<Test2::V0> might not always be part of L<Test2::Suite>.

When writing new tests you should often check L<Test2::Suite> to see what the
current recommended bundle is.

=head3 Dist::Zilla

    [Prereqs / TestRequires]
    Test2::V0 = 0.000060

=head3 ExtUtils::MakeMaker

    my %WriteMakefileArgs = (
      ...,
      "TEST_REQUIRES" => {
        "Test2::V0" => "0.000060"
      },
      ...
    );

=head3 Module::Install

    test_requires 'Test2::V0' => '0.000060';

=head3 Module::Build

    my $build = Module::Build->new(
        ...,
        test_requires => {
            "Test2::V0" => "0.000060",
        },
        ...
    );

=head1 TUTORIALS

=head2 SIMPLE/INTRODUCTION TUTORIAL

L<Test2::Manual::Testing::Introduction> is an introduction to writing tests
using the L<Test2> tools.

=head2 MIGRATING FROM TEST::BUILDER and TEST::MORE

L<Test2::Manual::Testing::Migrating> Is a tutorial for converting old tests
that use L<Test2::Builder> or L<Test::More> to the newer L<Test2> way of doing
things.

=head2 ADVANCED PLANNING

L<Test2::Manual::Testing::Planning> is a tutorial on the many ways to set a
plan.

=head2 TODO TESTS

L<Test2::Manual::Testing::Todo> is a tutorial for markings tests as TODO.

=head2 SUBTESTS

COMING SOON.

=head2 COMPARISONS

COMING SOON.

=head3 SIMPLE COMPARISONS

COMING SOON.

=head3 ADVANCED COMPARISONS

COMING SOON.

=head2 TESTING EXPORTERS

COMING SOON.

=head2 TESTING CLASSES

COMING SOON.

=head2 TRAPPING

COMING SOON.

=head3 TRAPPING EXCEPTIONS

COMING SOON.

=head3 TRAPPING WARNINGS

COMING SOON.

=head2 DEFERRED TESTING

COMING SOON.

=head2 MANAGING ENCODINGS

COMING SOON.

=head2 AUTO-ABORT ON FAILURE

COMING SOON.

=head2 CONTROLLING RANDOM BEHAVIOR

COMING SOON.

=head2 WRITING YOUR OWN BUNDLE

COMING SOON.

=head1 TOOLSET DOCUMENTATION

COMING SOON.

=head1 PLUGIN DOCUMENTATION

COMING SOON.

=head1 BUNDLE DOCUMENTATION

COMING SOON.

=head1 REQUIRE DOCUMENTATION

COMING SOON.

=head1 SEE ALSO

L<Test2::Manual> - Primary index of the manual.

=head1 SOURCE

The source code repository for Test2-Manual can be found at
F<https://github.com/Test-More/Test2-Suite/>.

=head1 MAINTAINERS

=over 4

=item Chad Granum E<lt>exodist@cpan.orgE<gt>

=back

=head1 AUTHORS

=over 4

=item Chad Granum E<lt>exodist@cpan.orgE<gt>

=back

=head1 COPYRIGHT

Copyright 2017 Chad Granum E<lt>exodist@cpan.orgE<gt>.

This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.

See F<http://dev.perl.org/licenses/>

=cut