gnu: python-pytest-virtualenv: Enable tests.

* gnu/packages/python-check.scm (python-pytest-virtualenv)
[phases]{patch-virtualenv-executable}: New phase.
[propagated-inputs]: Move python-virtualenv from here...
[inputs]: ...to here.
This commit is contained in:
Maxim Cournoyer 2019-09-11 23:22:10 +09:00
parent 01a53e0b37
commit e2fb29b792
No known key found for this signature in database
GPG key ID: 1260E46482E63562

View file

@ -2,6 +2,7 @@
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -226,11 +227,27 @@ (define-public python-pytest-virtualenv
(base32 (base32
"03w2zz3crblj1p6i8nq17946hbn3zqp9z7cfnifw47hi4a4fww12")))) "03w2zz3crblj1p6i8nq17946hbn3zqp9z7cfnifw47hi4a4fww12"))))
(build-system python-build-system) (build-system python-build-system)
(arguments '(#:tests? #f)) ; one test fails; can't find virtualenv (arguments
`(#:phases
(modify-phases %standard-phases
;; Reference the virtualenv executable directly, to avoid the need
;; for PYTHONPATH, which gets cleared when instantiating a new
;; virtualenv with pytest-virtualenv.
(add-after 'unpack 'patch-virtualenv-executable
(lambda* (#:key inputs #:allow-other-keys)
(let* ((virtualenv (assoc-ref inputs "python-virtualenv"))
(virtualenv-bin (string-append virtualenv
"/bin/virtualenv")))
(substitute* "pytest_virtualenv.py"
(("^DEFAULT_VIRTUALENV_FIXTURE_EXECUTABLE.*$")
(format #f "DEFAULT_VIRTUALENV_FIXTURE_EXECUTABLE = '~a'"
virtualenv-bin)))
#t))))))
(propagated-inputs (propagated-inputs
`(("python-virtualenv" ,python-virtualenv) `(("python-pytest-shutil" ,python-pytest-shutil)
("python-pytest-shutil" ,python-pytest-shutil)
("python-pytest-fixture-config" ,python-pytest-fixture-config))) ("python-pytest-fixture-config" ,python-pytest-fixture-config)))
(inputs
`(("python-virtualenv" ,python-virtualenv)))
(native-inputs (native-inputs
`(("python-mock" ,python-mock) `(("python-mock" ,python-mock)
("python-pytest" ,python-pytest) ("python-pytest" ,python-pytest)