From 0500b28aea71cf6494c620932c03305aca8e4bc2 Mon Sep 17 00:00:00 2001 From: grossmj Date: Tue, 20 Oct 2020 00:57:06 +1030 Subject: [PATCH] Fix changing to ProactorEventLoop in tests. --- tests/conftest.py | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index abb7a806..a88f3c72 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -25,19 +25,18 @@ from gns3server.app import app from httpx import AsyncClient -@pytest.yield_fixture(scope="session") -def event_loop(request): - """ - Overwrite pytest_asyncio event loop. - """ +if sys.platform.startswith("win") and sys.version_info < (3, 8): + @pytest.yield_fixture(scope="session") + def event_loop(request): + """ + Overwrite pytest_asyncio event loop on Windows for Python < 3.8 + As of Python 3.8, the default event loop on Windows is Proactor + """ - # As of Python 3.8, the default event loop on Windows is Proactor - if sys.platform.startswith("win") and sys.version_info < (3, 8): - asyncio.set_event_loop_policy(asyncio.WindowsProactorEventLoopPolicy()) - loop = asyncio.get_event_loop_policy().new_event_loop() - asyncio.set_event_loop(loop) - yield loop - loop.close() + loop = asyncio.ProactorEventLoop() + asyncio.set_event_loop(loop) + yield loop + loop.close() @pytest.fixture(scope='function')