gnu: facter: Update to 4.0.33.
[jackhill/guix/guix.git] / gnu / packages / perl-check.scm
index 98b4e39..0aaae65 100644 (file)
@@ -3,17 +3,19 @@
 ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
 ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 Nils Gillmann <ng0@n0.is>
-;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Nikita <nikita@n0.is>
+;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016, 2017 Alex Sassmannshausen <alex@pompo.co>
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2017 Petter <petter@mykolab.ch>
-;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
 ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
+;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
+;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -34,6 +36,7 @@
   #:use-module (guix licenses)
   #:use-module (gnu packages)
   #:use-module (gnu packages valgrind)
+  #:use-module (gnu packages web)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system perl)
@@ -65,9 +68,9 @@ implementation as used in cperl.  It does not store the mocked overrides
 lexically, just dynamically.")
     (license artistic2.0)))
 
-(define-public perl-test2-bundle-extended
+(define-public perl-test2-suite
   (package
-    (name "perl-test2-bundle-extended")
+    (name "perl-test2-suite")
     (version "0.000072")
     (source
       (origin
@@ -82,12 +85,12 @@ lexically, just dynamically.")
      '(#:phases
        (modify-phases %standard-phases
          (add-after 'unpack 'set-env
-           (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1"))))))
+           (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1") #t)))))
     (propagated-inputs
      `(("perl-importer" ,perl-importer)
        ("perl-term-table" ,perl-term-table)
        ("perl-sub-info" ,perl-sub-info)))
-    (home-page "https://metacpan.org/pod/Test2::Bundle::Extended")
+    (home-page "https://metacpan.org/pod/Test2-Suite")
     (synopsis "Full set of tools for Test2::Suite")
     (description "This package provides a rich set of tools, plugins, bundles,
 etc built upon the Test2 testing library.")
@@ -106,8 +109,10 @@ etc built upon the Test2 testing library.")
          (base32
           "002qk6qsm0l6r2kaxywvc38w0yf0mlavgywq8li076pn6kcw3242"))))
     (build-system perl-build-system)
+    (native-inputs
+     `(("perl-ipc-run3" ,perl-ipc-run3)))
     (propagated-inputs
-     `(("perl-test2-bundle-extended" ,perl-test2-bundle-extended)))
+     `(("perl-test2-suite" ,perl-test2-suite)))
     (home-page "https://metacpan.org/release/Test2-Plugin-NoWarnings")
     (synopsis "Fail if tests warn")
     (description "Loading this plugin causes your tests to fail if there any
@@ -141,6 +146,30 @@ framework base class.  It concentrates on offering reusable data driven
 patterns, so that you can write tests with a minimum of code.")
     (license perl-license)))
 
+(define-public perl-test-checkdeps
+  (package
+    (name "perl-test-checkdeps")
+    (version "0.010")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "mirror://cpan/authors/id/L/LE/LEONT/Test-CheckDeps-"
+             version
+             ".tar.gz"))
+       (sha256
+        (base32
+         "1vjinlixxdx6gfcw8y1dw2rla8bfhi8nmgcqr3nffc7kqskcrz36"))))
+    (build-system perl-build-system)
+    (propagated-inputs
+     `(("perl-cpan-meta-check" ,perl-cpan-meta-check)))
+    (home-page "https://metacpan.org/release/Test-CheckDeps")
+    (synopsis "Check for presence of dependencies")
+    (description
+     "This module provides a test that checks all dependencies have been
+installed properly.")
+    (license perl-license)))
+
 (define-public perl-test-class
   (package
     (name "perl-test-class")
@@ -204,22 +233,20 @@ using @code{Test::Class}.")
 (define-public perl-test-cleannamespaces
   (package
     (name "perl-test-cleannamespaces")
-    (version "0.22")
+    (version "0.24")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
                            "Test-CleanNamespaces-" version ".tar.gz"))
        (sha256
-        (base32
-         "1jma95agqqy7iwdcl6jbg1waqz7mjqng4l046lpknhfxjhcj4al6"))))
+        (base32 "0yijspncqgmbkkxrh66xx1pliajar05yqhzq6m4nb6p8x1lmb39k"))))
     (build-system perl-build-system)
     (native-inputs
      `(("perl-file-pushd" ,perl-file-pushd)
        ("perl-test-requires" ,perl-test-requires)
        ("perl-test-deep" ,perl-test-deep)
        ("perl-test-warnings" ,perl-test-warnings)
-       ("perl-test-tester" ,perl-test-tester)
        ("perl-test-needs" ,perl-test-needs)))
     (propagated-inputs
      `(("perl-namespace-clean" ,perl-namespace-clean)
@@ -325,8 +352,7 @@ specification.")
                (base32
                 "1kdy06r0yg7zwarqglc9163vbfb0sfc4s6ld4pw5q7i9f7mghzi0"))))
     (build-system perl-build-system)
-    (inputs `(("perl-test-tester" ,perl-test-tester)
-              ("perl-test-nowarnings" ,perl-test-nowarnings)))
+    (inputs `(("perl-test-nowarnings" ,perl-test-nowarnings)))
     (synopsis "Flexible deep comparison for the Test::Builder framework")
     (description
      "Test::Deep compares two structures by going through each level, ensuring
@@ -339,15 +365,14 @@ structures without getting caught in an infinite loop.")
 (define-public perl-test-differences
   (package
     (name "perl-test-differences")
-    (version "0.64")
+    (version "0.67")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "mirror://cpan/authors/id/D/DC/DCANTRELL/"
                            "Test-Differences-" version ".tar.gz"))
        (sha256
-        (base32
-         "0xmj5vgklq4yqvi7l63ky1k6g7fhww68llpmw9rhlaihqbcrsicz"))))
+        (base32 "1nkqr3m4lbzw7fkkzah42aiqlhxapamk6kw7hj90cjwkifsbp3f8"))))
     (build-system perl-build-system)
     (native-inputs
      `(("perl-module-build" ,perl-module-build)))
@@ -362,6 +387,30 @@ functions.")
     ;; license, any version, ..."
     (license gpl3+)))
 
+(define-public perl-test-dir
+  (package
+    (name "perl-test-dir")
+    (version "1.16")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://cpan/authors/id/M/MT/MTHURN/"
+                           "Test-Dir-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1hpafgr93jjl6s8spskhdxhgich4cccmaiq99mla5diyj4iv6ckk"))))
+    (build-system perl-build-system)
+    (propagated-inputs
+     `(("perl-pod-coverage" ,perl-pod-coverage)
+       ("perl-test-pod" ,perl-test-pod)
+       ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+    (home-page "https://metacpan.org/release/Test-Dir")
+    (synopsis "Utilities for testing directory attributes")
+    (description
+     "This modules provides a collection of test utilities for directory
+attributes.")
+    (license perl-license)))
+
 (define-public perl-test-directory
   (package
     (name "perl-test-directory")
@@ -410,6 +459,40 @@ files, as well as to verify that there are no missing or unknown files.")
 @file{MANIFEST} file matches its distribution.")
     (license perl-license)))
 
+(define-public perl-test-distribution
+  (package
+    (name "perl-test-distribution")
+    (version "2.00")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append
+            "mirror://cpan/authors/id/S/SR/SRSHAH/Test-Distribution-"
+            version ".tar.gz"))
+      (sha256
+       (base32
+        "0s1bj459qaw2x1fckklv9irpf3mr8gp2cm9vlyrb5dyanrzx1v2h"))))
+    (build-system perl-build-system)
+    (native-inputs
+     `(("perl-module-build" ,perl-module-build)))
+    (propagated-inputs
+     `(("perl-file-find-rule" ,perl-file-find-rule)
+       ("perl-pod-coverage" ,perl-pod-coverage)
+       ("perl-test-pod" ,perl-test-pod)
+       ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+    (home-page "https://metacpan.org/release/Test-Distribution")
+    (synopsis "Perform tests on all modules of a distribution")
+    (description "When used in a test script @code{Test::Distribution}
+goes through all the modules in your distribution, checks their POD,
+checks that they compile successfully and checks that they all define
+a $VERSION.  In addition, this module performs a number of tests on
+the distribution itself.  It checks that the distributed files match
+the SIGNATURE file, if that file exists.  It checks that the
+distribution is not missing any core description files.  It also
+checks that the complete set of pre-requisite packages are listed in
+the Makefile.PL file.")
+    (license perl-license)))
+
 (define-public perl-test-eol
   (package
     (name "perl-test-eol")
@@ -501,6 +584,58 @@ Test::Exception.  It does much less, but should allow greater flexibility in
 testing exception-throwing code with about the same amount of typing.")
     (license perl-license)))
 
+(define-public perl-test-file
+  (package
+    (name "perl-test-file")
+    (version "1.443")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "mirror://cpan/authors/id/B/BD/BDFOY/Test-File-"
+             version
+             ".tar.gz"))
+       (sha256
+        (base32
+         "1mdwb3x8d4l24wsymamsnq2c73a637v4q5kmb5xqqz31iymsdd31"))))
+    (build-system perl-build-system)
+    (native-inputs
+     `(("perl-test-utf8" ,perl-test-utf8)))
+    (home-page "https://metacpan.org/release/Test-File")
+    (synopsis "Utilities for testing file attributes")
+    (description
+     "@code{Test::File} provides a collection of test utilities for file
+attributes.")
+    (license perl-license)))
+
+(define-public perl-test-file-contents
+  (package
+    (name "perl-test-file-contents")
+    (version "0.23")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "mirror://cpan/authors/id/D/DW/DWHEELER/Test-File-Contents-"
+             version
+             ".tar.gz"))
+       (sha256
+        (base32
+         "0g8zgfyw84181snw7ghahnl9r4lrmlfj7zwi76sv8d0bj7xssvyd"))))
+    (build-system perl-build-system)
+    (native-inputs
+     `(("perl-module-build" ,perl-module-build)))
+    (propagated-inputs
+     `(("perl-test-pod" ,perl-test-pod)
+       ("perl-test-pod-coverage" ,perl-test-pod-coverage)
+       ("perl-text-diff" ,perl-text-diff)))
+    (home-page "https://metacpan.org/release/Test-File-Contents")
+    (synopsis "Test routines for examining the contents of files")
+    (description
+     "@{Test::File::Contents} provides functions for testing the contents of
+files.")
+    (license perl-license)))
+
 (define-public perl-test-file-sharedir-dist
   (package
     (name "perl-test-file-sharedir-dist")
@@ -577,15 +712,14 @@ contents of a file is equal to a particular string.")
 (define-public perl-test-harness
   (package
     (name "perl-test-harness")
-    (version "3.41")
+    (version "3.42")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "mirror://cpan/authors/id/L/LE/LEONT/"
                            "Test-Harness-" version ".tar.gz"))
        (sha256
-        (base32
-         "0cgdgzywvscbvb9i0dmd2ls5jwqlnf2z6hx4f4lljpvdjd59v3m8"))))
+        (base32 "0lwfaamhpqia0ks4pcci83xbqz6jhng7acv95qk6wbd8zr70vn8g"))))
     (build-system perl-build-system)
     (arguments
      `(#:phases
@@ -648,14 +782,14 @@ you test against long strings.")
 (define-public perl-test-manifest
   (package
     (name "perl-test-manifest")
-    (version "2.02")
+    (version "2.021")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://cpan/authors/id/B/BD/BDFOY/"
                                   "Test-Manifest-" version ".tar.gz"))
               (sha256
                (base32
-                "15ik52l9macrrfizf4y6wj71d4lx7w590h2dfajnkmbxmz786iq6"))))
+                "1n9jscnni24sbp4v5gjlcy3iknfwvmy0731xwvk1c3jq3kbslym4"))))
     (build-system perl-build-system)
     (native-inputs
      `(("perl-test-pod" ,perl-test-pod)
@@ -707,20 +841,21 @@ memory_cycle_ok( $object );
 (define-public perl-test-mockmodule
   (package
     (name "perl-test-mockmodule")
-    (version "0.13")
+    (version "0.171.0")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "mirror://cpan/authors/id/G/GF/GFRANKS/"
-                           "Test-MockModule-" version ".tar.gz"))
+                           "Test-MockModule-v" version ".tar.gz"))
        (sha256
-        (base32 "0lwh6fvnc16r6d74vvh5h4b5a1spcslpjb3mcqbv23k01lm78wvl"))))
+        (base32 "1arqgb1773zym5dqlwm6kz48bfrccjhb5bjfsif0vkalwq2gvm7b"))))
     (build-system perl-build-system)
     (native-inputs
      `(("perl-module-build" ,perl-module-build)
        ;; For tests.
        ("perl-test-pod" ,perl-test-pod)
-       ("perl-test-pod-coverage" ,perl-test-pod-coverage)))
+       ("perl-test-pod-coverage" ,perl-test-pod-coverage)
+       ("perl-test-warnings" ,perl-test-warnings)))
     (propagated-inputs
      `(("perl-super" ,perl-super)))
     (home-page "https://metacpan.org/release/Test-MockModule")
@@ -737,25 +872,24 @@ you @code{unmock()} the subroutine.")
 (define-public perl-test-mockobject
   (package
     (name "perl-test-mockobject")
-    (version "1.20150527")
+    (version "1.20191002")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "mirror://cpan/authors/id/C/CH/CHROMATIC/"
                            "Test-MockObject-" version ".tar.gz"))
        (sha256
-        (base32
-         "160xvhbpwqjaff4fgckvldknldzcbn1z3jvyzybs7cqlj1x3bwdd"))))
+        (base32 "160r36j727hw6syazh6sfq862f95dp1zcga0nil7cjlry77lqsn7"))))
     (build-system perl-build-system)
     (native-inputs
-     `(("perl-test-exception" ,perl-test-exception)
+     `(("perl-cgi" ,perl-cgi)
+       ("perl-test-exception" ,perl-test-exception)
        ("perl-test-warn" ,perl-test-warn)))
     (propagated-inputs
      `(("perl-test-exception" ,perl-test-exception)
        ("perl-test-warn" ,perl-test-warn)
        ("perl-universal-can" ,perl-universal-can)
        ("perl-universal-isa" ,perl-universal-isa)))
-    (arguments `(#:tests? #f))          ;TODO: tests require perl-cgi
     (home-page "https://metacpan.org/release/Test-MockObject")
     (synopsis "Emulate troublesome interfaces in Perl")
     (description "Test::MockObject allows you to create objects that conform
@@ -766,15 +900,14 @@ the behavior, just the input and the output.")
 (define-public perl-test-mocktime
   (package
     (name "perl-test-mocktime")
-    (version "0.15")
+    (version "0.17")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "mirror://cpan/authors/id/D/DD/DDICK/"
                            "Test-MockTime-" version ".tar.gz"))
        (sha256
-        (base32
-         "0j6cxmkj52i5xkwg8dg6klm0dh386fzc5v80n5nbdalpvq0h48c8"))))
+        (base32 "1y820qsq7yf7r6smy5c6f0mpf2cis2q24vwmpim1svv0n8cf2qrk"))))
     (propagated-inputs
      `(("perl-time-piece" ,perl-time-piece)))
     (build-system perl-build-system)
@@ -787,6 +920,29 @@ set_relative_time, set_absolute_time or set_fixed_time to alter future calls
 to gmtime,time or localtime.")
     (license perl-license)))
 
+(define-public perl-test-more-utf8
+  (package
+    (name "perl-test-more-utf8")
+    (version "0.05")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "mirror://cpan/authors/id/M/MO/MONS/Test-More-UTF8-"
+               version ".tar.gz"))
+        (sha256
+         (base32
+          "016fs77lmw8xxrcnapvp6wq4hjwgsdfi3l9ylpxgxkcpdarw9wdr"))))
+    (build-system perl-build-system)
+    (home-page "https://metacpan.org/release/Test-More-UTF8")
+    (synopsis "Enhance Test::More for UTF8-based projects")
+    (description "@code{Test::More::UTF8} is a simple extension for the widely
+used @code{Test::More} module.  By default, it will do a @code{binmode
+@code{:utf8}} on all of @code{Test::Builder}'s output handles thus enabling the
+easy use flagged strings without warnings like \"Wide character in print
+@dots{}\"")
+    (license perl-license)))
+
 (define-public perl-test-most
   (package
     (name "perl-test-most")
@@ -877,7 +1033,6 @@ code.")
                (base32
                 "0v385ch0hzz9naqwdw2az3zdqi15gka76pmiwlgsy6diiijmg2k3"))))
     (build-system perl-build-system)
-    (inputs `(("perl-test-tester" ,perl-test-tester)))
     (synopsis "Ensure no warnings are produced while testing")
     (description
      "This modules causes any warnings during testing to be captured and
@@ -911,6 +1066,34 @@ usually called epsilon.  This module provides such a function for use with
 @code{Test::More}.")
     (license asl2.0)))
 
+(define-public perl-test-object
+  (package
+    (name "perl-test-object")
+    (version "0.08")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
+                           "Test-Object-" version ".tar.gz"))
+       (sha256
+        (base32 "1fyhn558kvla37fb60fzdr6kd2kfcxcmpr8884zk2dvq2ij8j9v5"))))
+    (build-system perl-build-system)
+    (home-page "https://metacpan.org/release/Test-Object")
+    (synopsis "Thoroughly testing objects via registered handlers")
+    (description
+     "In situations where you have deep trees of classes,
+there is a common situation in which you test a module 4 or 5 subclasses down,
+which should follow the correct behaviour of not just the subclass, but of all
+the parent classes.
+
+This should be done to ensure that the implementation of a subclass has not
+somehow ``broken'' the object's behaviour in a more general sense.
+
+Test::Object is a testing package designed to allow you to easily test what
+you believe is a valid object against the expected behaviour of all of the
+classes in its inheritance tree in one single call.")
+    (license perl-license)))
+
 (define-public perl-test-output
   (package
     (name "perl-test-output")
@@ -925,7 +1108,6 @@ usually called epsilon.  This module provides such a function for use with
     (build-system perl-build-system)
     (propagated-inputs
      `(("perl-capture-tiny" ,perl-capture-tiny)
-       ("perl-test-tester" ,perl-test-tester)
        ("perl-sub-exporter" ,perl-sub-exporter)))
     (synopsis "Utilities to test STDOUT and STDERR messages")
     (description
@@ -1050,7 +1232,7 @@ reported, and the tests skipped.")
 (define-public perl-test-runvalgrind
   (package
     (name "perl-test-runvalgrind")
-    (version "0.2.0")
+    (version "0.2.1")
     (source
      (origin
        (method url-fetch)
@@ -1059,8 +1241,7 @@ reported, and the tests skipped.")
              version
              ".tar.gz"))
        (sha256
-        (base32
-         "0cfndkn2k9pcx290wcblwmrwh1ybs0grxjlsrp8fbqqbmmjpb53h"))))
+        (base32 "175hlycrhgwrp7j4rwx5bk4fd6775242wjdqv107rvgsrszsi915"))))
     (build-system perl-build-system)
     (native-inputs
      `(("perl-module-build" ,perl-module-build)))
@@ -1100,15 +1281,14 @@ bin as is also commonly used) paths of your Perl distribution.")
 (define-public perl-test-sharedfork
   (package
     (name "perl-test-sharedfork")
-    (version "0.29")
+    (version "0.35")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "mirror://cpan/authors/id/E/EX/EXODIST/"
                            "Test-SharedFork-" version ".tar.gz"))
        (sha256
-        (base32
-         "0vlak10q4gcf0ch0rfcb9lvddav6r8h15iipzbkbgf9mrj47gbv3"))))
+        (base32 "17y52j20k1bs9dgf4n6rhh9dn4cfxxbnfn2cfs7pb00fc5jyhci9"))))
     (build-system perl-build-system)
     (native-inputs
      `(("perl-test-requires" ,perl-test-requires)))
@@ -1121,14 +1301,14 @@ makes fork(2) safe to use in test cases.")
 (define-public perl-test-simple
   (package
     (name "perl-test-simple")
-    (version "1.302136")
+    (version "1.302172")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://cpan/authors/id/E/EX/EXODIST/"
                                   "Test-Simple-" version ".tar.gz"))
               (sha256
                (base32
-                "0inlv8f4rbhsw6qnqhf1w6ay153xbw27fldmb2pmg4ihn19mr6ld"))))
+                "1z1l8dgssf0mqbgik33sc5j48iiapppkwmacwah990hj0j7pd23k"))))
     (build-system perl-build-system)
     (synopsis "Basic utilities for writing tests")
     (description
@@ -1136,6 +1316,33 @@ makes fork(2) safe to use in test cases.")
     (home-page "https://metacpan.org/release/Test-Simple")
     (license perl-license)))
 
+(define-public perl-test-subcalls
+  (package
+    (name "perl-test-subcalls")
+    (version "1.10")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
+                           "Test-SubCalls-" version ".tar.gz"))
+       (sha256
+        (base32 "1hmnv9nkdzyrr6yis0dnkf4lk0hwld3zapiyq7mizrq5barykhfb"))))
+    (build-system perl-build-system)
+    (propagated-inputs
+     `(("perl-hook-lexwrap" ,perl-hook-lexwrap)))
+    (home-page "https://metacpan.org/release/Test-SubCalls")
+    (synopsis "Track the number of times subs are called")
+    (description
+     "There are a number of different situations (like testing caching
+code) where you want to want to do a number of tests, and then verify
+that some underlying subroutine deep within the code was called
+a specific number of times.
+
+Test::SubCalls module provides a number of functions for doing testing
+in this way in association with your normal Test::More (or similar)
+test scripts.")
+    (license perl-license)))
+
 (define-public perl-test-taint
   (package
     (name "perl-test-taint")
@@ -1210,22 +1417,20 @@ cause a test fail unless it is exactly as @code{perltidy} would like it to be.")
 (define-public perl-test-trap
   (package
     (name "perl-test-trap")
-    (version "0.3.3")
+    (version "0.3.4")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "mirror://cpan/authors/id/E/EB/EBHANSSEN/"
                            "Test-Trap-v" version ".tar.gz"))
        (sha256
-        (base32
-         "1676gqjyk0zig3yyqv053y5j1pajp2af08ffmgx94n414whbhm5c"))))
+        (base32 "1qjs2080kcc66s4d7499br5lw2qmhr9gxky4xsl6vjdn6dpna10b"))))
     (build-system perl-build-system)
     (native-inputs
      `(("perl-module-build" ,perl-module-build)
        ("perl-test-simple" ,perl-test-simple)))
     (propagated-inputs
-     `(("perl-test-tester" ,perl-test-tester)
-       ("perl-data-dump" ,perl-data-dump)))
+     `(("perl-data-dump" ,perl-data-dump)))
     (home-page "https://metacpan.org/release/Test-Trap")
     (synopsis "Trap exit codes, exceptions, output, and so on")
     (description "This module is primarily (but not exclusively) for use in
@@ -1257,6 +1462,32 @@ check if a string is valid and not corrupt, whereas the characteristics tests
 will check that string has a given set of characteristics.")
     (license perl-license)))
 
+(define-public perl-test-version
+  (package
+    (name "perl-test-version")
+    (version "2.09")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "mirror://cpan/authors/id/P/PL/PLICEASE/Test-Version-"
+             version
+             ".tar.gz"))
+       (sha256
+        (base32
+         "1q1qradaf7r2rb3jhpv01wl8z3bxymkfqrl9gwdhxwx5jwldvqcw"))))
+    (build-system perl-build-system)
+    (native-inputs
+     `(("perl-test-exception" ,perl-test-exception)))
+    (propagated-inputs
+     `(("perl-file-find-rule-perl" ,perl-file-find-rule-perl)))
+    (home-page "https://metacpan.org/release/Test-Version")
+    (synopsis "Check versions in modules")
+    (description
+     "@code{Test::Version} checks to ensure that all modules have a version
+defined, and that the version is valid.")
+    (license artistic2.0)))
+
 (define-public perl-test-warn
   (package
     (name "perl-test-warn")
@@ -1324,15 +1555,14 @@ installed.")
 (define-public perl-test-writevariants
   (package
     (name "perl-test-writevariants")
-    (version "0.010")
+    (version "0.014")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "mirror://cpan/authors/id/R/RE/REHSACK/"
                            "Test-WriteVariants-" version ".tar.gz"))
        (sha256
-        (base32
-         "0kklp05fj98yiq8znyfx9lx1vmjay2ypfb868qdwv3kf93m5zjwr"))))
+        (base32 "11v4j3607bydxsqy2ylx9w6qr3qxcalfx3mdc4q4ccqmxsyw4jb3"))))
     (build-system perl-build-system)
     (native-inputs
      `(("perl-test-most" ,perl-test-most)
@@ -1340,25 +1570,25 @@ installed.")
     (propagated-inputs
      `(("perl-data-tumbler" ,perl-data-tumbler)
        ("perl-file-homedir" ,perl-file-homedir)
-       ("perl-module-pluggable" ,perl-module-pluggable)))
+       ("perl-module-pluggable" ,perl-module-pluggable)
+       ("perl-module-runtime" ,perl-module-runtime)))
     (home-page "https://metacpan.org/release/Test-WriteVariants")
     (synopsis "Dynamic generation of tests")
     (description "The Test::WriteVariants module provides for the dynamic
 generation of tests in nested combinations of contexts.")
-    (license perl-license)))  ;See LICENSE
+    (license perl-license)))  ; see LICENSE
 
 (define-public perl-test-yaml
   (package
     (name "perl-test-yaml")
-    (version "1.06")
+    (version "1.07")
     (source
      (origin
        (method url-fetch)
-       (uri (string-append "mirror://cpan/authors/id/I/IN/INGY/"
+       (uri (string-append "mirror://cpan/authors/id/T/TI/TINITA/"
                            "Test-YAML-" version ".tar.gz"))
        (sha256
-        (base32
-         "0hxrfs7p9hqkhvv5nhk2hd3kh32smwng4nz47b8xf4iw2q1n2dr7"))))
+        (base32 "0pwrrnwi1qaiy3c5522vy0kzncxc9g02r4b056wqqaa69w1hsc0z"))))
     (build-system perl-build-system)
     (propagated-inputs
      `(("perl-test-base" ,perl-test-base)))