diff options
author | David Robertson <davidr@element.io> | 2022-11-01 13:07:54 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-01 13:07:54 +0000 |
commit | 5905ba12d0c652b77ffc677196c7e31addb0eedf (patch) | |
tree | 31219ce34956bf5092cc06fec604f2950922c77a /tests/federation/transport | |
parent | Revert "Fix event size checks (#13710)" (diff) | |
download | synapse-5905ba12d0c652b77ffc677196c7e31addb0eedf.tar.xz |
Run trial tests against Python 3.11 (#13812)
Diffstat (limited to 'tests/federation/transport')
-rw-r--r-- | tests/federation/transport/test_client.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/tests/federation/transport/test_client.py b/tests/federation/transport/test_client.py index dd4d1b56de..b84c74fc0e 100644 --- a/tests/federation/transport/test_client.py +++ b/tests/federation/transport/test_client.py @@ -15,6 +15,8 @@ import json from unittest.mock import Mock +import ijson.common + from synapse.api.room_versions import RoomVersions from synapse.federation.transport.client import SendJoinParser from synapse.util import ExceptionBundle @@ -117,8 +119,17 @@ class SendJoinParserTestCase(TestCase): coro_3 = Mock() coro_3.close = Mock(side_effect=RuntimeError("Couldn't close coro 3")) + original_coros = parser._coros parser._coros = [coro_1, coro_2, coro_3] + # Close the original coroutines. If we don't, when we garbage collect them + # they will throw, failing the test. (Oddly, this only started in CPython 3.11). + for coro in original_coros: + try: + coro.close() + except ijson.common.IncompleteJSONError: + pass + # Send half of the data to the parser parser.write(serialisation[: len(serialisation) // 2]) |