Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tests: asyncio: Fix Python 3.10 compatibility #421

Merged
merged 1 commit into from
Feb 17, 2023

Conversation

jktjkt
Copy link
Contributor

@jktjkt jktjkt commented Oct 16, 2021

Since Python 3.10, the asyncio.get_event_loop() has been deprecated in favor of asyncio.get_running_loop(). That one, however, issues a warning when there's no event loop running (such as in this test suite).

Fix this by always requesting a new event loop. These methods have been available since at least Python 3.5 (and there are no older docs online at this point).

Bug: #398

Since Python 3.10, the `asyncio.get_event_loop()` has been deprecated in
favor of `asyncio.get_running_loop()`. That one, however, issues a
warning when there's no event loop running (such as in this test suite).

Fix this by always requesting a new event loop. These methods have been
available since at least Python 3.5 (and there are no older docs online
at this point).

Bug: spulec#398
@@ -14,7 +14,7 @@ def test_time_freeze_coroutine():
async def frozen_coroutine():
assert datetime.date.today() == datetime.date(1970, 1, 1)

asyncio.get_event_loop().run_until_complete(frozen_coroutine())
asyncio.new_event_loop().run_until_complete(frozen_coroutine())
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
asyncio.new_event_loop().run_until_complete(frozen_coroutine())
asyncio.run(frozen_coroutine())

@@ -14,7 +14,7 @@ def test_time_freeze_coroutine():
async def frozen_coroutine():
assert datetime.date.today() == datetime.date(1970, 1, 1)

asyncio.get_event_loop().run_until_complete(frozen_coroutine())
asyncio.new_event_loop().run_until_complete(frozen_coroutine())


def test_time_freeze_async_def():
Copy link
Contributor

@graingert graingert Apr 11, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this test can just be removed because it's the same as the above test_time_freeze_coroutine - except the syntax was hidden from 3.4 or lower

micromoses added a commit to micromoses/freezegun that referenced this pull request Feb 17, 2023
spulec#421 (comment)
> this test can just be removed because it's the same as the above test_time_freeze_coroutine - except the syntax was hidden from 3.4 or lower
micromoses added a commit to micromoses/freezegun that referenced this pull request Feb 17, 2023
@boxed boxed merged commit daefad5 into spulec:master Feb 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants