summaryrefslogtreecommitdiff
path: root/dev-python/testtools
diff options
context:
space:
mode:
authorLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2022-05-21 18:00:32 +0000
committerLiguros - Gitlab CI/CD [develop] <gitlab@liguros.net>2022-05-21 18:00:32 +0000
commit0ab0678be688a9e5ff3a2c1777c07759df498155 (patch)
treebf2158cf14f1191bd775ace39ee6479260972648 /dev-python/testtools
parent10c8dfd3134343aaf5f2fdaac75fea3d51239f1c (diff)
downloadbaldeagleos-repo-0ab0678be688a9e5ff3a2c1777c07759df498155.tar.gz
baldeagleos-repo-0ab0678be688a9e5ff3a2c1777c07759df498155.tar.xz
baldeagleos-repo-0ab0678be688a9e5ff3a2c1777c07759df498155.zip
Adding metadata
Diffstat (limited to 'dev-python/testtools')
-rw-r--r--dev-python/testtools/files/testtools-2.5.0-py311.patch116
-rw-r--r--dev-python/testtools/testtools-2.5.0-r1.ebuild60
2 files changed, 176 insertions, 0 deletions
diff --git a/dev-python/testtools/files/testtools-2.5.0-py311.patch b/dev-python/testtools/files/testtools-2.5.0-py311.patch
new file mode 100644
index 000000000000..ee457f6119c3
--- /dev/null
+++ b/dev-python/testtools/files/testtools-2.5.0-py311.patch
@@ -0,0 +1,116 @@
+From 77953cf633ecd149b2c29e616f8d9d4e0cf8e5fa Mon Sep 17 00:00:00 2001
+From: Colin Watson <cjwatson@canonical.com>
+Date: Sat, 23 Apr 2022 22:53:48 +0100
+Subject: [PATCH] Fix various test failures with Python 3.11
+
+The changes for https://peps.python.org/pep-0657/ require a number of
+changes in our tests.
+
+Some tests still fail due to
+https://twistedmatrix.com/trac/ticket/10336, so I'm not adding
+3.11 to the test matrix yet.
+
+Fixes #325.
+---
+ testtools/tests/test_run.py | 4 ++--
+ testtools/tests/test_testresult.py | 23 +++++++++++++----------
+ testtools/tests/test_testsuite.py | 2 +-
+ 3 files changed, 16 insertions(+), 13 deletions(-)
+
+diff --git a/testtools/tests/test_run.py b/testtools/tests/test_run.py
+index ee96eec9..9808421b 100644
+--- a/testtools/tests/test_run.py
++++ b/testtools/tests/test_run.py
+@@ -202,9 +202,9 @@ def test_run_list_failed_import(self):
+ Failed to import test module: runexample
+ Traceback (most recent call last):
+ File ".../loader.py", line ..., in _find_test_path
+- package = self._get_module_from_name(name)
++ package = self._get_module_from_name(name)...
+ File ".../loader.py", line ..., in _get_module_from_name
+- __import__(name)
++ __import__(name)...
+ File ".../runexample/__init__.py", line 1
+ class not in
+ ...^...
+diff --git a/testtools/tests/test_testresult.py b/testtools/tests/test_testresult.py
+index 4fbf15d1..7824ff46 100644
+--- a/testtools/tests/test_testresult.py
++++ b/testtools/tests/test_testresult.py
+@@ -1266,11 +1266,11 @@ def test_traceback_formatting_without_stack_hidden(self):
+ DocTestMatches(
+ 'Traceback (most recent call last):\n'
+ ' File "...testtools...runtest.py", line ..., in _run_user\n'
+- ' return fn(*args, **kwargs)\n'
++ ' return fn(*args, **kwargs)\n...'
+ ' File "...testtools...testcase.py", line ..., in _run_test_method\n'
+- ' return self._get_test_method()()\n'
++ ' return self._get_test_method()()\n...'
+ ' File "...testtools...tests...test_testresult.py", line ..., in error\n'
+- ' 1/0\n'
++ ' 1/0\n...'
+ 'ZeroDivisionError: ...\n',
+ doctest.ELLIPSIS | doctest.REPORT_UDIFF))
+
+@@ -1283,7 +1283,7 @@ def test_traceback_formatting_with_stack_hidden(self):
+ DocTestMatches(
+ 'Traceback (most recent call last):\n'
+ ' File "...testtools...tests...test_testresult.py", line ..., in error\n'
+- ' 1/0\n'
++ ' 1/0\n...'
+ 'ZeroDivisionError: ...\n',
+ doctest.ELLIPSIS))
+
+@@ -1322,17 +1322,17 @@ def test_traceback_with_locals(self):
+ DocTestMatches(
+ 'Traceback (most recent call last):\n'
+ ' File "...testtools...runtest.py", line ..., in _run_user\n'
+- ' return fn(*args, **kwargs)\n'
++ ' return fn(*args, **kwargs)\n...'
+ ' args = ...\n'
+ ' fn = ...\n'
+ ' kwargs = ...\n'
+ ' self = ...\n'
+ ' File "...testtools...testcase.py", line ..., in _run_test_method\n'
+- ' return self._get_test_method()()\n'
++ ' return self._get_test_method()()\n...'
+ ' result = ...\n'
+ ' self = ...\n'
+ ' File "...testtools...tests...test_testresult.py", line ..., in error\n'
+- ' 1/0\n'
++ ' 1/0\n...'
+ ' a = 1\n'
+ ' self = ...\n'
+ 'ZeroDivisionError: ...\n',
+@@ -2645,12 +2645,15 @@ def test_unprintable_exception(self):
+ " raise RuntimeError\n"
+ " def __repr__(self):\n"
+ " raise RuntimeError\n")
++ if sys.version_info >= (3, 11):
++ expected = "UnprintableError: <exception str() failed>\n"
++ else:
++ expected = (
++ "UnprintableError: <unprintable UnprintableError object>\n")
+ textoutput = self._test_external_case(
+ modulelevel=exception_class,
+ testline="raise UnprintableError")
+- self.assertIn(self._as_output(
+- "UnprintableError: <unprintable UnprintableError object>\n"),
+- textoutput)
++ self.assertIn(self._as_output(expected), textoutput)
+
+ def test_non_ascii_dirname(self):
+ """Script paths in the traceback can be non-ascii"""
+diff --git a/testtools/tests/test_testsuite.py b/testtools/tests/test_testsuite.py
+index 65cb88d7..01abb23c 100644
+--- a/testtools/tests/test_testsuite.py
++++ b/testtools/tests/test_testsuite.py
+@@ -178,7 +178,7 @@ def run(self):
+ "Traceback (most recent call last):\n")
+ self.assertThat(events[2][6].decode('utf8'), DocTestMatches("""\
+ File "...testtools/testsuite.py", line ..., in _run_test
+- test.run(process_result)
++ test.run(process_result)...
+ """, doctest.ELLIPSIS))
+ self.assertThat(events[3][6].decode('utf8'), DocTestMatches("""\
+ TypeError: ...run() takes ...1 ...argument...2...given...
diff --git a/dev-python/testtools/testtools-2.5.0-r1.ebuild b/dev-python/testtools/testtools-2.5.0-r1.ebuild
new file mode 100644
index 000000000000..4bc81c3427b4
--- /dev/null
+++ b/dev-python/testtools/testtools-2.5.0-r1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{7,8,9,10} pypy3 )
+PYTHON_REQ_USE="threads(+)"
+
+inherit distutils-r1
+
+DESCRIPTION="Extensions to the Python standard library unit testing framework"
+HOMEPAGE="
+ https://github.com/testing-cabal/testtools/
+ https://pypi.org/project/testtools/
+"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~x64-macos"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-python/extras-1.0.0[${PYTHON_USEDEP}]
+ dev-python/python-mimeparse[${PYTHON_USEDEP}]
+ >=dev-python/pbr-0.11[${PYTHON_USEDEP}]
+ dev-python/pyrsistent[${PYTHON_USEDEP}]
+ >=dev-python/six-1.4.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ >=dev-python/fixtures-1.3.0[${PYTHON_USEDEP}]
+ dev-python/testscenarios[${PYTHON_USEDEP}]
+ )
+"
+PDEPEND="
+ >=dev-python/fixtures-1.3.0[${PYTHON_USEDEP}]
+"
+
+distutils_enable_sphinx doc
+
+PATCHES=(
+ # https://github.com/testing-cabal/testtools/pull/328
+ "${FILESDIR}"/${P}-py311.patch
+)
+
+src_prepare() {
+ # very fragile to formatting changes (broken on py3.10 & pypy3)
+ sed -i -e 's:test_syntax_error(:_&:' \
+ testtools/tests/test_testresult.py || die
+
+ distutils-r1_src_prepare
+}
+
+python_test() {
+ "${PYTHON}" -m testtools.run testtools.tests.test_suite ||
+ die "tests failed under ${EPYTHON}"
+}