cpython/Lib/test/test_asyncio
Miss Islington (bot) 646aa7efb3
gh-90155: Fix bug in asyncio.Semaphore and strengthen FIFO guarantee (GH-93222)
The main problem was that an unluckily timed task cancellation could cause
the semaphore to be stuck. There were also doubts about strict FIFO ordering
of tasks allowed to pass.

The Semaphore implementation was rewritten to be more similar to Lock.
Many tests for edge cases (including cancellation) were added.
(cherry picked from commit 24e0379624)

Co-authored-by: Cyker Way <cykerway@gmail.com>
2022-09-22 10:01:14 -07:00
..
__init__.py
__main__.py
echo.py
echo2.py
echo3.py
functional.py
test_base_events.py bpo-26552: Fixed case where failing asyncio.ensure_future did not close the coroutine (#30288) (#31003) 2022-01-28 22:57:18 -08:00
test_buffered_proto.py
test_context.py bpo-46425: fix direct invocation of asyncio tests (GH-30725) (#30782) 2022-01-22 14:29:51 +02:00
test_events.py bpo-23819: Get rid of assert statements in test_asyncio (GH-30212) (GH-30213) 2021-12-20 14:50:45 +02:00
test_futures.py [3.10] bpo-46469: Make asyncio generic classes return GenericAlias (GH-30777) (#30784) 2022-01-22 14:28:51 +02:00
test_futures2.py bpo-45924: Fix asyncio incorrect traceback when future's exception is raised multiple times (GH-30274) (#94748) 2022-07-11 15:38:27 +01:00
test_locks.py gh-90155: Fix bug in asyncio.Semaphore and strengthen FIFO guarantee (GH-93222) 2022-09-22 10:01:14 -07:00
test_pep492.py
test_proactor_events.py bpo-43253: Don't call shutdown() for invalid socket handles (GH-31892) 2022-03-15 08:22:01 -07:00
test_protocols.py [3.10] Fix warning: asyncio.events._event_loop_policy was modified by test_asyncio (GH-31253) (GH-31255) 2022-02-10 15:27:15 +02:00
test_queues.py [3.10] bpo-46469: Make asyncio generic classes return GenericAlias (GH-30777) (#30784) 2022-01-22 14:28:51 +02:00
test_runners.py [3.10] Fix warning: asyncio.events._event_loop_policy was modified by test_asyncio (GH-31253) (GH-31255) 2022-02-10 15:27:15 +02:00
test_selector_events.py bpo-46827: pass sock.type to getaddrinfo in sock_connect (GH-31499) 2022-02-22 13:09:35 -08:00
test_sendfile.py bpo-41682: fixed flaky test test_sendfile_close_peer_in_the_middle_of_receiving (GH-30845) (#30860) 2022-01-25 18:40:13 +01:00
test_server.py
test_sock_lowlevel.py [3.10] Fix warning: asyncio.events._event_loop_policy was modified by test_asyncio (GH-31253) (GH-31255) 2022-02-10 15:27:15 +02:00
test_sslproto.py [3.10] bpo-46198: rename duplicate tests and remove unused code (GH-30297) (GH-31796) 2022-03-10 13:53:50 -08:00
test_streams.py GH-74116: Allow multiple drain waiters for asyncio.StreamWriter (GH-94705) 2022-09-08 08:42:08 -07:00
test_subprocess.py [3.10] Fix typos in the Lib directory (GH-28775) (GH-28804) 2021-10-07 11:49:47 -04:00
test_tasks.py gh-84753: Make inspect.iscoroutinefunction() work with AsyncMock (GH-94050) (GH-94461) 2022-06-30 20:02:15 +02:00
test_threads.py bpo-47104: Rewrite asyncio.to_thread tests to use IsolatedAsyncioTestCase (GH-32086) 2022-03-23 14:43:32 -07:00
test_transports.py [3.10] Fix warning: asyncio.events._event_loop_policy was modified by test_asyncio (GH-31253) (GH-31255) 2022-02-10 15:27:15 +02:00
test_unix_events.py gh-95597: Fix typo in Lib directory files (GH-95599) 2022-08-03 14:50:10 -07:00
test_waitfor.py bpo-47038: Increase a test timeout for slow CI machines (GH-31951) 2022-03-16 18:20:02 -07:00
test_windows_events.py
test_windows_utils.py
utils.py bpo-23819: Get rid of assert statements in test_asyncio (GH-30212) (GH-30213) 2021-12-20 14:50:45 +02:00