Testing FastAPI Client Configuration in private-gpt
This test fixture implements a FastAPI test client setup for the private-gpt application. It provides a configurable test environment using pytest fixtures and dependency injection to facilitate comprehensive API testing.
Test Coverage Overview
Implementation Analysis
Technical Details
Best Practices Demonstrated
zylon-ai/private-gpt
tests/fixtures/fast_api_test_client.py
import pytest
from fastapi.testclient import TestClient
from private_gpt.launcher import create_app
from tests.fixtures.mock_injector import MockInjector
@pytest.fixture
def test_client(request: pytest.FixtureRequest, injector: MockInjector) -> TestClient:
if request is not None and hasattr(request, "param"):
injector.bind_settings(request.param or {})
app_under_test = create_app(injector.test_injector)
return TestClient(app_under_test)