gwoe-antragspruefer/.coveragerc

41 lines
1.3 KiB
Plaintext
Raw Normal View History

[run]
source = app
omit =
# Hilfs-Skripte und Migrations-Tools — nicht produktiver Code
app/reindex_embeddings.py
app/sync_abgeordnetenwatch.py
# Generated / Auto-Discovery
app/__init__.py
[report]
# Faustregel ADR 0007: keine 100%-Jagd, aber kritische Pfade abdecken.
# show_missing-Flag macht Luecken im CI-Output sofort sichtbar.
#
# fail_under=50 ist die aktuelle Baseline (Stand 2026-04-28). Verbleibende
# unabgedeckte Bereiche brauchen integration-Setup statt Unit-Tests:
# - app/main.py (FastAPI-Endpoints, ~900 LOC) — TestClient-Smoke-Tests
# sind lokal geskippt mangels voller Deps; laufen in der Docker-Suite.
# - app/parlamente.py (16 Adapter, ~3400 LOC) — Live-HTTP gegen Landtage,
# tests/integration/ deckt das ab.
# - app/queue.py _worker (async-Loop, while True, hart zu testen).
# - app/report.py WeasyPrint-PDF-Render-Pfade.
# - app/embeddings.py OpenAI/DashScope-Calls.
# Schwelle hochsetzen, wenn integration-Suite lokal lauffaehig wird.
show_missing = true
skip_covered = false
precision = 1
fail_under = 50
# Zeilen, die nicht gezaehlt werden sollen — typische Boilerplate ohne
# eigentliche Testbarkeit.
exclude_lines =
pragma: no cover
def __repr__
raise NotImplementedError
if __name__ == .__main__.:
if TYPE_CHECKING:
\.\.\.
[html]
directory = htmlcov