perl-check.scm 52 KB

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