summaryrefslogtreecommitdiff
path: root/dev-python/testtools/files/testtools-2.4.0-py310.patch
blob: d2d0c092d14ac9841b196b840295ecf5480a0f02 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
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:]