|
24 | 24 | _BENCHMARKS_DIR = "tests/benchmarks" |
25 | 25 |
|
26 | 26 | # Tests that perform sync IO inside the asyncio event loop and trip |
27 | | -# blockbuster. Marked xfail so CI stays green; pop entries as they get |
28 | | -# fixed so the underlying blocking call is gone for good. The single |
29 | | -# entry below pins the deliberate sync-bootstrap path Zeroconf takes |
30 | | -# when constructed with `use_asyncio=False` from inside a running loop |
31 | | -# — that block on the loop-thread-ready event is the behavior the test |
32 | | -# is documenting, so it stays xfail by design. |
| 27 | +# blockbuster. Marked xfail (strict=False) so CI stays green; pop |
| 28 | +# entries as the underlying blocking calls get fixed. Most of the |
| 29 | +# `test_async_service_registration*` and `test_async_tasks` entries |
| 30 | +# share a single root cause: `Zeroconf.async_close()` -> ... -> |
| 31 | +# `ServiceBrowser.cancel()` calls `Thread.join()` to drain the |
| 32 | +# dedicated browser thread, and on Python 3.10-3.12 the thread is |
| 33 | +# still alive when the join happens. `test_use_asyncio_false_*` is |
| 34 | +# by design (sync bootstrap when `use_asyncio=False` is requested from |
| 35 | +# inside a running loop); `test_run_coro_with_timeout` exercises the |
| 36 | +# sync-from-thread bridge intentionally. The strict=False marker keeps |
| 37 | +# the suite green on the Python versions where the race resolves the |
| 38 | +# other way. |
33 | 39 | _KNOWN_BLOCKING: frozenset[str] = frozenset( |
34 | 40 | { |
| 41 | + "tests/test_asyncio.py::test_async_service_registration", |
| 42 | + "tests/test_asyncio.py::test_async_service_registration_with_server_missing", |
| 43 | + "tests/test_asyncio.py::test_async_service_registration_same_server_different_ports", |
| 44 | + "tests/test_asyncio.py::test_async_service_registration_same_server_same_ports", |
| 45 | + "tests/test_asyncio.py::test_async_tasks", |
35 | 46 | "tests/test_core.py::Framework::test_use_asyncio_false_forces_thread_when_loop_running", |
| 47 | + "tests/utils/test_asyncio.py::test_run_coro_with_timeout", |
36 | 48 | } |
37 | 49 | ) |
38 | 50 |
|
|
0 commit comments