gnu: Simplify package inputs.
[jackhill/guix/guix.git] / gnu / packages / perl-check.scm
CommitLineData
5ccde207
RW
1;;; GNU Guix --- Functional package management for GNU
2;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org>
3;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
4;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
5;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
3c986a7d 6;;; Copyright © 2016 Nikita <nikita@n0.is>
6b1fb33b 7;;; Copyright © 2016, 2017, 2019, 2021 Efraim Flashner <efraim@flashner.co.il>
5ccde207
RW
8;;; Copyright © 2016, 2017 Alex Sassmannshausen <alex@pompo.co>
9;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
10;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
11;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
12;;; Copyright © 2017 Petter <petter@mykolab.ch>
4203024e 13;;; Copyright © 2017–2021 Tobias Geerinckx-Rice <me@tobias.gr>
ab125315 14;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
4715f92e 15;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
52b1551b 16;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
ab82124f 17;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
e72b40af 18;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
5ccde207
RW
19;;;
20;;; This file is part of GNU Guix.
21;;;
22;;; GNU Guix is free software; you can redistribute it and/or modify it
23;;; under the terms of the GNU General Public License as published by
24;;; the Free Software Foundation; either version 3 of the License, or (at
25;;; your option) any later version.
26;;;
27;;; GNU Guix is distributed in the hope that it will be useful, but
28;;; WITHOUT ANY WARRANTY; without even the implied warranty of
29;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
30;;; GNU General Public License for more details.
31;;;
32;;; You should have received a copy of the GNU General Public License
33;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
34
35(define-module (gnu packages perl-check)
36 #:use-module (guix licenses)
37 #:use-module (gnu packages)
9a3fb60c 38 #:use-module (gnu packages valgrind)
5c360e48 39 #:use-module (gnu packages web)
5ccde207
RW
40 #:use-module (guix packages)
41 #:use-module (guix download)
42 #:use-module (guix build-system perl)
43 #:use-module (gnu packages perl))
44
f1a2cb94
TGR
45;;;
46;;; Please: Try to add new module packages in alphabetic order.
47;;;
48
49\f
c8749b02
TGR
50(define-public perl-mock-config
51 (package
52 (name "perl-mock-config")
53 (version "0.03")
54 (source
55 (origin
56 (method url-fetch)
57 (uri (string-append "mirror://cpan/authors/id/R/RU/RURBAN/Mock-Config-"
58 version ".tar.gz"))
59 (sha256
60 (base32 "06q0xkg5cwdwafzmb9rkaa305ddv7vli9gpm6n9jnkyaaxbk9f55"))))
61 (build-system perl-build-system)
62 (home-page "https://metacpan.org/release/Mock-Config")
63 (synopsis "Temporarily set Config or XSConfig values")
64 (description
65 "The @code{Mock::Config} Perl module allows temporarily setting and
66overriding @code{Config} values, even for the readonly @code{XSConfig}
67implementation as used in cperl. It does not store the mocked overrides
68lexically, just dynamically.")
69 (license artistic2.0)))
70
78b2034b 71(define-public perl-test2-suite
5ccde207 72 (package
78b2034b 73 (name "perl-test2-suite")
5ccde207
RW
74 (version "0.000072")
75 (source
76 (origin
77 (method url-fetch)
78 (uri (string-append "mirror://cpan/authors/id/E/EX/EXODIST/Test2-Suite-"
79 version ".tar.gz"))
80 (sha256
81 (base32
82 "0hgd6n29qjh1pwqvbglm2kb852yqshmixqqjhsr2kvvibdr58qpf"))))
83 (build-system perl-build-system)
84 (arguments
85 '(#:phases
86 (modify-phases %standard-phases
87 (add-after 'unpack 'set-env
4851af9e 88 (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1") #t)))))
5ccde207 89 (propagated-inputs
8394619b 90 (list perl-importer perl-term-table perl-sub-info))
78b2034b 91 (home-page "https://metacpan.org/pod/Test2-Suite")
5ccde207
RW
92 (synopsis "Full set of tools for Test2::Suite")
93 (description "This package provides a rich set of tools, plugins, bundles,
94etc built upon the Test2 testing library.")
95 (license perl-license)))
96
97(define-public perl-test2-plugin-nowarnings
98 (package
99 (name "perl-test2-plugin-nowarnings")
100 (version "0.06")
101 (source
102 (origin
103 (method url-fetch)
104 (uri (string-append "mirror://cpan/authors/id/D/DR/DROLSKY/Test2-Plugin-NoWarnings-"
105 version ".tar.gz"))
106 (sha256
107 (base32
108 "002qk6qsm0l6r2kaxywvc38w0yf0mlavgywq8li076pn6kcw3242"))))
109 (build-system perl-build-system)
9afbfc7a 110 (native-inputs
8394619b 111 (list perl-ipc-run3))
5ccde207 112 (propagated-inputs
8394619b 113 (list perl-test2-suite))
9aba9b12 114 (home-page "https://metacpan.org/release/Test2-Plugin-NoWarnings")
5ccde207
RW
115 (synopsis "Fail if tests warn")
116 (description "Loading this plugin causes your tests to fail if there any
117warnings while they run. Each warning generates a new failing test and the
118warning content is outputted via diag.")
119 (license perl-license)))
120
121(define-public perl-test-base
122 (package
123 (name "perl-test-base")
79a9dee6 124 (version "0.89")
5ccde207
RW
125 (source
126 (origin
127 (method url-fetch)
128 (uri (string-append "mirror://cpan/authors/id/I/IN/INGY/"
129 "Test-Base-" version ".tar.gz"))
130 (sha256
131 (base32
79a9dee6 132 "056hibgg3i2b89mwr76vyxi6ayb3hqjqcwicvn3s5lximsma3517"))))
5ccde207
RW
133 (build-system perl-build-system)
134 (native-inputs
8394619b 135 (list perl-algorithm-diff perl-text-diff))
5ccde207 136 (propagated-inputs
8394619b 137 (list perl-spiffy perl-test-deep))
9aba9b12 138 (home-page "https://metacpan.org/release/Test-Base")
5ccde207
RW
139 (synopsis "Data-driven testing framework for Perl")
140 (description "Test::Base gives a way to trivially write your own test
141framework base class. It concentrates on offering reusable data driven
142patterns, so that you can write tests with a minimum of code.")
143 (license perl-license)))
144
c1a4e783
CB
145(define-public perl-test-checkdeps
146 (package
147 (name "perl-test-checkdeps")
148 (version "0.010")
149 (source
150 (origin
151 (method url-fetch)
152 (uri (string-append
153 "mirror://cpan/authors/id/L/LE/LEONT/Test-CheckDeps-"
154 version
155 ".tar.gz"))
156 (sha256
157 (base32
158 "1vjinlixxdx6gfcw8y1dw2rla8bfhi8nmgcqr3nffc7kqskcrz36"))))
159 (build-system perl-build-system)
160 (propagated-inputs
8394619b 161 (list perl-cpan-meta-check))
c1a4e783
CB
162 (home-page "https://metacpan.org/release/Test-CheckDeps")
163 (synopsis "Check for presence of dependencies")
164 (description
165 "This module provides a test that checks all dependencies have been
166installed properly.")
167 (license perl-license)))
168
5ccde207
RW
169(define-public perl-test-class
170 (package
171 (name "perl-test-class")
172 (version "0.50")
173 (source
174 (origin
175 (method url-fetch)
176 (uri (string-append
177 "https://cpan.metacpan.org/authors/id/E/ET/ETHER/Test-Class-"
178 version
179 ".tar.gz"))
180 (sha256
181 (base32
182 "0l0kk5jvxjkic2jkf1r7v41irb344aasnzr3f5ygjgxgiknm9489"))))
183 (build-system perl-build-system)
184 (native-inputs
8394619b 185 (list perl-test-exception))
5ccde207 186 (inputs
8394619b 187 (list perl-module-runtime perl-mro-compat perl-try-tiny))
9aba9b12 188 (home-page "https://metacpan.org/release/Test-Class")
5ccde207
RW
189 (synopsis "Easily create test classes in an xUnit/JUnit style")
190 (description "@code{Test::Class} provides a simple way of creating classes
191and objects to test your code in an xUnit style.
192
193Built using @code{Test::Builder}, it was designed to work with other
194@code{Test::Builder} based modules (@code{Test::More},
195@code{Test::Differences}, @code{Test::Exception}, etc.).")
196 (license perl-license)))
197
198(define-public perl-test-class-most
199 (package
200 (name "perl-test-class-most")
201 (version "0.08")
202 (source
203 (origin
204 (method url-fetch)
205 (uri (string-append
206 "mirror://cpan/authors/id/O/OV/OVID/Test-Class-Most-"
207 version
208 ".tar.gz"))
209 (sha256
210 (base32
211 "1zvx9hil0mg0pnb8xfa4m0xgjpvh8s5gnbyprq3xwpdsdgcdwk33"))))
212 (build-system perl-build-system)
213 (native-inputs
8394619b 214 (list perl-module-build))
5ccde207 215 (inputs
8394619b
LC
216 (list perl-test-class perl-test-most perl-module-runtime
217 perl-try-tiny perl-mro-compat))
9aba9b12 218 (home-page "https://metacpan.org/release/Test-Class-Most")
5ccde207
RW
219 (synopsis "Test classes the easy way")
220 (description "@code{Test::Class::Most} provides some more convenience when
221using @code{Test::Class}.")
222 (license perl-license)))
223
224(define-public perl-test-cleannamespaces
225 (package
226 (name "perl-test-cleannamespaces")
88c2cb5e 227 (version "0.24")
5ccde207
RW
228 (source
229 (origin
230 (method url-fetch)
231 (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
232 "Test-CleanNamespaces-" version ".tar.gz"))
233 (sha256
88c2cb5e 234 (base32 "0yijspncqgmbkkxrh66xx1pliajar05yqhzq6m4nb6p8x1lmb39k"))))
5ccde207
RW
235 (build-system perl-build-system)
236 (native-inputs
8394619b
LC
237 (list perl-file-pushd perl-test-requires perl-test-deep
238 perl-test-warnings perl-test-needs))
5ccde207 239 (propagated-inputs
8394619b
LC
240 (list perl-namespace-clean
241 perl-package-stash
242 perl-sub-identify
243 perl-sub-exporter
244 perl-file-find-rule
245 perl-file-find-rule-perl))
9aba9b12 246 (home-page "https://metacpan.org/release/Test-CleanNamespaces")
5ccde207
RW
247 (synopsis "Check for uncleaned imports")
248 (description "This module lets you check your module's namespaces for
249imported functions you might have forgotten to remove with
250namespace::autoclean or namespace::clean and are therefore available to be
251called as methods, which usually isn't want you want.")
252 (license perl-license)))
253
254(define-public perl-test-command
255 (package
256 (name "perl-test-command")
257 (version "0.11")
258 (source (origin
259 (method url-fetch)
260 (uri (string-append
261 "mirror://cpan/authors/id/D/DA/DANBOO/Test-Command-"
262 version ".tar.gz"))
263 (sha256
264 (base32
265 "0cwm3c4d49mdrbm6vgh78b3x8mk730l0zg8i7xb9z8bkx9pzr8r8"))))
266 (build-system perl-build-system)
267 (native-inputs
8394619b 268 (list perl-module-build))
5ccde207
RW
269 (home-page "https://github.com/danboo/perl-test-command")
270 (synopsis "Test routines for external commands")
271 (description
272 "This module provides routines for testing the exit status, standard
273output and standard error of external commands.")
274 (license perl-license)))
275
276(define-public perl-test-cpan-meta
277 (package
278 (name "perl-test-cpan-meta")
279 (version "0.25")
280 (source
281 (origin
282 (method url-fetch)
283 (uri (string-append
284 "mirror://cpan/authors/id/B/BA/BARBIE/Test-CPAN-Meta-"
285 version
286 ".tar.gz"))
287 (sha256
288 (base32
289 "1dcdbbdwdyhpldkhjzc9rvzlmb5jbil6fwh2x07nsfdwysf4ynzm"))))
290 (build-system perl-build-system)
291 (native-inputs
8394619b 292 (list perl-test-cpan-meta-json perl-test-pod perl-test-pod-coverage))
5ccde207 293 (home-page
9aba9b12 294 "https://metacpan.org/release/Test-CPAN-Meta")
5ccde207
RW
295 (synopsis "Validate your CPAN META.yml files")
296 (description
297 "This module was written to ensure that a META.yml file meets the
298specification.")
299 (license artistic2.0)))
300
301(define-public perl-test-cpan-meta-json
302 (package
303 (name "perl-test-cpan-meta-json")
304 (version "0.16")
305 (source
306 (origin
307 (method url-fetch)
308 (uri (string-append
309 "mirror://cpan/authors/id/B/BA/BARBIE/Test-CPAN-Meta-JSON-"
310 version
311 ".tar.gz"))
312 (sha256
313 (base32
314 "1jg9ka50ixwq083wd4k12rhdjq87w0ihb34gd8jjn7gvvyd51b37"))))
315 (build-system perl-build-system)
316 (native-inputs
8394619b 317 (list perl-test-pod perl-test-pod-coverage))
5ccde207 318 (inputs
8394619b 319 (list perl-json))
5ccde207 320 (home-page
9aba9b12 321 "https://metacpan.org/release/Test-CPAN-Meta-JSON")
5ccde207
RW
322 (synopsis "Validate your CPAN META.json files")
323 (description
324 "This module was written to ensure that a META.json file meets the
325specification.")
326 (license artistic2.0)))
327
328(define-public perl-test-deep
329 (package
330 (name "perl-test-deep")
331 (version "1.120")
332 (source (origin
333 (method url-fetch)
334 (uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/"
335 "Test-Deep-" version ".tar.gz"))
336 (sha256
337 (base32
338 "1kdy06r0yg7zwarqglc9163vbfb0sfc4s6ld4pw5q7i9f7mghzi0"))))
339 (build-system perl-build-system)
8394619b 340 (inputs (list perl-test-nowarnings))
5ccde207
RW
341 (synopsis "Flexible deep comparison for the Test::Builder framework")
342 (description
343 "Test::Deep compares two structures by going through each level, ensuring
344that the values match, that arrays and hashes have the same elements and that
345references are blessed into the correct class. It also handles circular data
346structures without getting caught in an infinite loop.")
9aba9b12 347 (home-page "https://metacpan.org/release/Test-Deep")
5ccde207
RW
348 (license gpl1+))) ; or "Artistic License"
349
350(define-public perl-test-differences
351 (package
352 (name "perl-test-differences")
2ad839f3 353 (version "0.67")
5ccde207
RW
354 (source
355 (origin
356 (method url-fetch)
357 (uri (string-append "mirror://cpan/authors/id/D/DC/DCANTRELL/"
358 "Test-Differences-" version ".tar.gz"))
359 (sha256
2ad839f3 360 (base32 "1nkqr3m4lbzw7fkkzah42aiqlhxapamk6kw7hj90cjwkifsbp3f8"))))
5ccde207
RW
361 (build-system perl-build-system)
362 (native-inputs
8394619b 363 (list perl-module-build))
5ccde207 364 (propagated-inputs
8394619b 365 (list perl-text-diff perl-capture-tiny))
9aba9b12 366 (home-page "https://metacpan.org/release/Test-Differences")
5ccde207
RW
367 (synopsis "Test strings and data structures and show differences")
368 (description "This module exports three test functions and four diff-style
369functions.")
370 ;; See LICENSE section of Test/Differences.pm, which reads "... GNU public
371 ;; license, any version, ..."
372 (license gpl3+)))
373
9c5551c4
CB
374(define-public perl-test-dir
375 (package
376 (name "perl-test-dir")
377 (version "1.16")
378 (source
379 (origin
380 (method url-fetch)
381 (uri (string-append "mirror://cpan/authors/id/M/MT/MTHURN/"
382 "Test-Dir-" version ".tar.gz"))
383 (sha256
384 (base32
385 "1hpafgr93jjl6s8spskhdxhgich4cccmaiq99mla5diyj4iv6ckk"))))
386 (build-system perl-build-system)
387 (propagated-inputs
8394619b 388 (list perl-pod-coverage perl-test-pod perl-test-pod-coverage))
9c5551c4
CB
389 (home-page "https://metacpan.org/release/Test-Dir")
390 (synopsis "Utilities for testing directory attributes")
391 (description
8f6ac12f 392 "This module provides a collection of test utilities for directory
9c5551c4
CB
393attributes.")
394 (license perl-license)))
395
5ccde207
RW
396(define-public perl-test-directory
397 (package
398 (name "perl-test-directory")
399 (version "0.041")
400 (source
401 (origin
402 (method url-fetch)
403 (uri (string-append "mirror://cpan/authors/id/S/SA/SANBEG/"
404 "Test-Directory-" version ".tar.gz"))
405 (sha256
406 (base32
407 "1ncql08cizhicbxwd753b4czns8nlcnlw0zfjcfrbdd41x4j6hqr"))))
408 (build-system perl-build-system)
8394619b 409 (native-inputs (list perl-test-exception))
9aba9b12 410 (home-page "https://metacpan.org/release/Test-Directory")
5ccde207
RW
411 (synopsis "Perl extension for maintaining test directories")
412 (description "Testing code can involve making sure that files are created
413and deleted as expected. Doing this manually can be error prone, as it's easy
414to forget a file, or miss that some unexpected file was added. This module
415simplifies maintaining test directories by tracking their status as they are
416modified or tested with this API, making it simple to test both individual
417files, as well as to verify that there are no missing or unknown files.")
418 (license perl-license)))
419
52b1551b
KK
420(define-public perl-test-distmanifest
421 (package
422 (name "perl-test-distmanifest")
423 (version "1.014")
424 (source
425 (origin
426 (method url-fetch)
427 (uri (string-append
428 "mirror://cpan/authors/id/E/ET/ETHER/Test-DistManifest-"
429 version ".tar.gz"))
430 (sha256
431 (base32 "1ifpff5simjslabwy7ac6kdylv4c0b5b39fgpwf9ha16yh6w49ix"))))
432 (build-system perl-build-system)
433 (native-inputs
8394619b 434 (list perl-module-build))
52b1551b 435 (propagated-inputs
8394619b 436 (list perl-module-manifest))
52b1551b
KK
437 (home-page "https://github.com/jawnsy/Test-DistManifest")
438 (synopsis "Author test that validates a package @file{MANIFEST}")
439 (description
440 "@code{Test::DistManifest} provides a simple method of testing that a
441@file{MANIFEST} file matches its distribution.")
442 (license perl-license)))
443
ab82124f
PG
444(define-public perl-test-distribution
445 (package
446 (name "perl-test-distribution")
447 (version "2.00")
448 (source
449 (origin
450 (method url-fetch)
451 (uri (string-append
452 "mirror://cpan/authors/id/S/SR/SRSHAH/Test-Distribution-"
453 version ".tar.gz"))
454 (sha256
455 (base32
456 "0s1bj459qaw2x1fckklv9irpf3mr8gp2cm9vlyrb5dyanrzx1v2h"))))
457 (build-system perl-build-system)
458 (native-inputs
8394619b 459 (list perl-module-build))
ab82124f 460 (propagated-inputs
8394619b
LC
461 (list perl-file-find-rule perl-pod-coverage perl-test-pod
462 perl-test-pod-coverage))
ab82124f
PG
463 (home-page "https://metacpan.org/release/Test-Distribution")
464 (synopsis "Perform tests on all modules of a distribution")
465 (description "When used in a test script @code{Test::Distribution}
466goes through all the modules in your distribution, checks their POD,
467checks that they compile successfully and checks that they all define
468a $VERSION. In addition, this module performs a number of tests on
469the distribution itself. It checks that the distributed files match
470the SIGNATURE file, if that file exists. It checks that the
471distribution is not missing any core description files. It also
472checks that the complete set of pre-requisite packages are listed in
473the Makefile.PL file.")
474 (license perl-license)))
475
5ccde207
RW
476(define-public perl-test-eol
477 (package
478 (name "perl-test-eol")
479 (version "2.00")
480 (source
481 (origin
482 (method url-fetch)
483 (uri (string-append
484 "mirror://cpan/authors/id/E/ET/ETHER/Test-EOL-"
485 version
486 ".tar.gz"))
487 (sha256
488 (base32
489 "0l3bxpsw0x7j9nclizcp53mnf9wny25dmg2iglfhzgnk0xfpwzwf"))))
490 (build-system perl-build-system)
491 (home-page
9aba9b12 492 "https://metacpan.org/release/Test-EOL")
5ccde207
RW
493 (synopsis
494 "Check the correct line endings in your project")
495 (description
496 "@code{Test::EOL} lets you check for the presence of trailing whitespace
497and/or windows line endings in your perl code.")
498 (license perl-license)))
499
500(define-public perl-test-exception
501 (package
502 (name "perl-test-exception")
503 (version "0.43")
504 (source
505 (origin
506 (method url-fetch)
507 (uri (string-append "mirror://cpan/authors/id/E/EX/EXODIST/"
508 "Test-Exception-" version ".tar.gz"))
509 (sha256
510 (base32
511 "0cxm7s4bg0xpxa6l6996a6iq3brr4j7p4hssnkc6dxv4fzq16sqm"))))
512 (build-system perl-build-system)
513 (native-inputs
8394619b 514 (list perl-module-build))
5ccde207 515 (propagated-inputs
8394619b 516 (list perl-sub-uplevel))
9aba9b12 517 (home-page "https://metacpan.org/release/Test-Exception")
5ccde207
RW
518 (synopsis "Test exception based code")
519 (description "This module provides a few convenience methods for testing
520exception based code. It is built with Test::Builder and plays happily with
521Test::More and friends.")
522 (license perl-license)))
523
12d330b0
OP
524(define-public perl-test-failwarnings
525 (package
526 (name "perl-test-failwarnings")
527 (version "0.008")
528 (source
529 (origin
530 (method url-fetch)
531 (uri (string-append
532 "mirror://cpan/authors/id/D/DA/DAGOLDEN/Test-FailWarnings-"
533 version ".tar.gz"))
534 (sha256
535 (base32
536 "0vx9chcp5x8m0chq574p9fnfckh5gl94j7904rh9v17n568fyd6s"))))
537 (build-system perl-build-system)
538 (native-inputs
8394619b 539 (list perl-capture-tiny))
9aba9b12 540 (home-page "https://metacpan.org/release/Test-FailWarnings")
12d330b0
OP
541 (synopsis "Add test failures if warnings are caught")
542 (description
543 "Test::FailWarnings adds test failures if warnings are caught.")
544 (license asl2.0)))
545
5ccde207
RW
546(define-public perl-test-fatal
547 (package
548 (name "perl-test-fatal")
549 (version "0.014")
550 (source
551 (origin
552 (method url-fetch)
553 (uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/"
554 "Test-Fatal-" version ".tar.gz"))
555 (sha256
556 (base32
557 "1c6bs68mss4q7cyapkv2c0jn66i21050p0faxf3s3417gdffzp5w"))))
558 (build-system perl-build-system)
8394619b 559 (propagated-inputs (list perl-try-tiny))
9aba9b12 560 (home-page "https://metacpan.org/release/Test-Fatal")
5ccde207
RW
561 (synopsis "Simple helpers for testing code with exceptions")
562 (description "Test::Fatal is an alternative to the popular
563Test::Exception. It does much less, but should allow greater flexibility in
564testing exception-throwing code with about the same amount of typing.")
565 (license perl-license)))
566
402cfebf
CB
567(define-public perl-test-file
568 (package
569 (name "perl-test-file")
4203024e 570 (version "1.444")
402cfebf
CB
571 (source
572 (origin
573 (method url-fetch)
574 (uri (string-append
575 "mirror://cpan/authors/id/B/BD/BDFOY/Test-File-"
576 version
577 ".tar.gz"))
578 (sha256
4203024e 579 (base32 "0195dnvwxxphwbglw6cjid3j7kq15xg46lr7r4468idvadyal6c7"))))
402cfebf
CB
580 (build-system perl-build-system)
581 (native-inputs
8394619b 582 (list perl-test-utf8))
402cfebf
CB
583 (home-page "https://metacpan.org/release/Test-File")
584 (synopsis "Utilities for testing file attributes")
585 (description
586 "@code{Test::File} provides a collection of test utilities for file
587attributes.")
588 (license perl-license)))
589
709a9e92
CB
590(define-public perl-test-file-contents
591 (package
592 (name "perl-test-file-contents")
593 (version "0.23")
594 (source
595 (origin
596 (method url-fetch)
597 (uri (string-append
598 "mirror://cpan/authors/id/D/DW/DWHEELER/Test-File-Contents-"
599 version
600 ".tar.gz"))
601 (sha256
602 (base32
603 "0g8zgfyw84181snw7ghahnl9r4lrmlfj7zwi76sv8d0bj7xssvyd"))))
604 (build-system perl-build-system)
605 (native-inputs
8394619b 606 (list perl-module-build))
709a9e92 607 (propagated-inputs
8394619b 608 (list perl-test-pod perl-test-pod-coverage perl-text-diff))
709a9e92
CB
609 (home-page "https://metacpan.org/release/Test-File-Contents")
610 (synopsis "Test routines for examining the contents of files")
611 (description
612 "@{Test::File::Contents} provides functions for testing the contents of
613files.")
614 (license perl-license)))
615
5ccde207
RW
616(define-public perl-test-file-sharedir-dist
617 (package
618 (name "perl-test-file-sharedir-dist")
619 (version "1.001002")
620 (source
621 (origin
622 (method url-fetch)
623 (uri (string-append "mirror://cpan/authors/id/K/KE/KENTNL/"
624 "Test-File-ShareDir-" version ".tar.gz"))
625 (sha256
626 (base32
627 "1bbs6cx69wcinq77gif4i4pmrj8a7lwb92sgvvxzrwmjnk5lfdmk"))))
628 (build-system perl-build-system)
629 (propagated-inputs
8394619b
LC
630 (list perl-class-tiny
631 perl-file-copy-recursive
632 perl-file-sharedir
633 perl-path-tiny
634 perl-scope-guard
635 perl-test-fatal))
5ccde207
RW
636 (home-page "https://github.com/kentnl/Test-File-ShareDir")
637 (synopsis "Dist oriented ShareDir tester")
638 (description "This module creates a Fake ShareDir for your modules
639for testing.")
640 (license perl-license)))
641
ab125315
OP
642(define-public perl-test-filename
643 (package
644 (name "perl-test-filename")
645 (version "0.03")
646 (source
647 (origin
648 (method url-fetch)
649 (uri (string-append
650 "mirror://cpan/authors/id/D/DA/DAGOLDEN/Test-Filename-"
651 version ".tar.gz"))
652 (sha256
653 (base32
654 "1gpw4mjw68gnby8s4cifvbz6g2923xsc189jkw9d27i8qv20qiba"))))
655 (build-system perl-build-system)
656 (propagated-inputs
8394619b 657 (list perl-path-tiny))
9aba9b12 658 (home-page "https://metacpan.org/release/Test-Filename")
ab125315
OP
659 (synopsis "Portable filename comparison")
660 (description "Test::Filename provides functions to convert all path
661separators automatically.")
662 (license asl2.0)))
663
5ccde207
RW
664(define-public perl-test-files
665 (package
666 (name "perl-test-files")
667 (version "0.14")
668 (source
669 (origin
670 (method url-fetch)
671 (uri (string-append
672 "mirror://cpan/authors/id/P/PH/PHILCROW/Test-Files-"
673 version
674 ".tar.gz"))
675 (sha256
676 (base32
677 "1zn33yigznq7i1jr4yjr4lxvc6bn7znkbqdzj7slhc146pqapkln"))))
678 (build-system perl-build-system)
679 (propagated-inputs
8394619b 680 (list perl-algorithm-diff perl-text-diff))
9aba9b12 681 (home-page "https://metacpan.org/release/Test-Files")
5ccde207
RW
682 (synopsis "Ease software testing with files and directories")
683 (description "This library provides functions to enable testing of files
684and directories. For instance, the @code{file_ok} helper can test whether the
685contents of a file is equal to a particular string.")
686 (license perl-license)))
687
688(define-public perl-test-harness
689 (package
690 (name "perl-test-harness")
39199eb4 691 (version "3.42")
5ccde207
RW
692 (source
693 (origin
694 (method url-fetch)
695 (uri (string-append "mirror://cpan/authors/id/L/LE/LEONT/"
696 "Test-Harness-" version ".tar.gz"))
697 (sha256
39199eb4 698 (base32 "0lwfaamhpqia0ks4pcci83xbqz6jhng7acv95qk6wbd8zr70vn8g"))))
5ccde207
RW
699 (build-system perl-build-system)
700 (arguments
701 `(#:phases
702 (modify-phases %standard-phases
703 (add-before 'check 'patch-test
704 (lambda* (#:key inputs #:allow-other-keys)
705 ;; This test looks for "#!/usr/bin/perl" in some source.
706 ;; Patch what the test looks for.
707 (substitute* "t/source.t"
708 (("#!/usr/bin/perl")
709 (string-append "#!" (assoc-ref inputs "perl")
710 "/bin/perl")))
711 #t)))))
9aba9b12 712 (home-page "https://metacpan.org/release/Test-Harness")
5ccde207
RW
713 (synopsis "Run Perl standard test scripts with statistics")
714 (description "Simple test harness which allows tests to be run and results
715automatically aggregated and output to STDOUT.")
716 (license perl-license)))
717
718(define-public perl-test-leaktrace
719 (package
720 (name "perl-test-leaktrace")
721 (version "0.16")
722 (source
723 (origin
724 (method url-fetch)
725 (uri (string-append "mirror://cpan/authors/id/L/LE/LEEJO/"
726 "Test-LeakTrace-" version ".tar.gz"))
727 (sha256
728 (base32
729 "00z4hcjra5nk700f3fgpy8fs036d7ry7glpn8g3wh7jzj7nrw22z"))))
730 (build-system perl-build-system)
9aba9b12 731 (home-page "https://metacpan.org/release/Test-LeakTrace")
5ccde207
RW
732 (synopsis "Traces memory leaks in Perl")
733 (description "Test::LeakTrace provides several functions that trace memory
734leaks. This module scans arenas, the memory allocation system, so it can
735detect any leaked SVs in given blocks.")
736 (license perl-license)))
737
738(define-public perl-test-longstring
739 (package
740 (name "perl-test-longstring")
741 (version "0.17")
742 (source
743 (origin
744 (method url-fetch)
745 (uri (string-append "mirror://cpan/authors/id/R/RG/RGARCIA/"
746 "Test-LongString-" version ".tar.gz"))
747 (sha256
748 (base32
749 "0kwp7rfr1i2amz4ckigkv13ah7jr30q6l5k4wk0vxl84myg39i5b"))))
750 (build-system perl-build-system)
9aba9b12 751 (home-page "https://metacpan.org/release/Test-LongString")
5ccde207
RW
752 (synopsis "Tests strings for equality, with more helpful failures")
753 (description "This module provides some drop-in replacements for the
754string comparison functions of Test::More, but which are more suitable when
755you test against long strings.")
756 (license perl-license)))
757
758(define-public perl-test-manifest
759 (package
760 (name "perl-test-manifest")
e1abfc76 761 (version "2.021")
5ccde207
RW
762 (source (origin
763 (method url-fetch)
764 (uri (string-append "mirror://cpan/authors/id/B/BD/BDFOY/"
765 "Test-Manifest-" version ".tar.gz"))
766 (sha256
767 (base32
e1abfc76 768 "1n9jscnni24sbp4v5gjlcy3iknfwvmy0731xwvk1c3jq3kbslym4"))))
5ccde207
RW
769 (build-system perl-build-system)
770 (native-inputs
8394619b 771 (list perl-test-pod perl-test-pod-coverage))
9aba9b12 772 (home-page "https://metacpan.org/release/Test-Manifest")
5ccde207
RW
773 (synopsis "Interact with a t/test_manifest file")
774 (description "@code{Test::Manifest} overrides the default test file order. Instead of
775running all of the t/*.t files in ASCII-betical order, it looks in the t/test_manifest
776file to find out which tests you want to run and the order in which you want to run them.
777It constructs the right value for the build system to do the right thing.")
778 (license perl-license)))
779
780(define-public perl-test-memory-cycle
781 (package
782 (name "perl-test-memory-cycle")
783 (version "1.06")
784 (source
785 (origin
786 (method url-fetch)
787 (uri (string-append
788 "mirror://cpan/authors/id/P/PE/PETDANCE/Test-Memory-Cycle-"
789 version
790 ".tar.gz"))
791 (sha256
792 (base32
793 "00ijmgx1r3cxrcs1qa9rb2s4gbm3nsawd90drda89kb4r7yxslwx"))))
794 (build-system perl-build-system)
795 (inputs
8394619b 796 (list perl-padwalker))
5ccde207 797 (propagated-inputs
8394619b 798 (list perl-devel-cycle))
5ccde207 799 (home-page
9aba9b12 800 "https://metacpan.org/release/Test-Memory-Cycle")
5ccde207
RW
801 (synopsis
802 "Verifies code hasn't left circular references")
803 (description
804 "@code{Test::Memory::Cycle} is built on top of @code{Devel::Cycle} to
805give you an easy way to check for these circular references.
806
807@example
808use Test::Memory::Cycle;
809
810my $object = new MyObject;
811# Do stuff with the object.
812memory_cycle_ok( $object );
813@end example")
814 (license artistic2.0)))
815
d948fe7c
TGR
816(define-public perl-test-mockmodule
817 (package
818 (name "perl-test-mockmodule")
3ffe6937 819 (version "0.177.0")
d948fe7c
TGR
820 (source
821 (origin
822 (method url-fetch)
823 (uri (string-append "mirror://cpan/authors/id/G/GF/GFRANKS/"
31d9f552 824 "Test-MockModule-v" version ".tar.gz"))
d948fe7c 825 (sha256
3ffe6937 826 (base32 "0i8hiw9r2kak8kgp2qabr0cnnpp1yg1sddm781nhfxpavi4pmnhv"))))
d948fe7c
TGR
827 (build-system perl-build-system)
828 (native-inputs
8394619b
LC
829 (list perl-module-build
830 ;; For tests.
831 perl-test-pod perl-test-pod-coverage perl-test-warnings))
d948fe7c 832 (propagated-inputs
8394619b 833 (list perl-super))
9aba9b12 834 (home-page "https://metacpan.org/release/Test-MockModule")
d948fe7c
TGR
835 (synopsis "Override subroutines in a module for unit testing")
836 (description
837 "@code{Test::MockModule} lets you temporarily redefine subroutines in other
838packages for the purposes of unit testing. A @code{Test::MockModule} object is
839set up to mock subroutines for a given module. The mocked object remembers the
840original subroutine so it can be easily restored. This happens automatically
841when all @code{MockModule} objects for the given module go out of scope, or when
842you @code{unmock()} the subroutine.")
843 (license gpl3)))
844
5ccde207
RW
845(define-public perl-test-mockobject
846 (package
847 (name "perl-test-mockobject")
5d7e1c80 848 (version "1.20191002")
5ccde207
RW
849 (source
850 (origin
851 (method url-fetch)
852 (uri (string-append "mirror://cpan/authors/id/C/CH/CHROMATIC/"
853 "Test-MockObject-" version ".tar.gz"))
854 (sha256
5d7e1c80 855 (base32 "160r36j727hw6syazh6sfq862f95dp1zcga0nil7cjlry77lqsn7"))))
5ccde207
RW
856 (build-system perl-build-system)
857 (native-inputs
8394619b 858 (list perl-cgi perl-test-exception perl-test-warn))
5ccde207 859 (propagated-inputs
8394619b
LC
860 (list perl-test-exception perl-test-warn perl-universal-can
861 perl-universal-isa))
9aba9b12 862 (home-page "https://metacpan.org/release/Test-MockObject")
5ccde207
RW
863 (synopsis "Emulate troublesome interfaces in Perl")
864 (description "Test::MockObject allows you to create objects that conform
865to particular interfaces with very little code. You don't have to reimplement
866the behavior, just the input and the output.")
867 (license perl-license)))
868
869(define-public perl-test-mocktime
870 (package
871 (name "perl-test-mocktime")
17ed9595 872 (version "0.17")
5ccde207
RW
873 (source
874 (origin
875 (method url-fetch)
876 (uri (string-append "mirror://cpan/authors/id/D/DD/DDICK/"
877 "Test-MockTime-" version ".tar.gz"))
878 (sha256
17ed9595 879 (base32 "1y820qsq7yf7r6smy5c6f0mpf2cis2q24vwmpim1svv0n8cf2qrk"))))
ab998d5e 880 (propagated-inputs
8394619b 881 (list perl-time-piece))
5ccde207 882 (build-system perl-build-system)
9aba9b12 883 (home-page "https://metacpan.org/release/Test-MockTime")
5ccde207
RW
884 (synopsis "Replaces actual time with simulated time")
885 (description "This module was created to enable test suites to test code
886at specific points in time. Specifically it overrides localtime, gmtime and
887time at compile time and then relies on the user supplying a mock time via
888set_relative_time, set_absolute_time or set_fixed_time to alter future calls
889to gmtime,time or localtime.")
890 (license perl-license)))
891
26eb9260
EF
892(define-public perl-test-more-utf8
893 (package
894 (name "perl-test-more-utf8")
895 (version "0.05")
896 (source
897 (origin
898 (method url-fetch)
899 (uri (string-append
900 "mirror://cpan/authors/id/M/MO/MONS/Test-More-UTF8-"
901 version ".tar.gz"))
902 (sha256
903 (base32
904 "016fs77lmw8xxrcnapvp6wq4hjwgsdfi3l9ylpxgxkcpdarw9wdr"))))
905 (build-system perl-build-system)
906 (home-page "https://metacpan.org/release/Test-More-UTF8")
907 (synopsis "Enhance Test::More for UTF8-based projects")
908 (description "@code{Test::More::UTF8} is a simple extension for the widely
36a4366d
EF
909used @code{Test::More} module. By default, it will do a @code{binmode
910@code{:utf8}} on all of @code{Test::Builder}'s output handles thus enabling the
911easy use flagged strings without warnings like \"Wide character in print
912@dots{}\"")
26eb9260
EF
913 (license perl-license)))
914
5ccde207
RW
915(define-public perl-test-most
916 (package
917 (name "perl-test-most")
697a958a 918 (version "0.35")
5ccde207
RW
919 (source
920 (origin
921 (method url-fetch)
922 (uri (string-append "mirror://cpan/authors/id/O/OV/OVID/"
923 "Test-Most-" version ".tar.gz"))
924 (sha256
925 (base32
697a958a 926 "0zv5dyzq55r28plffibcr7wd00abap0h2zh4s4p8snaiszsad5wq"))))
5ccde207
RW
927 (build-system perl-build-system)
928 (propagated-inputs
8394619b
LC
929 (list perl-test-differences perl-test-warn perl-exception-class
930 perl-test-deep perl-test-exception))
9aba9b12 931 (home-page "https://metacpan.org/release/Test-Most")
5ccde207
RW
932 (synopsis "Most commonly needed test functions and features")
933 (description "This module provides the most commonly used testing
934functions, along with automatically turning on strict and warning and gives a
935bit more fine-grained control over test suites.")
936 (license perl-license)))
937
938(define-public perl-test-needs
939 (package
940 (name "perl-test-needs")
9141483d 941 (version "0.002009")
5ccde207
RW
942 (source
943 (origin
944 (method url-fetch)
945 (uri (string-append
946 "mirror://cpan/authors/id/H/HA/HAARG/Test-Needs-"
947 version
948 ".tar.gz"))
949 (sha256
950 (base32
9141483d 951 "1hsagkxw0b0xf9qk4i4c74dkjskrk23jcsxhb3graqfi78cj272p"))))
5ccde207
RW
952 (build-system perl-build-system)
953 (home-page
9aba9b12 954 "https://metacpan.org/release/Test-Needs")
5ccde207
RW
955 (synopsis
956 "Skip tests when modules not available")
957 (description "@code{Test::Needs} allows you to skip test scripts if
958modules are not available. The requested modules will be loaded, and
959optionally have their versions checked. If the module is missing, the test
960script will be skipped. Modules that are found but fail to compile will exit
961with an error rather than skip.
962
963If used in a subtest, the remainder of the subtest will be skipped.")
964 (license perl-license)))
965
966(define-public perl-test-notabs
967 (package
968 (name "perl-test-notabs")
a7999e2d 969 (version "2.02")
5ccde207
RW
970 (source
971 (origin
972 (method url-fetch)
973 (uri (string-append
974 "mirror://cpan/authors/id/E/ET/ETHER/Test-NoTabs-"
975 version
976 ".tar.gz"))
977 (sha256
978 (base32
a7999e2d 979 "0c306p9qdpa2ycii3c50hml23mwy6bjxpry126g1dw11hyiwcxgv"))))
5ccde207
RW
980 (build-system perl-build-system)
981 (home-page
9aba9b12 982 "https://metacpan.org/release/Test-NoTabs")
5ccde207
RW
983 (synopsis
984 "Check the presence of tabs in your project")
985 (description
986 "@code{Test::NoTabs} lets you check the presence of tabs in your perl
987code.")
988 (license perl-license)))
989
990(define-public perl-test-nowarnings
991 (package
992 (name "perl-test-nowarnings")
993 (version "1.04")
994 (source (origin
995 (method url-fetch)
996 (uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/"
997 "Test-NoWarnings-" version ".tar.gz"))
998 (sha256
999 (base32
1000 "0v385ch0hzz9naqwdw2az3zdqi15gka76pmiwlgsy6diiijmg2k3"))))
1001 (build-system perl-build-system)
5ccde207
RW
1002 (synopsis "Ensure no warnings are produced while testing")
1003 (description
747403ac 1004 "This module causes any warnings during testing to be captured and
5ccde207
RW
1005stored. It automatically adds an extra test that will run when your script
1006ends to check that there were no warnings. If there were any warnings, the
1007test will fail and output diagnostics of where, when and what the warning was,
1008including a stack trace of what was going on when it occurred.")
9aba9b12 1009 (home-page "https://metacpan.org/release/Test-NoWarnings")
5ccde207
RW
1010 (license lgpl2.1)))
1011
1012(define-public perl-test-number-delta
1013 (package
1014 (name "perl-test-number-delta")
1015 (version "1.06")
1016 (source (origin
1017 (method url-fetch)
1018 (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/"
1019 "Test-Number-Delta-" version ".tar.gz"))
1020 (sha256
1021 (base32
1022 "0jfhzhpzkc23mkrlbnv085ykpfncmy99hvppbzjnrpvgks8k0m2k"))))
1023 (build-system perl-build-system)
9aba9b12 1024 (home-page "https://metacpan.org/release/Test-Number-Delta")
5ccde207
RW
1025 (synopsis
1026 "Compare the difference between numbers against a given tolerance")
1027 (description
1028 "At some point or another, most programmers find they need to compare
1029floating-point numbers for equality. The typical idiom is to test if the
1030absolute value of the difference of the numbers is within a desired tolerance,
1031usually called epsilon. This module provides such a function for use with
1032@code{Test::More}.")
1033 (license asl2.0)))
1034
e72b40af
NG
1035(define-public perl-test-object
1036 (package
1037 (name "perl-test-object")
1038 (version "0.08")
1039 (source
1040 (origin
1041 (method url-fetch)
1042 (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
1043 "Test-Object-" version ".tar.gz"))
1044 (sha256
1045 (base32 "1fyhn558kvla37fb60fzdr6kd2kfcxcmpr8884zk2dvq2ij8j9v5"))))
1046 (build-system perl-build-system)
1047 (home-page "https://metacpan.org/release/Test-Object")
1048 (synopsis "Thoroughly testing objects via registered handlers")
1049 (description
1050 "In situations where you have deep trees of classes,
1051there is a common situation in which you test a module 4 or 5 subclasses down,
1052which should follow the correct behaviour of not just the subclass, but of all
1053the parent classes.
1054
1055This should be done to ensure that the implementation of a subclass has not
1056somehow ``broken'' the object's behaviour in a more general sense.
1057
1058Test::Object is a testing package designed to allow you to easily test what
1059you believe is a valid object against the expected behaviour of all of the
1060classes in its inheritance tree in one single call.")
1061 (license perl-license)))
1062
5ccde207
RW
1063(define-public perl-test-output
1064 (package
1065 (name "perl-test-output")
be348268 1066 (version "1.033")
5ccde207
RW
1067 (source (origin
1068 (method url-fetch)
1069 (uri (string-append "mirror://cpan/authors/id/B/BD/BDFOY/"
1070 "Test-Output-" version ".tar.gz"))
1071 (sha256
1072 (base32
be348268 1073 "0vjm62c7g3xxs3h4lba55dnpr4pg71yrhkdg5b9glxdh80klia7n"))))
5ccde207
RW
1074 (build-system perl-build-system)
1075 (propagated-inputs
8394619b 1076 (list perl-capture-tiny perl-sub-exporter))
5ccde207
RW
1077 (synopsis "Utilities to test STDOUT and STDERR messages")
1078 (description
1079 "Test::Output provides a simple interface for testing output sent to
1080STDOUT or STDERR. A number of different utilities are included to try and be
1081as flexible as possible to the tester.")
9aba9b12 1082 (home-page "https://metacpan.org/release/Test-Output")
5ccde207
RW
1083 (license perl-license)))
1084
1085(define-public perl-test-pod
1086 (package
1087 (name "perl-test-pod")
cb6fb537 1088 (version "1.52")
5ccde207
RW
1089 (source
1090 (origin
1091 (method url-fetch)
9210fdf8 1092 (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
5ccde207
RW
1093 "Test-Pod-" version ".tar.gz"))
1094 (sha256
1095 (base32
cb6fb537 1096 "1z75x1pxwp8ajwq9iazlg2c3wd7rdlim08yclpdg32qnc36dpa30"))))
5ccde207 1097 (build-system perl-build-system)
8394619b 1098 (native-inputs (list perl-module-build))
9aba9b12 1099 (home-page "https://metacpan.org/release/Test-Pod")
5ccde207
RW
1100 (synopsis "Check for POD errors in files")
1101 (description "Check POD files for errors or warnings in a test file, using
1102Pod::Simple to do the heavy lifting.")
1103 (license perl-license)))
1104
1105(define-public perl-test-pod-coverage
1106 (package
1107 (name "perl-test-pod-coverage")
1108 (version "1.10")
1109 (source
1110 (origin
1111 (method url-fetch)
1112 (uri (string-append "mirror://cpan/authors/id/N/NE/NEILB/"
1113 "Test-Pod-Coverage-" version ".tar.gz"))
1114 (sha256
1115 (base32
1116 "1m203mhgfilz7iqc8mxaw4lw02fz391mni3n25sfx7nryylwrja8"))))
1117 (build-system perl-build-system)
1118 (propagated-inputs
8394619b 1119 (list perl-pod-coverage))
9aba9b12 1120 (home-page "https://metacpan.org/release/Test-Pod-Coverage")
5ccde207
RW
1121 (synopsis "Check for pod coverage")
1122 (description "This module adds a test to your Perl distribution which
1123checks for pod coverage of all appropriate files.")
1124 (license artistic2.0)))
1125
d783ed74
RG
1126(define-public perl-test-portability-files
1127 (package
1128 (name "perl-test-portability-files")
1129 (version "0.10")
1130 (source
1131 (origin
1132 (method url-fetch)
1133 (uri (string-append "mirror://cpan/authors/id/A/AB/ABRAXXA/"
1134 "Test-Portability-Files-" version ".tar.gz"))
1135 (sha256
1136 (base32 "05hs80gljkd6mhb8zvilyk3pjqxp5samgnymam5v9h9d94rb9r08"))))
1137 (build-system perl-build-system)
1138 (native-inputs
8394619b 1139 (list perl-test-simple))
d783ed74 1140 (propagated-inputs
8394619b 1141 (list perl-pathtools))
d783ed74
RG
1142 (home-page "https://metacpan.org/dist/Test-Portability-Files")
1143 (synopsis "Check file names portability")
1144 (description "Test::Portability::Files module is used to check the
1145portability across operating systems of the names of the files present in the
1146distribution of a module. The tests use the advices given in 'Files and
1147Filesystems' in perlport. The author of a distribution can select which tests
1148to execute.")
1149 (license perl-license)))
1150
5ccde207
RW
1151(define-public perl-test-requires
1152 (package
1153 (name "perl-test-requires")
072ef70a 1154 (version "0.11")
5ccde207
RW
1155 (source
1156 (origin
1157 (method url-fetch)
1158 (uri (string-append "mirror://cpan/authors/id/T/TO/TOKUHIROM/"
1159 "Test-Requires-" version ".tar.gz"))
1160 (sha256
1161 (base32
072ef70a 1162 "03q49vi09b4n31kpnmq4v2dga5ja438a8f1wgkgwvvlpjmadx22b"))))
5ccde207 1163 (build-system perl-build-system)
9aba9b12 1164 (home-page "https://metacpan.org/release/Test-Requires")
5ccde207
RW
1165 (synopsis "Checks to see if the module can be loaded")
1166 (description "Test::Requires checks to see if the module can be loaded.
1167If this fails, then rather than failing tests this skips all tests.")
1168 (license perl-license)))
1169
fa79a908
TGR
1170(define-public perl-test-requiresinternet
1171 (package
1172 (name "perl-test-requiresinternet")
1173 (version "0.05")
1174 (source
1175 (origin
1176 (method url-fetch)
1177 (uri (string-append
1178 "mirror://cpan/authors/id/M/MA/MALLEN/Test-RequiresInternet-"
1179 version
1180 ".tar.gz"))
1181 (sha256
1182 (base32
1183 "0gl33vpj9bb78pzyijp884b66sbw6jkh1ci0xki8rmf03hmb79xv"))))
1184 (build-system perl-build-system)
9aba9b12 1185 (home-page "https://metacpan.org/release/Test-RequiresInternet")
fa79a908
TGR
1186 (synopsis "Easily test network connectivity when running tests")
1187 (description
1188 "This Perl module is intended to easily test network connectivity to
1189non-local Internet resources before functional tests begin. If the sockets
1190cannot connect to the specified hosts and ports, the exception is caught and
1191reported, and the tests skipped.")
1192 (license perl-license)))
1193
24eab3c0
OP
1194(define-public perl-test-roo
1195 (package
1196 (name "perl-test-roo")
1197 (version "1.004")
1198 (source
1199 (origin
1200 (method url-fetch)
1201 (uri (string-append
1202 "mirror://cpan/authors/id/D/DA/DAGOLDEN/Test-Roo-"
1203 version ".tar.gz"))
1204 (sha256
1205 (base32
1206 "1mnym49j1lj7gzylma5b6nr4vp75rmgz2v71904v01xmxhy9l4i1"))))
1207 (build-system perl-build-system)
1208 (native-inputs
8394619b 1209 (list perl-capture-tiny))
24eab3c0 1210 (propagated-inputs
8394619b
LC
1211 (list perl-indirect
1212 perl-moo
1213 perl-moox-types-mooselike
1214 perl-multidimensional
1215 perl-strictures
1216 perl-sub-install))
9aba9b12 1217 (home-page "https://metacpan.org/release/Test-Roo")
24eab3c0
OP
1218 (synopsis "Composable, reusable tests with roles and Moo")
1219 (description "Test::Roo provides composable, reusable tests with roles.")
1220 (license asl2.0)))
1221
9a3fb60c
PN
1222(define-public perl-test-runvalgrind
1223 (package
1224 (name "perl-test-runvalgrind")
1e4565ea 1225 (version "0.2.2")
9a3fb60c
PN
1226 (source
1227 (origin
1228 (method url-fetch)
1229 (uri (string-append
1230 "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-RunValgrind-"
1231 version
1232 ".tar.gz"))
1233 (sha256
1e4565ea 1234 (base32 "1vm5iw5sy0mhjjypaaviil9qgqixmkaghdbjbcyb4lf2mm6d24v9"))))
9a3fb60c
PN
1235 (build-system perl-build-system)
1236 (native-inputs
8394619b 1237 (list perl-module-build))
9a3fb60c 1238 (propagated-inputs
8394619b 1239 (list perl-path-tiny perl-test-trap valgrind))
9aba9b12 1240 (home-page "https://metacpan.org/release/Test-RunValgrind")
9a3fb60c
PN
1241 (synopsis "Tests that an external program is valgrind-clean")
1242 (description "Test::RunValgind checks weather Valgrind does not detect
1243errors (such as memory leaks) in an arbitrary binary executable.")
1244 (license x11)))
1245
5ccde207
RW
1246(define-public perl-test-script
1247 (package
1248 (name "perl-test-script")
1249 (version "1.20")
1250 (source (origin
1251 (method url-fetch)
1252 (uri (string-append "mirror://cpan/authors/id/P/PL/PLICEASE/"
1253 "Test-Script-" version ".tar.gz"))
1254 (sha256
1255 (base32
1256 "1msavbi6przkxq3npm90nv925v58iym9jrk677wn46x19whwzwzm"))))
1257 (build-system perl-build-system)
1258 (propagated-inputs
8394619b 1259 (list perl-capture-tiny perl-probe-perl))
5ccde207
RW
1260 (synopsis "Basic cross-platform tests for scripts")
1261 (description
1262 "The intent of the Test::Script module is to provide a series of basic
1263tests for 80% of the testing you will need to do for scripts in the script (or
1264bin as is also commonly used) paths of your Perl distribution.")
9aba9b12 1265 (home-page "https://metacpan.org/release/Test-Script")
5ccde207
RW
1266 (license perl-license)))
1267
1268(define-public perl-test-sharedfork
1269 (package
1270 (name "perl-test-sharedfork")
a48d560f 1271 (version "0.35")
5ccde207
RW
1272 (source
1273 (origin
1274 (method url-fetch)
1275 (uri (string-append "mirror://cpan/authors/id/E/EX/EXODIST/"
1276 "Test-SharedFork-" version ".tar.gz"))
1277 (sha256
a48d560f 1278 (base32 "17y52j20k1bs9dgf4n6rhh9dn4cfxxbnfn2cfs7pb00fc5jyhci9"))))
5ccde207
RW
1279 (build-system perl-build-system)
1280 (native-inputs
8394619b 1281 (list perl-test-requires))
9aba9b12 1282 (home-page "https://metacpan.org/release/Test-SharedFork")
5ccde207
RW
1283 (synopsis "Fork test in Perl")
1284 (description "Test::SharedFork is a utility module for Test::Builder. It
1285makes fork(2) safe to use in test cases.")
1286 (license perl-license)))
1287
1288(define-public perl-test-simple
1289 (package
1290 (name "perl-test-simple")
51f8be68 1291 (version "1.302183")
5ccde207
RW
1292 (source (origin
1293 (method url-fetch)
1294 (uri (string-append "mirror://cpan/authors/id/E/EX/EXODIST/"
1295 "Test-Simple-" version ".tar.gz"))
1296 (sha256
1297 (base32
51f8be68 1298 "1zq6841yrwxmrmhgzmzx0njlymsv9mzl6l5njabfl2j2xjjvs0ws"))))
5ccde207
RW
1299 (build-system perl-build-system)
1300 (synopsis "Basic utilities for writing tests")
1301 (description
1302 "Test::Simple contains basic utilities for writing tests.")
9aba9b12 1303 (home-page "https://metacpan.org/release/Test-Simple")
5ccde207
RW
1304 (license perl-license)))
1305
68976996
NG
1306(define-public perl-test-subcalls
1307 (package
1308 (name "perl-test-subcalls")
1309 (version "1.10")
1310 (source
1311 (origin
1312 (method url-fetch)
1313 (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
1314 "Test-SubCalls-" version ".tar.gz"))
1315 (sha256
1316 (base32 "1hmnv9nkdzyrr6yis0dnkf4lk0hwld3zapiyq7mizrq5barykhfb"))))
1317 (build-system perl-build-system)
1318 (propagated-inputs
8394619b 1319 (list perl-hook-lexwrap))
68976996
NG
1320 (home-page "https://metacpan.org/release/Test-SubCalls")
1321 (synopsis "Track the number of times subs are called")
1322 (description
1323 "There are a number of different situations (like testing caching
1324code) where you want to want to do a number of tests, and then verify
1325that some underlying subroutine deep within the code was called
1326a specific number of times.
1327
1328Test::SubCalls module provides a number of functions for doing testing
1329in this way in association with your normal Test::More (or similar)
1330test scripts.")
1331 (license perl-license)))
1332
5ccde207
RW
1333(define-public perl-test-taint
1334 (package
1335 (name "perl-test-taint")
d2cb69df 1336 (version "1.08")
5ccde207
RW
1337 (source
1338 (origin
1339 (method url-fetch)
1340 (uri (string-append "mirror://cpan/authors/id/P/PE/PETDANCE/Test-Taint-"
1341 version ".tar.gz"))
1342 (sha256
1343 (base32
d2cb69df 1344 "0zd946qam0yffpciqqd9xhn92gdplyh3mii4a1w96b1max14snax"))))
5ccde207 1345 (build-system perl-build-system)
9aba9b12 1346 (home-page "https://metacpan.org/release/Test-Taint")
5ccde207
RW
1347 (synopsis "Checks for taintedness of variables")
1348 (description "Tainted data is data that comes from an unsafe source, such
1349as the command line, or, in the case of web apps, any @code{GET} or
1350@code{POST} transactions. Read the @code{perlsec} man page for details on why
1351tainted data is bad, and how to untaint the data.
1352
1353When you're writing unit tests for code that deals with tainted data, you'll
1354want to have a way to provide tainted data for your routines to handle, and
1355easy ways to check and report on the taintedness of your data, in standard
1356@code{Test::More} style.")
1357 (license perl-license)))
1358
1359(define-public perl-test-tester
1360 (package
1361 (name "perl-test-tester")
1362 (version "0.109")
1363 (source (origin
1364 (method url-fetch)
1365 (uri (string-append "mirror://cpan/authors/id/F/FD/FDALY/"
1366 "Test-Tester-" version ".tar.gz"))
1367 (sha256
1368 (base32
1369 "0m9n28z09kq455r5nydj1bnr85lvmbfpcbjdkjfbpmfb5xgciiyk"))))
1370 (build-system perl-build-system)
1371 (synopsis "Simplify running Test::Builder tests")
1372 (description
1373 "Test::Tester allows testing of test modules based on Test::Builder with
1374a minimum of effort.")
9aba9b12 1375 (home-page "https://metacpan.org/release/FDALY/Test-Tester-0.109")
5ccde207 1376 (license perl-license)))
0943b0b5
KK
1377
1378(define-public perl-test-perltidy
1379 (package
1380 (name "perl-test-perltidy")
1381 (version "20130104")
1382 (source
1383 (origin
1384 (method url-fetch)
1385 (uri (string-append
1386 "mirror://cpan/authors/id/L/LA/LARRYL/Test-PerlTidy-"
1387 version ".tar.gz"))
1388 (sha256
1389 (base32
1390 "1j5rsb4km9rzcbd1ljavj8vm42bmilji40v2jj2k87l1ykrxj59z"))))
1391 (build-system perl-build-system)
1392 (propagated-inputs
8394619b 1393 (list perl-file-finder perl-file-slurp perltidy perl-text-diff))
9aba9b12 1394 (home-page "https://metacpan.org/release/Test-PerlTidy")
0943b0b5
KK
1395 (synopsis "Check that all your Perl files are tidy")
1396 (description
1397 "Using @code{Test::PerlTidy}, any file ending in .pl, .pm, .t or .PL will
1398cause a test fail unless it is exactly as @code{perltidy} would like it to be.")
1399 (license perl-license)))
5ccde207
RW
1400
1401(define-public perl-test-trap
1402 (package
1403 (name "perl-test-trap")
e750f1fc 1404 (version "0.3.4")
5ccde207
RW
1405 (source
1406 (origin
1407 (method url-fetch)
1408 (uri (string-append "mirror://cpan/authors/id/E/EB/EBHANSSEN/"
1409 "Test-Trap-v" version ".tar.gz"))
1410 (sha256
e750f1fc 1411 (base32 "1qjs2080kcc66s4d7499br5lw2qmhr9gxky4xsl6vjdn6dpna10b"))))
5ccde207
RW
1412 (build-system perl-build-system)
1413 (native-inputs
8394619b 1414 (list perl-module-build perl-test-simple))
5ccde207 1415 (propagated-inputs
8394619b 1416 (list perl-data-dump))
9aba9b12 1417 (home-page "https://metacpan.org/release/Test-Trap")
5ccde207
RW
1418 (synopsis "Trap exit codes, exceptions, output, and so on")
1419 (description "This module is primarily (but not exclusively) for use in
1420test scripts: A block eval configurable and extensible but by default trapping
1421STDOUT, STDERR, warnings, exceptions, would-be exit codes, and return values
1422from boxed blocks of test code.")
1423 (license perl-license)))
1424
1425(define-public perl-test-utf8
1426 (package
1427 (name "perl-test-utf8")
72313ff4 1428 (version "1.02")
5ccde207
RW
1429 (source
1430 (origin
1431 (method url-fetch)
1432 (uri (string-append "mirror://cpan/authors/id/M/MA/MARKF/"
1433 "Test-utf8-" version ".tar.gz"))
1434 (sha256
72313ff4 1435 (base32 "1mwbdgbbzm54v7wdw3l80bk73lr4z9i8274zlhjhp0s0b6fg10nz"))))
5ccde207
RW
1436 (build-system perl-build-system)
1437 (native-inputs
8394619b 1438 (list perl-module-install))
9aba9b12 1439 (home-page "https://metacpan.org/release/Test-utf8")
5ccde207
RW
1440 (synopsis "UTF-8 testing in Perl")
1441 (description "This module is a collection of tests useful for dealing with
1442UTF-8 strings in Perl. This module has two types of tests: The validity tests
1443check if a string is valid and not corrupt, whereas the characteristics tests
1444will check that string has a given set of characteristics.")
1445 (license perl-license)))
1446
3840c515
CB
1447(define-public perl-test-version
1448 (package
1449 (name "perl-test-version")
1450 (version "2.09")
1451 (source
1452 (origin
1453 (method url-fetch)
1454 (uri (string-append
1455 "mirror://cpan/authors/id/P/PL/PLICEASE/Test-Version-"
1456 version
1457 ".tar.gz"))
1458 (sha256
1459 (base32
1460 "1q1qradaf7r2rb3jhpv01wl8z3bxymkfqrl9gwdhxwx5jwldvqcw"))))
1461 (build-system perl-build-system)
1462 (native-inputs
8394619b 1463 (list perl-test-exception))
3840c515 1464 (propagated-inputs
8394619b 1465 (list perl-file-find-rule-perl))
3840c515
CB
1466 (home-page "https://metacpan.org/release/Test-Version")
1467 (synopsis "Check versions in modules")
1468 (description
1469 "@code{Test::Version} checks to ensure that all modules have a version
1470defined, and that the version is valid.")
1471 (license artistic2.0)))
1472
5ccde207
RW
1473(define-public perl-test-warn
1474 (package
1475 (name "perl-test-warn")
6b1fb33b 1476 (version "0.36")
5ccde207
RW
1477 (source
1478 (origin
1479 (method url-fetch)
6b1fb33b 1480 (uri (string-append "mirror://cpan/authors/id/B/BI/BIGJ/"
5ccde207
RW
1481 "Test-Warn-" version ".tar.gz"))
1482 (sha256
1483 (base32
6b1fb33b 1484 "1nkc7jzxff0w4x9axbpsgxrksqdjnf70rb74q39zikkrsd3a7g7c"))))
5ccde207
RW
1485 (build-system perl-build-system)
1486 (propagated-inputs
8394619b 1487 (list perl-sub-uplevel))
9aba9b12 1488 (home-page "https://metacpan.org/release/Test-Warn")
5ccde207
RW
1489 (synopsis "Perl extension to test methods for warnings")
1490 (description "This module provides a few convenience methods for testing
1491warning based code.")
1492 (license perl-license)))
1493
1494(define-public perl-test-warnings
1495 (package
1496 (name "perl-test-warnings")
bddb78e0 1497 (version "0.030")
5ccde207
RW
1498 (source
1499 (origin
1500 (method url-fetch)
1501 (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
1502 "Test-Warnings-" version ".tar.gz"))
1503 (sha256
1504 (base32
bddb78e0 1505 "0kz2daardmr2i5vg7g3h0cvw9xnp6d25hx92280swr0mvxyr9949"))))
5ccde207 1506 (build-system perl-build-system)
9aba9b12 1507 (home-page "https://metacpan.org/release/Test-Warnings")
5ccde207
RW
1508 (synopsis "Test for warnings and the lack of them")
1509 (description "This module is intended to be used as a drop-in replacement
1510for Test::NoWarnings. It also adds an extra test, but runs this test before
1511done_testing calculates the test count, rather than after. It does this by
1512hooking into done_testing as well as via an END block. You can declare a
1513plan, or not, and things will still Just Work.")
1514 (license perl-license)))
1515
1516(define-public perl-test-without-module
1517 (package
1518 (name "perl-test-without-module")
a1b16662 1519 (version "0.20")
5ccde207
RW
1520 (source
1521 (origin
1522 (method url-fetch)
1523 (uri (string-append "mirror://cpan/authors/id/C/CO/CORION/"
1524 "Test-Without-Module-" version ".tar.gz"))
1525 (sha256
1526 (base32
a1b16662 1527 "0955ib9cz1naz7a2v6lx78kj29q7ihmdn51im6wd1im669yfp6lf"))))
5ccde207 1528 (build-system perl-build-system)
9aba9b12 1529 (home-page "https://metacpan.org/release/Test-Without-Module")
5ccde207
RW
1530 (synopsis "Test fallback behaviour in absence of modules")
1531 (description "This module allows you to deliberately hide modules from a
1532program even though they are installed. This is mostly useful for testing
1533modules that have a fallback when a certain dependency module is not
1534installed.")
1535 (license perl-license)))
1536
1537(define-public perl-test-writevariants
1538 (package
1539 (name "perl-test-writevariants")
6dc75e18 1540 (version "0.014")
5ccde207
RW
1541 (source
1542 (origin
1543 (method url-fetch)
1544 (uri (string-append "mirror://cpan/authors/id/R/RE/REHSACK/"
1545 "Test-WriteVariants-" version ".tar.gz"))
1546 (sha256
6dc75e18 1547 (base32 "11v4j3607bydxsqy2ylx9w6qr3qxcalfx3mdc4q4ccqmxsyw4jb3"))))
5ccde207
RW
1548 (build-system perl-build-system)
1549 (native-inputs
8394619b 1550 (list perl-test-most perl-test-directory))
5ccde207 1551 (propagated-inputs
8394619b
LC
1552 (list perl-data-tumbler perl-file-homedir perl-module-pluggable
1553 perl-module-runtime))
9aba9b12 1554 (home-page "https://metacpan.org/release/Test-WriteVariants")
5ccde207
RW
1555 (synopsis "Dynamic generation of tests")
1556 (description "The Test::WriteVariants module provides for the dynamic
1557generation of tests in nested combinations of contexts.")
677aca12 1558 (license perl-license))) ; see LICENSE
5ccde207
RW
1559
1560(define-public perl-test-yaml
1561 (package
1562 (name "perl-test-yaml")
677aca12 1563 (version "1.07")
5ccde207
RW
1564 (source
1565 (origin
1566 (method url-fetch)
677aca12 1567 (uri (string-append "mirror://cpan/authors/id/T/TI/TINITA/"
5ccde207
RW
1568 "Test-YAML-" version ".tar.gz"))
1569 (sha256
677aca12 1570 (base32 "0pwrrnwi1qaiy3c5522vy0kzncxc9g02r4b056wqqaa69w1hsc0z"))))
5ccde207
RW
1571 (build-system perl-build-system)
1572 (propagated-inputs
8394619b 1573 (list perl-test-base))
9aba9b12 1574 (home-page "https://metacpan.org/release/Test-YAML")
5ccde207
RW
1575 (synopsis "Testing module for YAML implementations")
1576 (description "Test::YAML is a subclass of Test::Base with YAML specific
1577support.")
1578 (license perl-license)))
1579
1580(define-public perl-test-trailingspace
1581 (package
1582 (name "perl-test-trailingspace")
b9f9f9a3 1583 (version "0.0600")
5ccde207
RW
1584 (source
1585 (origin
1586 (method url-fetch)
1587 (uri (string-append
1588 "mirror://cpan/authors/id/S/SH/SHLOMIF/Test-TrailingSpace-"
1589 version
1590 ".tar.gz"))
1591 (sha256
1592 (base32
b9f9f9a3 1593 "04aszaw4n3sra7n7sq2cj4wjjvfghia9zqi47aj00ry0vqx2d7gh"))))
5ccde207
RW
1594 (build-system perl-build-system)
1595 (native-inputs
8394619b 1596 (list perl-module-build perl-file-find-object perl-class-xsaccessor))
5ccde207 1597 (inputs
8394619b 1598 (list perl-file-find-object-rule perl-text-glob perl-number-compare))
5ccde207 1599 (home-page
9aba9b12 1600 "https://metacpan.org/release/Test-TrailingSpace")
5ccde207
RW
1601 (synopsis
1602 "Test for trailing space in Perl source files")
1603 (description "Test::TrailingSpace tests for trailing spaces
1604in Perl source files.")
1605 (license x11)))