Fix Twisted tests with latest release (#17911)

c.f. #17906 and #17907
This commit is contained in:
Erik Johnston 2024-11-07 16:22:09 +00:00 committed by GitHub
parent c92639df21
commit c7a1d0aa1a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 12 additions and 4 deletions

1
changelog.d/17911.bugfix Normal file
View file

@ -0,0 +1 @@
Fix tests to run with latest Twisted.

View file

@ -320,12 +320,19 @@ class ConcurrentlyExecuteTest(TestCase):
await concurrently_execute(callback, [1], 2) await concurrently_execute(callback, [1], 2)
except _TestException as e: except _TestException as e:
tb = traceback.extract_tb(e.__traceback__) tb = traceback.extract_tb(e.__traceback__)
# we expect to see "caller", "concurrently_execute", "callback",
# and some magic from inside ensureDeferred that happens when .fail # Remove twisted internals from the stack, as we don't care
# is called. # about the precise details.
tb = traceback.StackSummary(
t for t in tb if "/twisted/" not in t.filename
)
# we expect to see "caller", "concurrently_execute" at the top of the stack
self.assertEqual(tb[0].name, "caller") self.assertEqual(tb[0].name, "caller")
self.assertEqual(tb[1].name, "concurrently_execute") self.assertEqual(tb[1].name, "concurrently_execute")
self.assertEqual(tb[-2].name, "callback") # ... some stack frames from the implementation of `concurrently_execute` ...
# and at the bottom of the stack we expect to see "callback"
self.assertEqual(tb[-1].name, "callback")
else: else:
self.fail("No exception thrown") self.fail("No exception thrown")