;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
-;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
-;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2017, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 ng0 <ng0@n0.is>
;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
(define-public check
(package
(name "check")
- (version "0.12.0")
+ (version "0.13.0")
(source
(origin
(method url-fetch)
version "/check-" version ".tar.gz"))
(sha256
(base32
- "0d22h8xshmbpl9hba9ch3xj8vb9ybm5akpsbbh7yj07fic4h2hj6"))))
+ "02crar51gniijrrl9p8f9maibnwc33n76kw5cqr7xk3s8hqnncy4"))))
(build-system gnu-build-system)
(home-page "https://libcheck.github.io/check/")
(synopsis "Unit test framework for C")
source code editors and IDEs.")
(license license:lgpl2.1+)))
+;; Some packages require this older version. Removed once no longer needed.
+(define-public check-0.12
+ (package/inherit
+ check
+ (version "0.12.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/libcheck/check/releases"
+ "/download/" version "/check-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0d22h8xshmbpl9hba9ch3xj8vb9ybm5akpsbbh7yj07fic4h2hj6"))))))
+
(define-public cunit
(package
(name "cunit")
(define-public cppunit
(package
(name "cppunit")
- (version "1.13.2")
+ (version "1.14.0")
(source (origin
(method url-fetch)
(uri (string-append "http://dev-www.libreoffice.org/src/"
name "-" version ".tar.gz"))
(sha256
(base32
- "17s2kzmkw3kfjhpp72rfppyd7syr7bdq5s69syj2nvrlwd3d4irz"))))
+ "1027cyfx5gsjkdkaf6c2wnjh68882grw8n672018cj3vs9lrhmix"))))
;; Explicitly link with libdl. This is expected to be done by packages
;; relying on cppunit for their tests. However, not all of them do.
;; If we added the linker flag to such packages, we would pollute all
supervised tests.")
(license license:lgpl2.1))) ; no copyright notices. LGPL2.1 is in the tarball
-;; Some packages require this newer version of cppunit. However, it needs
-;; C++11 support, which is not enabled by default in our current GCC, and
-;; updating in-place would require adding CXXFLAGS to many dependent packages.
-;; Thus, keep as a separate variable for now.
-;; TODO: Remove this when our default GCC is updated to 6 or higher.
-(define-public cppunit-1.14
- (package
- (inherit cppunit)
- (version "1.14.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://dev-www.libreoffice.org/src/"
- "cppunit-" version ".tar.gz"))
- (sha256
- (base32
- "1027cyfx5gsjkdkaf6c2wnjh68882grw8n672018cj3vs9lrhmix"))))))
-
;; When dependent packages upgraded to use newer version of catch, this one should
;; be removed.
(define-public catch-framework
multi-paradigm automated test framework for C++ and Objective-C.")
(license license:boost1.0)))
-(define-public catch-framework2
+(define-public catch-framework2-1
(package
(name "catch2")
(version "1.12.2")
a multi-paradigm automated test framework for C++ and Objective-C.")
(license license:boost1.0)))
+(define-public catch-framework2
+ (package
+ (name "catch2")
+ (version "2.1.2")
+ (home-page "https://github.com/catchorg/Catch2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/catchorg/Catch2")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "14vcckqmbydjsg40ngi6iv999zimysh2l7fmrqj1d7xl990qz233"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("python" ,python-wrapper)))
+ (synopsis "Automated test framework for C++ and Objective-C")
+ (description "Catch2 stands for C++ Automated Test Cases in Headers and is
+a multi-paradigm automated test framework for C++ and Objective-C.")
+ (license license:boost1.0)))
+
(define-public cmdtest
(package
(name "cmdtest")
(define-public cmocka
(package
(name "cmocka")
- (version "1.1.3")
+ (version "1.1.5")
(source (origin
(method url-fetch)
(uri (string-append "https://cmocka.org/files/"
version ".tar.xz"))
(sha256
(base32
- "1bxzzafjlwzgldcb07hjnlnqvh88wh21r2kw7z8f704w5bvvrsj3"))))
+ "1dm8pdvkyfa8dsbz9bpq7wwgixjij4sii9bbn5sgvqjm5ljdik7h"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ; no test target
(define-public cppcheck
(package
(name "cppcheck")
- (version "1.87")
+ (version "1.90")
(source (origin
(method git-fetch)
(uri (git-reference
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1xiy54rz99nzbpwj35jiyssd2nc6k5k0lw5ml6nh2qnmbfkl8swl"))))
+ (base32 "0h7ir2x0k005fm586dxmaphgv5cyz25k3k4sh02p7zb78gzx398h"))))
(build-system cmake-build-system)
(arguments
'(#:configure-flags '("-DBUILD_TESTS=ON")))
and it supports a very flexible form of test discovery.")
(license license:lgpl3+)))
+(define-public doctest
+ (package
+ (name "doctest")
+ (version "2.3.6")
+ (home-page "https://github.com/onqtam/doctest")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference (url home-page) (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "070gkwffi73i2p0azga9yxj8km32bp8bw4jvkvz1vzlpavyii5kn"))))
+ (build-system cmake-build-system)
+ (synopsis "C++ test framework")
+ (description
+ "doctest is a single-header testing framework for C++11 and later. It
+has been designed to be fast, light and unintrusive.")
+ (license license:expat)))
+
(define-public go-gopkg.in-check.v1
(let ((commit "788fd78401277ebd861206a03c884797c6ec5541")
(revision "1"))
(home-page "https://github.com/smartystreets/goconvey")
(license license:expat)))
-;; XXX When updating, check whether ZNC's GOOGLETEST-SOURCES can be
-;; switched back to simply using (PACKAGE-SOURCE ...).
(define-public googletest
(package
(name "googletest")
- (version "1.8.0")
+ (version "1.10.0")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/google/googletest.git")
- (commit (string-append "release-" version))))
+ (url "https://github.com/google/googletest.git")
+ (commit (string-append "release-" version))))
(file-name (git-file-name name version))
(sha256
- (base32
- "0bjlljmbf8glnd9qjabx73w6pd7ibv43yiyngqvmvgxsabzr8399"))))
+ (base32 "1zbmab9295scgg4z2vclgfgjchfjailjnvzc6f5x9jvlsdi3dpwz"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags '("-DBUILD_SHARED_LIBS=ON")))
(native-inputs
- `(("python-2" ,python-2)))
+ `(("python" ,python-wrapper)))
(home-page "https://github.com/google/googletest/")
(synopsis "Test discovery and XUnit test framework")
(description "Google Test features an XUnit test framework, automated test
generation.")
(license license:bsd-3)))
+(define-public googletest-1.8
+ (package/inherit
+ googletest
+ (version "1.8.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/google/googletest.git")
+ (commit (string-append "release-" version))))
+ (file-name (git-file-name "googletest" version))
+ (sha256
+ (base32
+ "0270msj6n7mggh4xqqjp54kswbl7mkcc8px1p5dqdpmw5ngh9fzk"))))))
+
(define-public cpputest
(package
(name "cpputest")
(define-public python-parameterized
(package
(name "python-parameterized")
- (version "0.6.1")
+ (version "0.7.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "parameterized" version))
(sha256
(base32
- "1qj1939shm48d9ql6fm1nrdy4p7sdyj8clz1szh5swwpf1qqxxfa"))))
+ "1vapry9lyfb2mlpgk2wh9079hzxzq5120bsczncxxay663mdp53a"))))
(build-system python-build-system)
- (arguments '(#:tests? #f)) ; there are no tests
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (if tests?
+ (invoke "nosetests" "-v")
+ (format #t "test suite not run~%"))
+ #t)))))
+ (native-inputs
+ `(("python-mock" ,python-mock)
+ ("python-nose" ,python-nose)))
(home-page "https://github.com/wolever/parameterized")
(synopsis "Parameterized testing with any Python test framework")
(description
"Parameterized is a Python library that aims to fix parameterized testing
for every Python test framework. It supports nose, py.test, and unittest.")
+ (properties `((python2-variant . ,(delay python2-parameterized))))
(license license:bsd-2)))
(define-public python2-parameterized
- (package-with-python2 python-parameterized))
+ (let ((base (package-with-python2 (strip-python2-variant
+ python-parameterized))))
+ (package/inherit
+ base
+ (source
+ (origin
+ (inherit (package-source base))
+ (patches (search-patches "python2-parameterized-docstring-test.patch")))))))
(define-public python-minimock
(package
(define-public python-pytest
(package
(name "python-pytest")
- (version "3.8.0")
+ (version "4.4.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pytest" version))
(sha256
(base32
- "17grcfvd6ggvvqmprwv5y8g319nayam70hr43ssjwj40ws27z858"))))
+ "18w38kjnffdcrlbw6ny6dksgxai6x9bxpjs2m6klqmb8hfzjkcb2"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
- (add-before 'check 'disable-invalid-tests
+ (replace 'check
(lambda _
- ;; Some tests involves the /usr directory, and fails.
- (substitute* "testing/test_argcomplete.py"
- (("def test_remove_dir_prefix\\(self\\):")
- "@pytest.mark.xfail\n def test_remove_dir_prefix(self):"))
- (substitute* "testing/test_argcomplete.py"
- (("def test_remove_dir_prefix" line)
- (string-append "@pytest.mark.skip"
- "(reason=\"Assumes that /usr exists.\")\n "
- line)))
- #t))
- (replace 'check (lambda _ (invoke "pytest" "-vv"))))))
+ (invoke "pytest" "-vv" "-k"
+ (string-append
+ ;; These tests involve the /usr directory, and fails.
+ "not test_remove_dir_prefix"
+ " and not test_argcomplete"
+ ;; This test tries to override PYTHONPATH, and
+ ;; subsequently fails to locate the test libraries.
+ " and not test_collection")))))))
(propagated-inputs
`(("python-atomicwrites" ,python-atomicwrites)
("python-attrs" ,python-attrs-bootstrap)
(define-public python-pytest-runner
(package
(name "python-pytest-runner")
- (version "4.2")
+ (version "4.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pytest-runner" version))
(sha256
(base32
- "1gkpyphawxz38ni1gdq1fmwyqcg02m7ypzqvv46z06crwdxi2gyj"))))
+ "1x0d9n40lsiphblbs61rdc0d5r31f6vh0vcahqdv0mffakbnrb80"))))
(build-system python-build-system)
(native-inputs
`(("python-pytest" ,python-pytest-bootstrap)
(define-public python2-pytest-runner
(package-with-python2 python-pytest-runner))
+;; python-bleach 3.1.0 requires this ancient version of pytest-runner.
+;; Remove once no longer needed.
+(define-public python-pytest-runner-2
+ (package/inherit
+ python-pytest-runner
+ (version "2.12.2")
+ (source (origin
+ (method url-fetch)
+ (uri (pypi-uri "pytest-runner" version))
+ (sha256
+ (base32
+ "11ivjj9hfphkv4yfb2g74av4yy86y8gcbf7gbif0p1hcdfnxg3w6"))))))
+
+(define-public python2-pytest-runner-2
+ (package-with-python2 python-pytest-runner-2))
+
(define-public python-pytest-mock
(package
(name "python-pytest-mock")
(build-system python-build-system)
(native-inputs
`(("python-pytest" ,python-pytest)))
- (home-page "http://pythonpaste.org/scripttest/")
+ (home-page (string-append "https://web.archive.org/web/20161029233413/"
+ "http://pythonpaste.org/scripttest/"))
(synopsis "Python library to test command-line scripts")
(description "Scripttest is a Python helper library for testing
interactive command-line applications. With it you can run a script in a
(define-public python-coverage
(package
(name "python-coverage")
- (version "4.4.1")
+ (version "4.5.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "coverage" version))
(sha256
(base32
- "097l4s3ssxm1vncsn0nw3a1pbzah28773q36c1ab9wz01r04973s"))))
+ "02f6m073qdispn96rc616hg0rnmw1pgqzw3bgxwiwza4zf9hirlx"))))
(build-system python-build-system)
(arguments
;; FIXME: 95 tests failed, 539 passed, 6 skipped, 2 errors.
(define-public python-hypothesis
(package
(name "python-hypothesis")
- (version "3.70.3")
+ (version "4.18.3")
(source (origin
(method url-fetch)
(uri (pypi-uri "hypothesis" version))
(sha256
(base32
- "1rshs1japfmwgar98yrkq4hg4z2q76hlnq7w2n3lfbjnscn1jd9b"))))
+ "0a35nwqyjnm4cphi43xracqpkws0ip61mndvqb1iqq7gkva83lb1"))))
(build-system python-build-system)
(native-inputs
- `(;; FIXME: Change to python-flake8 in the next rebuild cycle.
- ("python-flake8" ,python-flake8-3.5)
+ `(("python-flake8" ,python-flake8)
("python-pytest" ,python-pytest-bootstrap)))
(propagated-inputs
`(("python-attrs" ,python-attrs-bootstrap)
statements in the module it tests.")
(license license:gpl3+)))
+;; Further releases, up to 2.4.3, have failing unit tests. See:
+;; https://github.com/PyCQA/pylint/issues/3198.
(define-public python-pylint
(package
(name "python-pylint")
- (version "1.7.2")
+ (version "2.3.1")
(source
(origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/PyCQA/pylint/archive/pylint-"
- version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/PyCQA/pylint")
+ (commit (string-append "pylint-" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0mzn1czhf1mgr2wiqfihb274sja02h899b85kywdpivppa9nwrmp"))))
+ "17vvzbcqmkhr4icq5p3737nbiiyj1y3g1pa08n9mb1bsnvxmqq0z"))))
(build-system python-build-system)
(native-inputs
`(("python-pytest" ,python-pytest)
("python-isort" ,python-isort)
("python-mccabe" ,python-mccabe)
("python-six" ,python-six)))
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (replace 'check
- (lambda _
- ;; Somehow, tests for python2-pylint
- ;; fail if run from the build directory
- (let ((work "/tmp/work"))
- (mkdir-p work)
- (setenv "PYTHONPATH"
- (string-append (getenv "PYTHONPATH") ":" work))
- (copy-recursively "." work)
- (with-directory-excursion "/tmp"
- (invoke "python" "-m" "unittest" "discover"
- "-s" (string-append work "/pylint/test")
- "-p" "*test_*.py"))))))))
(home-page "https://github.com/PyCQA/pylint")
(synopsis "Python source code analyzer which looks for coding standard
errors")
(properties `((python2-variant . ,(delay python2-pylint))))
(license license:gpl2+)))
+;; Python2 is not supported anymore by Pylint. See:
+;; https://github.com/PyCQA/pylint/issues/1763.
(define-public python2-pylint
(let ((pylint (package-with-python2
- (strip-python2-variant python-pylint))))
+ (strip-python2-variant python-pylint))))
(package (inherit pylint)
+ (version "1.9.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/PyCQA/pylint")
+ (commit (string-append "pylint-" version))))
+ (file-name (git-file-name (package-name pylint) version))
+ (sha256
+ (base32
+ "02a89d8a47s7nfiv1ady3j0sg2sbyja3np145brarfp5x9qxz9x2"))))
+ (arguments
+ `(,@(package-arguments pylint)
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ ;; Somehow, tests fail if run from the build directory.
+ (let ((work "/tmp/work"))
+ (mkdir-p work)
+ (setenv "PYTHONPATH"
+ (string-append (getenv "PYTHONPATH") ":" work))
+ (copy-recursively "." work)
+ (with-directory-excursion "/tmp"
+ (invoke "python" "-m" "unittest" "discover"
+ "-s" (string-append work "/pylint/test")
+ "-p" "*test_*.py"))))))))
+ (native-inputs
+ `(("python2-futures" ,python2-futures)
+ ,@(package-native-inputs pylint)))
(propagated-inputs
`(("python2-backports-functools-lru-cache"
,python2-backports-functools-lru-cache)
("python-pyhamcrest" ,python-pyhamcrest)
("python-pytest" ,python-pytest)))
(propagated-inputs
- `(("python-six" ,python-six)
+ `(("python-importlib-metadata" ,python-importlib-metadata)
+ ("python-six" ,python-six)
("python-parse" ,python-parse)
("python-parse-type" ,python-parse-type)))
(arguments
- '(#:test-target "behave_test"))
+ '(#:test-target "behave_test"
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'fix-library-loading
+ (lambda _
+ ;; Otherwise, tests fail with no module named 'path'
+ (setenv "PYTHONPATH" (string-append (getenv "PYTHONPATH") ":"
+ (getcwd) "/tasks/_vendor"))
+ #t)))))
(home-page "https://github.com/behave/behave")
(synopsis "Python behavior-driven development")
(description
(package-with-python2 python-flaky))
(define-public python-pyhamcrest
- (package
- (name "python-pyhamcrest")
- (version "1.9.0")
- (source (origin
- ;; Tests not distributed from pypi release.
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/hamcrest/PyHamcrest")
- (commit (string-append "V" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "01qnzj9qnzz0y78qa3ing24ssvszb0adw59xc4qqmdn5wryy606b"))))
- (native-inputs ; All native inputs are for tests
- `(("python-pytest-cov" ,python-pytest-cov)
- ("python-mock" ,python-mock)
- ("python-pytest" ,python-pytest)
- ("python-hypothesis" ,python-hypothesis)))
- (propagated-inputs
- `(("python-six" ,python-six)))
- (build-system python-build-system)
- (home-page "http://hamcrest.org/")
- (synopsis "Hamcrest matchers for Python")
- (description
- "PyHamcrest is a framework for writing matcher objects,
+ ;; The latest release was in 2016 and its test suite does not work with recent
+ ;; versions of Pytest. Just take the master branch for now, which seems stable.
+ (let ((commit "25fdc5f00bdf3084335353bc9247253098ec4cf2")
+ (revision "0"))
+ (package
+ (name "python-pyhamcrest")
+ (version (git-version "1.9.0" revision commit))
+ (source (origin
+ ;; Tests not distributed from pypi release.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/hamcrest/PyHamcrest")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1miqmhhi68vaix8sqc1lvpvbm27bacffxh5anm5cbfsvk7g9n6f3"))))
+ (native-inputs ;all native inputs are for tests
+ `(("python-pytest-cov" ,python-pytest-cov)
+ ("python-mock" ,python-mock)
+ ("python-pytest" ,python-pytest)
+ ("python-hypothesis" ,python-hypothesis)))
+ (propagated-inputs
+ `(("python-six" ,python-six)))
+ (build-system python-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (replace 'check
+ (lambda _
+ (setenv "PYTHONPATH"
+ (string-append "build/lib:"
+ (getenv "PYTHONPATH")))
+ (invoke "pytest" "-vv"))))))
+ (home-page "http://hamcrest.org/")
+ (synopsis "Hamcrest matchers for Python")
+ (description
+ "PyHamcrest is a framework for writing matcher objects,
allowing you to declaratively define \"match\" rules.")
- (license license:bsd-3)))
+ (license license:bsd-3))))
(define-public python2-pyhamcrest
(package-with-python2 python-pyhamcrest))
(define-public libfaketime
(package
(name "libfaketime")
- (version "0.9.7")
+ (version "0.9.8")
(home-page "https://github.com/wolfcw/libfaketime")
(source (origin
(method git-fetch)
(commit (string-append "v" version))))
(sha256
(base32
- "1cin1pqwpsswcv7amiwijirvcg3x1zf2l00s1x84nxc5602fzr5c"))
+ "1mfdl82ppgbdvy1ny8mb7xii7p0g7awvn4bn36jb8v4r545slmjc"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
(let ((out (assoc-ref outputs "out")))
(setenv "CC" "gcc")
(setenv "PREFIX" out)
+
+ ;; XXX: Without this flag, the CLOCK_REALTIME test hangs
+ ;; indefinitely. See README.packagers for more information.
+ ;; Try removing this for future versions of libfaketime.
+ (setenv "FAKETIME_COMPILE_CFLAGS" "-DFORCE_MONOTONIC_FIX")
+
#t)))
(add-before 'check 'pre-check
(lambda _
(define-public umockdev
(package
(name "umockdev")
- (version "0.12.1")
+ (version "0.13.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/martinpitt/umockdev/"
"umockdev-" version ".tar.xz"))
(sha256
(base32
- "1hx5jm9afng6hw9wyp524z8nwdp6w053pca0w2c0gqpgrmvjxvd2"))))
+ "095v3abc321s584sga04y16lcmdzsdi88h24wcrm78v7vq484g74"))))
(build-system gnu-build-system)
(arguments
`(#:phases
#t)))))
(native-inputs
`(("vala" ,vala)
- ("python" ,python) ; for tests
- ("which" ,which) ; for tests
("gtk-doc" ,gtk-doc)
- ("pkg-config" ,pkg-config)))
+ ("pkg-config" ,pkg-config)
+
+ ;; For tests.
+ ("python" ,python)
+ ("which" ,which)))
(inputs
`(("glib" ,glib)
("eudev" ,eudev)
loaded.")
(license license:lgpl2.1+)))
+(define-public virtest
+ ;; No releases yet, so we take the commit that "vc" expects.
+ (let ((commit "f7d03ef39fceba168745bd29e1b20af6e7971e04")
+ (revision "0"))
+ (package
+ (name "virtest")
+ (version (git-version "0.0" revision commit))
+ (home-page "https://github.com/mattkretz/virtest")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference (url home-page) (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "07pjyb0mk7y2w1dg1bhl26nb7416xa1mw16ifj6mmps5y6aq054l"))))
+ (build-system cmake-build-system)
+ (arguments
+ `(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'adjust-install-directory
+ (lambda _
+ ;; Vc is the only consumer of this library, and expects
+ ;; to find it in "virtest/vir/" instead of "vir/vir/".
+ (substitute* "CMakeLists.txt"
+ (("DESTINATION include/vir")
+ "DESTINATION include/virtest"))
+ #t)))))
+ (synopsis "Header-only test framework")
+ (description
+ "@code{virtest} is a small header-only test framework for C++. It
+grew out of the @dfn{Vc} project.")
+ (license license:bsd-3))))
+
(define-public python-pyfakefs
(package
(name "python-pyfakefs")