- ~60 new/extended test files across api, core, plugins, services, schemas: routes, superset clients, task_manager, lineage, git, translate, dashboard-testing, load-testing, migration, llm_analysis, scheduler, ssl - .coveragerc: enable branch coverage; exclude src/__tests__ (test files) and src/scripts (CLI/ops tools) from the denominator - bug fixes found while testing: * settings: PUT /settings/reports registered under duplicated prefix * schemas/lineage: FleetReportDTO missing run_status (route always 500) * dashboard_testing/baseline_inheritance: visual entry read wrong field * superset_client/_databases: logger extra name shadowed LogRecord attr * routes/datasets: _yaml_string_paths recursion without yield from * translate/sql_generator: restore explicit-type timestamp contract * baseline_catalog: remove unreachable dashboard_id fallback - conftest fixes: pytest_plugins to rootdir conftest (pytest 9), test filename collision, TMPDIR-safe integration fixtures
24 lines
634 B
INI
24 lines
634 B
INI
# Coverage configuration for backend/src (pytest-cov).
|
|
# Branch coverage enabled; tests target >=95% statements AND >=95% branches.
|
|
|
|
[run]
|
|
branch = True
|
|
source = src
|
|
# Test files living under src/ (src/**/__tests__/**) are excluded from the
|
|
# pytest suite by design (norecursedirs in pyproject.toml) — they are test
|
|
# code, not production, and must not drag the production denominator.
|
|
omit =
|
|
*/__tests__/*
|
|
*/__tests__/**
|
|
|
|
[report]
|
|
show_missing = True
|
|
skip_covered = True
|
|
skip_empty = True
|
|
exclude_lines =
|
|
pragma: no cover
|
|
if TYPE_CHECKING:
|
|
if __name__ == .__main__.:
|
|
raise NotImplementedError
|
|
@overload
|