Add support for E2E testing infrastructure and OAuth configurations

- Introduced make commands for E2E tests using Testcontainers and Schemathesis.
- Updated `.env.demo` with configurable OAuth settings for Google and GitHub.
- Enhanced `README.md` with updated environment setup instructions.
- Added E2E testing dependencies and markers in `pyproject.toml` for real PostgreSQL and API contract validation.
- Included new libraries (`arrow`, `attrs`, `docker`, etc.) for testing and schema validation workflows.
This commit is contained in:
Felipe Cardoso
2025-11-25 22:24:23 +01:00
parent fcbcff99e9
commit c0b253a010
14 changed files with 1539 additions and 13 deletions

View File

@@ -75,6 +75,12 @@ dev = [
"mypy>=1.8.0", # Type checking
]
# E2E testing with real PostgreSQL (requires Docker)
e2e = [
"testcontainers[postgres]>=4.0.0",
"schemathesis>=3.30.0",
]
# ============================================================================
# Ruff Configuration - All-in-one linting, formatting, and import sorting
# ============================================================================
@@ -313,6 +319,8 @@ addopts = [
markers = [
"sqlite: marks tests that should run on SQLite (mocked).",
"postgres: marks tests that require a real PostgreSQL database.",
"e2e: marks end-to-end tests requiring Docker containers.",
"schemathesis: marks Schemathesis-generated API tests.",
]
asyncio_default_fixture_loop_scope = "function"