From 5ae2fbbe2d1908e96cc4d4934625392cf46489ec Mon Sep 17 00:00:00 2001 From: Ben Darnell Date: Thu, 20 Feb 2025 14:22:14 -0500 Subject: [PATCH] testing: Suppress deprecation warnings in AsyncTestCase This is a temporary measure to get CI passing while the fate of these deprecation warnings is decided in https://github.com/python/cpython/issues/130322 --- tornado/testing.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tornado/testing.py b/tornado/testing.py index a397e3fa1c..9f54a1e2ed 100644 --- a/tornado/testing.py +++ b/tornado/testing.py @@ -155,6 +155,19 @@ def setUp(self) -> None: category=DeprecationWarning, module=r"tornado\..*", ) + if (3, 14) <= py_ver: + # TODO: This is a temporary hack pending resolution of + # https://github.com/python/cpython/issues/130322 + # If set_event_loop is undeprecated, we can remove it; if not + # we need substantial changes to this class to use asyncio.Runner + # like IsolatedAsyncioTestCase does. + setup_with_context_manager(self, warnings.catch_warnings()) + warnings.filterwarnings( + "ignore", + message="'asyncio.set_event_loop' is deprecated", + category=DeprecationWarning, + module="tornado.testing", + ) super().setUp() if type(self).get_new_ioloop is not AsyncTestCase.get_new_ioloop: warnings.warn("get_new_ioloop is deprecated", DeprecationWarning)