Subject: [PATCH] gnu: python-chardet: Enable tests

From: Lars-Dominik Braun <[email-masked]>
Date: Wed, 7 Oct 2020 09:32:34 +0200

* gnu/packages/python-xyz.scm (python-chardet) [source]: Add upstream patch.
[arguments]: Remove.
* gnu/packages/patches/python-chardet-3.0.4-pytest.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
 gnu/local.mk                                  |  1 +
 .../patches/python-chardet-3.0.4-pytest.patch | 24 +++++++++++++++++++
 gnu/packages/python-xyz.scm                   |  5 ++--
 3 files changed, 27 insertions(+), 3 deletions(-)
 create mode 100644 gnu/packages/patches/python-chardet-3.0.4-pytest.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 83d2d72ab1..e1fd179ebf 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1490,6 +1490,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/python-argcomplete-1.11.1-fish31.patch	\
   %D%/packages/patches/python-axolotl-AES-fix.patch		\
   %D%/packages/patches/python-cairocffi-dlopen-path.patch	\
+  %D%/packages/patches/python-chardet-3.0.4-pytest.patch	\
   %D%/packages/patches/python-cross-compile.patch		\
   %D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \
   %D%/packages/patches/python-configobj-setuptools.patch	\
diff --git a/gnu/packages/patches/python-chardet-3.0.4-pytest.patch b/gnu/packages/patches/python-chardet-3.0.4-pytest.patch
new file mode 100644
index 0000000000..039816b780
--- /dev/null
+++ b/gnu/packages/patches/python-chardet-3.0.4-pytest.patch
@@ -0,0 +1,24 @@
+From 440828f8faafdb58700c64a9ea8f6a30b154c08b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <[email-masked]>
+Date: Mon, 11 Nov 2019 21:02:51 +0100
+Subject: [PATCH] Support pytest 4, don't apply marks directly to parameters
+ (#174)
+
+Fixes https://github.com/chardet/chardet/issues/173
+---
+ test.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/test.py b/test.py
+index 9833307..ad2b753 100644
+--- a/test.py
++++ b/test.py
+@@ -59,7 +59,7 @@ def gen_test_params():
+             full_path = join(path, file_name)
+             test_case = full_path, encoding
+             if full_path in EXPECTED_FAILURES:
+-                test_case = pytest.mark.xfail(test_case)
++                test_case = pytest.param(*test_case, marks=pytest.mark.xfail)
+             yield test_case
+ 
+ 
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 459526941b..b03d685d38 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -10049,14 +10049,13 @@ simulation, statistical modeling, machine learning and much more.")
        (uri (pypi-uri "chardet" version))
        (sha256
         (base32
-         "1bpalpia6r5x1kknbk11p1fzph56fmmnp405ds8icksd3knr5aw4"))))
+         "1bpalpia6r5x1kknbk11p1fzph56fmmnp405ds8icksd3knr5aw4"))
+        (patches (search-patches "python-chardet-3.0.4-pytest.patch"))))
     (native-inputs
      `(("python-hypothesis" ,python-hypothesis)
        ("python-pytest" ,python-pytest)
        ("python-pytest-runner" ,python-pytest-runner)))
     (build-system python-build-system)
-    ;; XXX: Incompatible with Pytest 4: <https://github.com/chardet/chardet/issues/173>.
-    (arguments `(#:tests? #f))
     (home-page "https://github.com/chardet/chardet")
     (synopsis "Universal encoding detector for Python 2 and 3")
     (description
-- 
2.26.2