mirror of
https://github.com/Sea-Haven-Industries/procurement-ingest.git
synced 2026-10-07 16:08:54 +00:00
- tests/test_web_ui_auth.py: replace the TypeError characterization pin with an xfail(strict, raises=TypeError) asserting the DESIRED fail-closed (False) behavior. Documents the intended fix and auto-fails (xpass) once web_ui_auth is corrected, instead of requiring a passing test to be knowingly deleted. The module stays frozen this phase; the underlying hmac.compare_digest ASCII-only defect is tracked as a follow-up. - pytest.ini: document that the aggregate 80% floor (enforced in CI via the reusable workflow's bare pytest) red-exits local subset runs by design, with the --cov-fail-under=0 override for iteration. Floor stays in addopts because the centralized ci-python-sam workflow exposes no per-run test command.
24 lines
1.1 KiB
INI
24 lines
1.1 KiB
INI
[pytest]
|
|
; Three test roots: cross-pipeline tests/, plus each pipeline's own
|
|
; email_processor/tests/ offline suite (deterministic template parser +
|
|
; Bedrock fallback dispatch + healthcheck, per pipeline).
|
|
testpaths =
|
|
tests
|
|
lambdas/wo/email_processor/tests
|
|
lambdas/po/email_processor/tests
|
|
addopts =
|
|
--cov=lambdas/po/email_processor
|
|
--cov=lambdas/wo/email_processor
|
|
--cov=lambdas/po/web_ui
|
|
--cov=lambdas/wo/web_ui
|
|
--cov=lambdas/po/site_extractor
|
|
--cov=lambdas/shared
|
|
--cov-report=term-missing
|
|
--cov-fail-under=80
|
|
; The 80% floor is an aggregate whole-suite gate, enforced in CI by the
|
|
; reusable ci-python-sam workflow's bare `pytest` run (which inherits these
|
|
; addopts). Because the floor is inherited by every invocation, running a
|
|
; single root or file for local iteration (e.g. `pytest tests/test_web_ui_auth.py`)
|
|
; under-measures the fixed --cov set and red-exits even when the selected tests
|
|
; pass. That is expected: append `--cov-fail-under=0` (or `-p no:cov`) to a
|
|
; subset run to skip the floor while iterating. The full-suite run still gates.
|