Skip to content

Commit 28db941

Browse files
Adapt test cases to pytest-asyncio 1.0 compatibility (#1)
- Remove deprecated event_loop fixture https://pytest-asyncio.readthedocs.io/en/stable/reference/changelog.html#removed - Drop *_without_event_loop tests These incompatible tests (*1) are no longer needed since the underlying code has already been removed (introduced in a460156, removed in 5d714cc). *1: asyncio.get_event_loop() now raises a RuntimeError in Python 3.14 when no loop exists. https://docs.python.org/3.14/whatsnew/3.14.html#id7 Co-authored-by: Edgar Ramírez Mondragón <[email protected]>
1 parent b93b5db commit 28db941

File tree

1 file changed

+2
-51
lines changed

1 file changed

+2
-51
lines changed

tests/test_backoff_async.py

Lines changed: 2 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -665,7 +665,7 @@ async def exceptor():
665665

666666

667667
@pytest.mark.asyncio
668-
async def test_on_exception_coro_cancelling(event_loop):
668+
async def test_on_exception_coro_cancelling():
669669
sleep_started_event = asyncio.Event()
670670

671671
@backoff.on_predicate(backoff.expo)
@@ -679,59 +679,10 @@ async def coro():
679679

680680
return False
681681

682-
task = event_loop.create_task(coro())
682+
task = asyncio.create_task(coro())
683683

684684
await sleep_started_event.wait()
685685

686686
task.cancel()
687687

688688
assert (await task)
689-
690-
691-
def test_on_predicate_on_regular_function_without_event_loop(monkeypatch):
692-
monkeypatch.setattr('time.sleep', lambda x: None)
693-
694-
# Set default event loop to None.
695-
loop = asyncio.get_event_loop()
696-
asyncio.set_event_loop(None)
697-
698-
try:
699-
@backoff.on_predicate(backoff.expo)
700-
def return_true(log, n):
701-
val = (len(log) == n - 1)
702-
log.append(val)
703-
return val
704-
705-
log = []
706-
ret = return_true(log, 3)
707-
assert ret is True
708-
assert 3 == len(log)
709-
710-
finally:
711-
# Restore event loop.
712-
asyncio.set_event_loop(loop)
713-
714-
715-
def test_on_exception_on_regular_function_without_event_loop(monkeypatch):
716-
monkeypatch.setattr('time.sleep', lambda x: None)
717-
718-
# Set default event loop to None.
719-
loop = asyncio.get_event_loop()
720-
asyncio.set_event_loop(None)
721-
722-
try:
723-
@backoff.on_exception(backoff.expo, KeyError)
724-
def keyerror_then_true(log, n):
725-
if len(log) == n:
726-
return True
727-
e = KeyError()
728-
log.append(e)
729-
raise e
730-
731-
log = []
732-
assert keyerror_then_true(log, 3) is True
733-
assert 3 == len(log)
734-
735-
finally:
736-
# Restore event loop.
737-
asyncio.set_event_loop(loop)

0 commit comments

Comments
 (0)