diff options
Diffstat (limited to 'dev-python')
-rw-r--r-- | dev-python/fixtures/Manifest | 1 | ||||
-rw-r--r-- | dev-python/fixtures/files/fixtures-4.0.0-pypy39.patch | 56 | ||||
-rw-r--r-- | dev-python/fixtures/fixtures-4.0.0.ebuild | 40 |
3 files changed, 97 insertions, 0 deletions
diff --git a/dev-python/fixtures/Manifest b/dev-python/fixtures/Manifest index c7aded1d7fb5..039cc343e28e 100644 --- a/dev-python/fixtures/Manifest +++ b/dev-python/fixtures/Manifest @@ -1 +1,2 @@ DIST fixtures-3.0.0.tar.gz 56629 BLAKE2B 949c67c428f5e5ca0afc2f875dd4e2a212922415762a2528c185794e4ae2b74d32873aaf7132d97dec95a681bb4d87d85b11a39c43c64cd531dd4bf2fce75f87 SHA512 e52ba864c42d15a8baa60583761006b2dd78e3cd5f3f043f5702346aef428b933d62e8fa5889b7cb4196e4072acc5df3b7ffa39702a1b782887bdc109299b695 +DIST fixtures-4.0.0.tar.gz 56786 BLAKE2B 7fa8916d3e384a47c967b51ffeebb81c50c4be7432601aa94f220b6ae32ed189f16750cb126c2925995c2e945684c48041014a97902145343527e8856125b61a SHA512 dcd67c3df9efc16f2a21b6d2917a5b7e45ecc09d1ddbd1de98a5b4b717ea7da0fc82e1054f494255b419a792e841145110c77a1772444f4019fc02e9917c5b80 diff --git a/dev-python/fixtures/files/fixtures-4.0.0-pypy39.patch b/dev-python/fixtures/files/fixtures-4.0.0-pypy39.patch new file mode 100644 index 000000000000..dfe7bade82fa --- /dev/null +++ b/dev-python/fixtures/files/fixtures-4.0.0-pypy39.patch @@ -0,0 +1,56 @@ +From 2adba3989fc3d1723eb6534ae0bc1aeaf1513cfa Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Thu, 28 Apr 2022 12:14:55 +0200 +Subject: [PATCH] Revert to the previous classmethod expectations for PyPy3.9 + +Commit fe83067 has changed TestMonkeyPatch to account for changes +in classmethod handling in CPython 3.9. Unfortunately, this broke +the tests on PyPy3.9. Revert to the old expectations when using PyPy. + +Fixes #64 +--- + fixtures/tests/_fixtures/test_monkeypatch.py | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/fixtures/tests/_fixtures/test_monkeypatch.py b/fixtures/tests/_fixtures/test_monkeypatch.py +index 746f6dd..08cd1c8 100644 +--- a/fixtures/tests/_fixtures/test_monkeypatch.py ++++ b/fixtures/tests/_fixtures/test_monkeypatch.py +@@ -23,6 +23,9 @@ from fixtures import MonkeyPatch, TestWithFixtures + + reference = 23 + ++NEW_PY39_CLASSMETHOD = ( ++ sys.version_info >= (3, 9) and not hasattr(sys, "pypy_version_info")) ++ + class C(object): + def foo(self, arg): + return arg +@@ -196,7 +199,7 @@ class TestMonkeyPatch(testtools.TestCase, TestWithFixtures): + # with the class + # + # https://bugs.python.org/issue19072 +- if sys.version_info >= (3, 9): ++ if NEW_PY39_CLASSMETHOD: + cls, = C.foo_cls() + self.expectThat(cls, Is(D)) + cls, = C().foo_cls() +@@ -238,13 +241,13 @@ class TestMonkeyPatch(testtools.TestCase, TestWithFixtures): + self.expectThat(slf, Is(d)) + # See note in test_patch_classmethod_with_classmethod on changes in + # Python 3.9 +- if sys.version_info >= (3, 9): ++ if NEW_PY39_CLASSMETHOD: + self.expectThat(cls, Is(None)) + else: + self.expectThat(cls, Is(C)) + slf, cls = C().foo_cls() + self.expectThat(slf, Is(d)) +- if sys.version_info >= (3, 9): ++ if NEW_PY39_CLASSMETHOD: + self.expectThat(cls, Is(None)) + else: + self.expectThat(cls, Is(C)) +-- +2.35.1 + diff --git a/dev-python/fixtures/fixtures-4.0.0.ebuild b/dev-python/fixtures/fixtures-4.0.0.ebuild new file mode 100644 index 000000000000..25709bab8188 --- /dev/null +++ b/dev-python/fixtures/fixtures-4.0.0.ebuild @@ -0,0 +1,40 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=pbr +PYTHON_COMPAT=( python3_{8..10} pypy3 ) + +inherit distutils-r1 + +DESCRIPTION="Fixtures, reusable state for writing clean tests and more" +HOMEPAGE=" + https://github.com/testing-cabal/fixtures/ + https://pypi.org/project/fixtures/ +" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="|| ( Apache-2.0 BSD )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux" +IUSE="test" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-python/pbr-5.7.0[${PYTHON_USEDEP}] + >=dev-python/testtools-2.5.0[${PYTHON_USEDEP}] +" +BDEPEND=" + test? ( + dev-python/mock[${PYTHON_USEDEP}] + ) +" + +PATCHES=( + "${FILESDIR}"/${P}-pypy39.patch +) + +python_test() { + emake check +} |