python-dependency-injector/examples/miniapps/fastapi-simple/tests.py
ZipFile c61fc16b8d
Yet another Pydantic 2 support (#832)
* Add support for Pydantic v2 settings

* Configure pipeline to run tests against different pydantic versions

* Update Pydantic docs and examples for v2

* Fix compatibility with httpx v0.27.0
2024-12-07 11:38:08 -05:00

28 lines
658 B
Python

from unittest import mock
import pytest
from httpx import ASGITransport, AsyncClient
from fastapi_di_example import app, container, Service
@pytest.fixture
async def client(event_loop):
async with AsyncClient(
transport=ASGITransport(app=app),
base_url="http://test",
) as client:
yield client
@pytest.mark.asyncio
async def test_index(client):
service_mock = mock.AsyncMock(spec=Service)
service_mock.process.return_value = "Foo"
with container.service.override(service_mock):
response = await client.get("/")
assert response.status_code == 200
assert response.json() == {"result": "Foo"}