mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-09-24 04:59:14 -07:00
dev-python/testtools: Remove old
Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
@@ -1,2 +1 @@
|
||||
DIST testtools-2.4.0.tar.gz 233032 BLAKE2B 8b0559039bfc5e18dfe8d70cc10f6e43ad2e1fbebf7d20d9c6c876c5672a6149064f558150d8eb09f569b82983ffe67e06143b14a1d8869efcc585839d6216ae SHA512 af26e163a4caeb207a554b19f86c7892ab5ebe904c144d85273464e880cd18a991c70a77ff817aefb15768fa38f382e9ed853cdefb212dc697b24072e17535c0
|
||||
DIST testtools-2.5.0.tar.gz 235399 BLAKE2B 62d62cd12f19eb3fad419dc06e7f0152bf8f70a9f60927b1d791f2905b34e13199ceac93b3d30735acae2c5db1e8554cc5a7f6c8588d1f05fb213c424e90a12b SHA512 6adbf9e90f0647a44130e99cd94e4c0cbfab3a1b5c28b6bb124d061defe69d8043186cfe554099936effe16a6b07d59927bfeb6820f5a0fb34970ff243030fd4
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
From 2ead7c11a54b0860e02992212e302c4a7bd26c35 Mon Sep 17 00:00:00 2001
|
||||
From: Matthew Treinish <mtreinish@kortar.org>
|
||||
Date: Wed, 8 Jul 2020 14:22:24 -0400
|
||||
Subject: [PATCH] Update testtools/testcase.py
|
||||
|
||||
Co-authored-by: Thomas Grainger <tagrain@gmail.com>
|
||||
---
|
||||
testtools/testcase.py | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
Rebased for 2.4.0 by Michał Górny (eliminating intermediate commits).
|
||||
|
||||
diff --git a/testtools/testcase.py b/testtools/testcase.py
|
||||
index bff5be2..22e9143 100644
|
||||
--- a/testtools/testcase.py
|
||||
+++ b/testtools/testcase.py
|
||||
@@ -501,6 +501,7 @@ class TestCase(unittest.TestCase):
|
||||
if mismatch_error is not None:
|
||||
raise mismatch_error
|
||||
|
||||
+ assertItemsEqual = unittest.TestCase.assertCountEqual
|
||||
def addDetailUniqueName(self, name, content_object):
|
||||
"""Add a detail to the test, but ensure it's name is unique.
|
||||
|
||||
--
|
||||
2.32.0
|
||||
|
||||
@@ -1,43 +0,0 @@
|
||||
From d528842b99b16efce212e15dae3f0a54927d06d8 Mon Sep 17 00:00:00 2001
|
||||
From: Cyril Roelandt <cyril@redhat.com>
|
||||
Date: Fri, 19 Mar 2021 02:50:13 +0000
|
||||
Subject: [PATCH] Fix tests with Python 3.10
|
||||
|
||||
In Python 3, error messages have become a bit more precise. For
|
||||
instance, the following code snippet:
|
||||
|
||||
----
|
||||
class Foo():
|
||||
def bar(self, a):
|
||||
pass
|
||||
|
||||
try:
|
||||
Foo().bar(1, 2)
|
||||
except TypeError as e:
|
||||
print(e)
|
||||
----
|
||||
|
||||
will return:
|
||||
|
||||
- in Python 3.9: "bar() takes 2 positional arguments but 3 were given"
|
||||
- in Python 3.10: "Foo.bar() takes 2 positional arguments but 3 were
|
||||
given"
|
||||
|
||||
Fix our tests accordingly.
|
||||
---
|
||||
testtools/tests/test_testsuite.py | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/testtools/tests/test_testsuite.py b/testtools/tests/test_testsuite.py
|
||||
index 7ad5b74d..65cb88d7 100644
|
||||
--- a/testtools/tests/test_testsuite.py
|
||||
+++ b/testtools/tests/test_testsuite.py
|
||||
@@ -181,7 +181,7 @@ def run(self):
|
||||
test.run(process_result)
|
||||
""", doctest.ELLIPSIS))
|
||||
self.assertThat(events[3][6].decode('utf8'), DocTestMatches("""\
|
||||
-TypeError: run() takes ...1 ...argument...2...given...
|
||||
+TypeError: ...run() takes ...1 ...argument...2...given...
|
||||
""", doctest.ELLIPSIS))
|
||||
events = [event[0:10] + (None,) for event in events]
|
||||
events[1] = events[1][:6] + (None,) + events[1][7:]
|
||||
@@ -1,76 +0,0 @@
|
||||
From 1d698cf91cb2205aedc018e465a2e17c5a6a3e94 Mon Sep 17 00:00:00 2001
|
||||
From: Michel Alexandre Salim <michel@michel-slm.name>
|
||||
Date: Sat, 16 May 2020 13:21:38 -0700
|
||||
Subject: [PATCH] Fix syntax error test for Python 3.9
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
On Python 3.9 the zero-width no-break space Unicode character U+FEFF
|
||||
does not get printed in syntax errors.
|
||||
|
||||
See:
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1831126
|
||||
|
||||
This is reproducible in a virtual environment as well.
|
||||
|
||||
Before:
|
||||
```
|
||||
.venv ❯ make check
|
||||
PYTHONPATH=/home/michel/src/github/testing-cabal/testtools python -m testtools.run testtools.tests.test_suite
|
||||
/usr/lib64/python3.9/runpy.py:127: RuntimeWarning: 'testtools.run' found in sys.modules after import of package 'testtools', but prior to execution of 'testtools.run'; this may result in unpredictable behaviour
|
||||
warn(RuntimeWarning(msg))
|
||||
Tests running...
|
||||
======================================================================
|
||||
FAIL: testtools.tests.test_testresult.TestNonAsciiResults.test_syntax_error_line_utf_8
|
||||
----------------------------------------------------------------------
|
||||
Traceback (most recent call last):
|
||||
File "/home/michel/src/github/testing-cabal/testtools/testtools/tests/test_testresult.py", line 2744, in test_syntax_error_line_utf_8
|
||||
self.assertThat(
|
||||
File "/home/michel/src/github/testing-cabal/testtools/testtools/testcase.py", line 499, in assertThat
|
||||
raise mismatch_error
|
||||
testtools.matchers._impl.MismatchError: 'Tests running...\n======================================================================\nERROR: test_syntax_error_line_utf_8.Test.runTest\n----------------------------------------------------------------------\nTraceback (most recent call last):\n File "/tmp/TestNonAsciiResultsblblh75h/test_syntax_error_line_utf_8.py", line 6, in runTest\n import bad\n File "/tmp/TestNonAsciiResultsblblh75h/bad.py", line 1\n \ufeff^ = 0 # paɪθən\n ^\nSyntaxError: invalid syntax\n\nRan 1 test in 0.001s\nFAILED (failures=1)\n' does not match /.*bad.py", line 1\n\s*\^ = 0 # pa\u026a\u03b8\u0259n\n \s*\^\nSyntaxError:.*/
|
||||
======================================================================
|
||||
FAIL: testtools.tests.test_testresult.TestNonAsciiResultsWithUnittest.test_syntax_error_line_utf_8
|
||||
----------------------------------------------------------------------
|
||||
Traceback (most recent call last):
|
||||
File "/home/michel/src/github/testing-cabal/testtools/testtools/tests/test_testresult.py", line 2744, in test_syntax_error_line_utf_8
|
||||
self.assertThat(
|
||||
File "/home/michel/src/github/testing-cabal/testtools/testtools/testcase.py", line 499, in assertThat
|
||||
raise mismatch_error
|
||||
testtools.matchers._impl.MismatchError: 'E\n======================================================================\nERROR: runTest (test_syntax_error_line_utf_8.Test)\ntest_syntax_error_line_utf_8.Test.runTest\n----------------------------------------------------------------------\ntesttools.testresult.real._StringException: Traceback (most recent call last):\n File "/tmp/TestNonAsciiResultsWithUnittest_zzswpmj/test_syntax_error_line_utf_8.py", line 6, in runTest\n import bad\n File "/tmp/TestNonAsciiResultsWithUnittest_zzswpmj/bad.py", line 1\n \ufeff^ = 0 # paɪθən\n ^\nSyntaxError: invalid syntax\n\n\n----------------------------------------------------------------------\nRan 1 test in 0.000s\n\nFAILED (errors=1)\n' does not match /.*bad.py", line 1\n\s*\^ = 0 # pa\u026a\u03b8\u0259n\n \s*\^\nSyntaxError:.*/
|
||||
|
||||
Ran 2627 tests in 0.569s
|
||||
FAILED (failures=2)
|
||||
make: *** [Makefile:7: check] Error 1
|
||||
```
|
||||
|
||||
After:
|
||||
```
|
||||
.venv ❯ make check
|
||||
PYTHONPATH=/home/michel/src/github/testing-cabal/testtools python -m testtools.run testtools.tests.test_suite
|
||||
/usr/lib64/python3.9/runpy.py:127: RuntimeWarning: 'testtools.run' found in sys.modules after import of package 'testtools', but prior to execution of 'testtools.run'; this may result in unpredictable behaviour
|
||||
warn(RuntimeWarning(msg))
|
||||
Tests running...
|
||||
|
||||
Ran 2627 tests in 0.492s
|
||||
OK
|
||||
```
|
||||
---
|
||||
testtools/tests/test_testresult.py | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/testtools/tests/test_testresult.py b/testtools/tests/test_testresult.py
|
||||
index 3bbd8937..deceb07d 100644
|
||||
--- a/testtools/tests/test_testresult.py
|
||||
+++ b/testtools/tests/test_testresult.py
|
||||
@@ -2741,6 +2741,9 @@ def test_syntax_error_line_utf_8(self):
|
||||
textoutput = self._setup_external_case("import bad")
|
||||
self._write_module("bad", "utf-8", "\ufeff^ = 0 # %s\n" % text)
|
||||
textoutput = self._run_external_case()
|
||||
+ # Python 3.9 no longer prints the '\ufeff'
|
||||
+ if sys.version_info >= (3,9):
|
||||
+ textoutput = textoutput.replace('\ufeff', '')
|
||||
self.assertThat(
|
||||
textoutput,
|
||||
MatchesRegex(
|
||||
@@ -1,64 +0,0 @@
|
||||
# Copyright 1999-2021 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=7
|
||||
|
||||
PYTHON_COMPAT=( python3_{8..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"
|
||||
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"
|
||||
|
||||
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}]
|
||||
"
|
||||
DEPEND="
|
||||
test? (
|
||||
>=dev-python/fixtures-1.3.0[${PYTHON_USEDEP}]
|
||||
dev-python/testscenarios[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
PDEPEND=">=dev-python/fixtures-1.3.0[${PYTHON_USEDEP}]"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/testtools-2.4.0-py39.patch
|
||||
"${FILESDIR}"/testtools-2.4.0-py310.patch
|
||||
"${FILESDIR}"/testtools-2.4.0-assertitemsequal.patch
|
||||
)
|
||||
|
||||
distutils_enable_sphinx doc
|
||||
distutils_enable_tests unittest
|
||||
|
||||
src_prepare() {
|
||||
# eliminate unittest2 & traceback2
|
||||
sed -i -e '/unittest2/d' -e '/traceback2/d' requirements.txt || die
|
||||
# eliminate linecache2
|
||||
sed -i -e 's/import linecache2 as linecache/import linecache/' \
|
||||
testtools/tests/test_compat.py || die
|
||||
|
||||
# also conditional imports
|
||||
find -name '*.py' -exec \
|
||||
sed -i -e 's:unittest2:unittest:' {} + || die
|
||||
sed -i -e 's/^traceback =.*/import traceback/' \
|
||||
testtools/content.py || die
|
||||
# py3.10 changed the output
|
||||
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}"
|
||||
}
|
||||
Reference in New Issue
Block a user