mirror of https://github.com/encode/starlette.git
24 lines
617 B
Python
24 lines
617 B
Python
from __future__ import annotations
|
|
|
|
import functools
|
|
from typing import Any, Literal
|
|
|
|
import pytest
|
|
|
|
from starlette.testclient import TestClient
|
|
from tests.types import TestClientFactory
|
|
|
|
|
|
@pytest.fixture
|
|
def test_client_factory(
|
|
anyio_backend_name: Literal["asyncio", "trio"],
|
|
anyio_backend_options: dict[str, Any],
|
|
) -> TestClientFactory:
|
|
# anyio_backend_name defined by:
|
|
# https://anyio.readthedocs.io/en/stable/testing.html#specifying-the-backends-to-run-on
|
|
return functools.partial(
|
|
TestClient,
|
|
backend=anyio_backend_name,
|
|
backend_options=anyio_backend_options,
|
|
)
|