1App::Yath::Options::FinUdseerr(3C)ontributed Perl DocumeAnptpa:t:iYoanth::Options::Finder(3)
2
3
4
6 App::Yath::Options::Finder - Finder options for Yath.
7
9 This is where the command line options for discovering test files are
10 defined.
11
13 YATH OPTIONS (PRE-COMMAND)
14 Finder Options
15
16 --finder MyFinder
17 --finder +Test2::Harness::Finder::MyFinder
18 --no-finder
19 Specify what Finder subclass to use when searching for
20 files/processing the file list. Use the "+" prefix to specify a
21 fully qualified namespace, otherwise Test2::Harness::Finder::XXX
22 namespace is assumed.
23
24 COMMAND OPTIONS
25 Finder Options
26
27 --changed path/to/file
28 --no-changed
29 Specify one or more files as having been changed.
30
31 Can be specified multiple times
32
33 --changed-only
34 --no-changed-only
35 Only search for tests for changed files (Requires a coverage data
36 source, also requires a list of changes either from the --changed
37 option, or a plugin that implements changed_files() or
38 changed_diff())
39
40 --changes-diff path/to/diff.diff
41 --no-changes-diff
42 Path to a diff file that should be used to find changed files for
43 use with --changed-only. This must be in the same format as `git
44 diff -W --minimal -U1000000`
45
46 --changes-exclude-file path/to/file
47 --no-changes-exclude-file
48 Specify one or more files to ignore when looking at changes
49
50 Can be specified multiple times
51
52 --changes-exclude-loads
53 --no-changes-exclude-loads
54 Exclude coverage tests which only load changed files, but never
55 call code from them. (default: off)
56
57 --changes-exclude-nonsub
58 --no-changes-exclude-nonsub
59 Exclude changes outside of subroutines (perl files only) (default:
60 off)
61
62 --changes-exclude-opens
63 --no-changes-exclude-opens
64 Exclude coverage tests which only open() changed files, but never
65 call code from them. (default: off)
66
67 --changes-exclude-pattern '(apple|pear|orange)'
68 --no-changes-exclude-pattern
69 Ignore files matching this pattern when looking for changes. Your
70 pattern will be inserted unmodified into a `$file =~ m/$pattern/`
71 check.
72
73 Can be specified multiple times
74
75 --changes-filter-file path/to/file
76 --no-changes-filter-file
77 Specify one or more files to check for changes. Changes to other
78 files will be ignored
79
80 Can be specified multiple times
81
82 --changes-filter-pattern '(apple|pear|orange)'
83 --no-changes-filter-pattern
84 Specify a pattern for change checking. When only running tests for
85 changed files this will limit which files are checked for changes.
86 Only files that match this pattern will be checked. Your pattern
87 will be inserted unmodified into a `$file =~ m/$pattern/` check.
88
89 Can be specified multiple times
90
91 --changes-include-whitespace
92 --no-changes-include-whitespace
93 Include changed lines that are whitespace only (default: off)
94
95 --changes-plugin Git
96 --changes-plugin +App::Yath::Plugin::Git
97 --no-changes-plugin
98 What plugin should be used to detect changed files.
99
100 --default-at-search ARG
101 --default-at-search=ARG
102 --no-default-at-search
103 Specify the default file/dir search when 'AUTHOR_TESTING' is set.
104 Defaults to './xt'. The default AT search is only used if no files
105 were specified at the command line
106
107 Can be specified multiple times
108
109 --default-search ARG
110 --default-search=ARG
111 --no-default-search
112 Specify the default file/dir search. defaults to './t', './t2', and
113 'test.pl'. The default search is only used if no files were
114 specified at the command line
115
116 Can be specified multiple times
117
118 --durations file.json
119 --durations http://example.com/durations.json
120 --no-durations
121 Point at a json file or url which has a hash of relative test
122 filenames as keys, and 'SHORT', 'MEDIUM', or 'LONG' as values. This
123 will override durations listed in the file headers. An exception
124 will be thrown if the durations file or url does not work.
125
126 --durations-threshold ARG
127 --durations-threshold=ARG
128 --Dt ARG
129 --Dt=ARG
130 --no-durations-threshold
131 Only fetch duration data if running at least this number of tests.
132 Default (-j value + 1)
133
134 --exclude-file t/nope.t
135 --no-exclude-file
136 Exclude a file from testing
137
138 Can be specified multiple times
139
140 --exclude-list file.txt
141 --exclude-list http://example.com/exclusions.txt
142 --no-exclude-list
143 Point at a file or url which has a new line separated list of test
144 file names to exclude from testing. Starting a line with a '#' will
145 comment it out (for compatibility with Test2::Aggregate list
146 files).
147
148 Can be specified multiple times
149
150 --exclude-pattern t/nope.t
151 --no-exclude-pattern
152 Exclude a pattern from testing, matched using m/$PATTERN/
153
154 Can be specified multiple times
155
156 --extension ARG
157 --extension=ARG
158 --ext ARG
159 --ext=ARG
160 --no-extension
161 Specify valid test filename extensions, default: t and t2
162
163 Can be specified multiple times
164
165 --maybe-durations file.json
166 --maybe-durations http://example.com/durations.json
167 --no-maybe-durations
168 Point at a json file or url which has a hash of relative test
169 filenames as keys, and 'SHORT', 'MEDIUM', or 'LONG' as values. This
170 will override durations listed in the file headers. An exception
171 will be thrown if the durations file or url does not work.
172
173 --no-long
174 --no-no-long
175 Do not run tests that have their duration flag set to 'LONG'
176
177 --only-long
178 --no-only-long
179 Only run tests that have their duration flag set to 'LONG'
180
181 --rerun
182 --rerun=path/to/log.jsonl
183 --rerun=plugin_specific_string
184 --no-rerun
185 Re-Run tests from a previous run from a log file (or last log
186 file). Plugins can intercept this, such as YathUIDB which will grab
187 a run UUID and derive tests to re-run from that.
188
189 --rerun-failed
190 --rerun-failed=path/to/log.jsonl
191 --rerun-failed=plugin_specific_string
192 --no-rerun-failed
193 Re-Run failed tests from a previous run from a log file (or last
194 log file). Plugins can intercept this, such as YathUIDB which will
195 grab a run UUID and derive tests to re-run from that.
196
197 --rerun-plugin Foo
198 --rerun-plugin +App::Yath::Plugin::Foo
199 --no-rerun-plugin
200 What plugin(s) should be used for rerun (will fallback to other
201 plugins if the listed ones decline the value, this is just used ot
202 set an order of priority)
203
204 Can be specified multiple times
205
206 --search ARG
207 --search=ARG
208 --no-search
209 List of tests and test directories to use instead of the default
210 search paths. Typically these can simply be listed as command line
211 arguments without the --search prefix.
212
213 Can be specified multiple times
214
215 --show-changed-files
216 --no-show-changed-files
217 Print a list of changed files if any are found
218
220 The source code repository for Test2-Harness can be found at
221 http://github.com/Test-More/Test2-Harness/.
222
224 Chad Granum <exodist@cpan.org>
225
227 Chad Granum <exodist@cpan.org>
228
230 Copyright 2020 Chad Granum <exodist7@gmail.com>.
231
232 This program is free software; you can redistribute it and/or modify it
233 under the same terms as Perl itself.
234
235 See http://dev.perl.org/licenses/
236
237
238
239perl v5.34.1 2022-07-11 App::Yath::Options::Finder(3)