From d528842b99b16efce212e15dae3f0a54927d06d8 Mon Sep 17 00:00:00 2001 From: Cyril Roelandt 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:]