summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorLars-Dominik Braun <lars@6xq.net>2021-04-20 08:57:14 +0200
committerLars-Dominik Braun <lars@6xq.net>2021-04-26 10:26:46 +0200
commit51646c5435a868e0d87304d4edfe109b1fe2f545 (patch)
treec73fc67effd3627c0134459a8154ba69fe95b787 /gnu/packages
parent1683e9d9677d54f695a54fc44ed309287989fc34 (diff)
downloadguix-51646c5435a868e0d87304d4edfe109b1fe2f545.tar.gz
gnu: python-jupyter-core: Enable tests.
* gnu/packages/python-xyz.scm (python-jupyter-core) [arguments]: Enable
tests.
[native-inputs]: Add test dependencies.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/python-xyz.scm26
1 files changed, 24 insertions, 2 deletions
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index a26e005355..d6f738740b 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -7384,10 +7384,32 @@ without using the configuration machinery.")
         (base32
          "1d12j5hkff0xiax87pnhmzbsph3jqqzhz16h8xld7z2y4armq0kr"))))
     (build-system python-build-system)
-    ;; FIXME: not sure how to run the tests
-    (arguments `(#:tests? #f))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (replace 'check
+           (lambda* (#:key inputs outputs tests? #:allow-other-keys)
+             (when tests?
+               ; Some tests write to $HOME.
+               (setenv "HOME" "/tmp")
+               ; Some tests load the installed package.
+               (add-installed-pythonpath inputs outputs)
+               (invoke "pytest" "-vv"))))
+         (add-after 'unpack 'patch-testsuite
+           (lambda _
+             ;; test_not_on_path() and test_path_priority() try to run a test
+             ;; that loads jupyter_core, so we need PYTHONPATH
+             (substitute* "jupyter_core/tests/test_command.py"
+               (("env = \\{'PATH': ''\\}")
+                "env = {'PATH': '', 'PYTHONPATH': os.environ['PYTHONPATH']}")
+               (("env = \\{'PATH':  str\\(b\\)\\}")
+                "env = {'PATH': str(b), 'PYTHONPATH': os.environ['PYTHONPATH']}"))
+             #t)))))
     (propagated-inputs
      `(("python-traitlets" ,python-traitlets)))
+    (native-inputs
+     `(("python-six" ,python-six)
+       ("python-pytest" ,python-pytest)))
     ;; This package provides the `jupyter` binary and thus also exports the
     ;; search paths.
     (native-search-paths