summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2021-08-11 16:13:56 +0300
committerEfraim Flashner <efraim@flashner.co.il>2021-08-11 16:13:56 +0300
commit02fbd89f2b69ebb1793261026c4471280048335f (patch)
treed4b45659d0e591d474d277c559b6e3a6c0be95d1
parent1f18f18e85da6652a078f24220d4f4b4957801a0 (diff)
gnu: python-fixtures: Fix building.
* gnu/packages/check.scm (python-fixtures-bootstrap)[source]: Add patch. * gnu/packages/patches/python-fixtures-remove-monkeypatch-test.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/check.scm14
-rw-r--r--gnu/packages/patches/python-fixtures-remove-monkeypatch-test.patch59
3 files changed, 68 insertions, 6 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 9ba2971864..569b91378a 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1601,6 +1601,7 @@ dist_patch_DATA = \
%D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \
%D%/packages/patches/python-configobj-setuptools.patch \
%D%/packages/patches/python-docopt-pytest6-compat.patch \
+ %D%/packages/patches/python-fixtures-remove-monkeypatch-test.patch \
%D%/packages/patches/python-flask-restful-werkzeug-compat.patch \
%D%/packages/patches/python-keras-integration-test.patch \
%D%/packages/patches/python-pep8-stdlib-tokenize-compat.patch \
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index 9cd53725ba..eb20d0fd54 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -1578,12 +1578,14 @@ protocol.")))
(package
(name "python-fixtures-bootstrap")
(version "3.0.0")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "fixtures" version))
- (sha256
- (base32
- "1vxj29bzz3rd4pcy51d05wng9q9dh4jq6wx92yklsm7i6h1ddw7w"))))
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "fixtures" version))
+ (sha256
+ (base32
+ "1vxj29bzz3rd4pcy51d05wng9q9dh4jq6wx92yklsm7i6h1ddw7w"))
+ (patches (search-patches "python-fixtures-remove-monkeypatch-test.patch"))))
(build-system python-build-system)
(arguments
`(#:tests? #f
diff --git a/gnu/packages/patches/python-fixtures-remove-monkeypatch-test.patch b/gnu/packages/patches/python-fixtures-remove-monkeypatch-test.patch
new file mode 100644
index 0000000000..4ffe9b373d
--- /dev/null
+++ b/gnu/packages/patches/python-fixtures-remove-monkeypatch-test.patch
@@ -0,0 +1,59 @@
+https://sources.debian.org/data/main/p/python-fixtures/3.0.0-4/debian/patches/remove-broken-monkey-patch-test.patch
+
+The last release was May 2016. This can be removed when the next release happens.
+
+Description: Remove broken monkey patch tests
+Author: Thomas Goirand <zigo@debian.org>
+Bug-Debian: https://bugs.debian.org/973239
+Forwarded: no
+Last-Update: 2020-11-12
+
+--- python-fixtures-3.0.0.orig/fixtures/tests/_fixtures/test_monkeypatch.py
++++ python-fixtures-3.0.0/fixtures/tests/_fixtures/test_monkeypatch.py
+@@ -181,22 +181,6 @@ class TestMonkeyPatch(testtools.TestCase
+ self._check_restored_static_or_class_method(oldmethod, oldmethod_inst,
+ C, 'foo_cls')
+
+- def test_patch_classmethod_with_classmethod(self):
+- oldmethod = C.foo_cls
+- oldmethod_inst = C().foo_cls
+- fixture = MonkeyPatch(
+- 'fixtures.tests._fixtures.test_monkeypatch.C.foo_cls',
+- D.bar_cls_args)
+- with fixture:
+- cls, target_class = C.foo_cls()
+- self.expectThat(cls, Is(D))
+- self.expectThat(target_class, Is(C))
+- cls, target_class = C().foo_cls()
+- self.expectThat(cls, Is(D))
+- self.expectThat(target_class, Is(C))
+- self._check_restored_static_or_class_method(oldmethod, oldmethod_inst,
+- C, 'foo_cls')
+-
+ def test_patch_classmethod_with_function(self):
+ oldmethod = C.foo_cls
+ oldmethod_inst = C().foo_cls
+@@ -212,23 +196,6 @@ class TestMonkeyPatch(testtools.TestCase
+ self._check_restored_static_or_class_method(oldmethod, oldmethod_inst,
+ C, 'foo_cls')
+
+- def test_patch_classmethod_with_boundmethod(self):
+- oldmethod = C.foo_cls
+- oldmethod_inst = C().foo_cls
+- d = D()
+- fixture = MonkeyPatch(
+- 'fixtures.tests._fixtures.test_monkeypatch.C.foo_cls',
+- d.bar_two_args)
+- with fixture:
+- slf, cls = C.foo_cls()
+- self.expectThat(slf, Is(d))
+- self.expectThat(cls, Is(C))
+- slf, cls = C().foo_cls()
+- self.expectThat(slf, Is(d))
+- self.expectThat(cls, Is(C))
+- self._check_restored_static_or_class_method(oldmethod, oldmethod_inst,
+- C, 'foo_cls')
+-
+ def test_patch_function_with_staticmethod(self):
+ oldmethod = fake_no_args
+ fixture = MonkeyPatch(