summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-04-05 13:36:25 -0400
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-05-12 12:45:29 -0400
commit3ce8459aa728ce85bd1f67194539a33cec0a9d1b (patch)
tree39f9ddae931885682d06266dace385902f74208f /gnu
parent586ef9b9cfe0286712c710752e2904fa82be9365 (diff)
downloadguix-3ce8459aa728ce85bd1f67194539a33cec0a9d1b.tar.gz
gnu: Add python-pytest-freezegun.
* gnu/packages/check.scm (python-pytest-freezegun): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/check.scm32
1 files changed, 32 insertions, 0 deletions
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 75b42b945a..1db4457dde 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -2200,6 +2200,38 @@ style test suites, summarizing their results, and providing indication of
 failures.")
     (license license:ncsa)))
 
+(define-public python-pytest-freezegun
+  (package
+    (name "python-pytest-freezegun")
+    (version "0.4.2")
+    (source (origin
+              ;; The test suite is not included in the PyPI archive.
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/ktosiek/pytest-freezegun")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "10c4pbh03b4s1q8cjd75lr0fvyf9id0zmdk29566qqsmaz28npas"))))
+    (build-system python-build-system)
+    (arguments
+     (list
+      #:phases
+      #~(modify-phases %standard-phases
+          (replace 'check
+            (lambda* (#:key tests? #:allow-other-keys)
+              (when tests?
+                (invoke "pytest" "-vv")))))))
+    (propagated-inputs (list python-freezegun python-pytest))
+    (native-inputs (list unzip))
+    (home-page "https://github.com/ktosiek/pytest-freezegun")
+    (synopsis "Pytest plugin to freeze time in test fixtures")
+    (description "The @code{pytest-freezegun} plugin wraps tests and fixtures
+with @code{freeze_time}, which allows to control (i.e., freeze) the time seen
+by the test.")
+    (license license:expat)))
+
 (define-public python-pytest-mypy
   (package
     (name "python-pytest-mypy")