mirror of
https://github.com/pybind/pybind11.git
synced 2024-11-24 14:15:11 +00:00
8a801bdc32
* chore(deps): update pre-commit hooks updates: - [github.com/astral-sh/ruff-pre-commit: v0.5.6 → v0.6.3](https://github.com/astral-sh/ruff-pre-commit/compare/v0.5.6...v0.6.3) - [github.com/pre-commit/mirrors-mypy: v1.11.1 → v1.11.2](https://github.com/pre-commit/mirrors-mypy/compare/v1.11.1...v1.11.2) - [github.com/sirosen/texthooks: 0.6.6 → 0.6.7](https://github.com/sirosen/texthooks/compare/0.6.6...0.6.7) - [github.com/PyCQA/pylint: v3.2.6 → v3.2.7](https://github.com/PyCQA/pylint/compare/v3.2.6...v3.2.7) - [github.com/python-jsonschema/check-jsonschema: 0.29.1 → 0.29.2](https://github.com/python-jsonschema/check-jsonschema/compare/0.29.1...0.29.2) * style: pre-commit fixes --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
32 lines
707 B
Python
32 lines
707 B
Python
from __future__ import annotations
|
|
|
|
import sys
|
|
|
|
import pytest
|
|
|
|
asyncio = pytest.importorskip("asyncio")
|
|
m = pytest.importorskip("pybind11_tests.async_module")
|
|
|
|
if sys.platform.startswith("emscripten"):
|
|
pytest.skip("Can't run a new event_loop in pyodide", allow_module_level=True)
|
|
|
|
|
|
@pytest.fixture
|
|
def event_loop():
|
|
loop = asyncio.new_event_loop()
|
|
yield loop
|
|
loop.close()
|
|
|
|
|
|
async def get_await_result(x):
|
|
return await x
|
|
|
|
|
|
def test_await(event_loop):
|
|
assert event_loop.run_until_complete(get_await_result(m.SupportsAsync())) == 5
|
|
|
|
|
|
def test_await_missing(event_loop):
|
|
with pytest.raises(TypeError):
|
|
event_loop.run_until_complete(get_await_result(m.DoesNotSupportAsync()))
|