Files
sientia-dataops-orchestrato…/e2e
vitor-aignosi 9e160655f2 SIENTIAPDE-2212
Add e2e scenario for drift window and chunk_period

- Add scenario 1.8.1: two drift pipelines on frequency 1m. One has no
  interval_minutes and an invalid chunk_period='hour', so it expects
  interval=2, chunk_period='min' and one DRIFT_CHUNK_PERIOD_INVALID
  notification. The other sets interval_minutes=60 and chunk_period='s',
  and both are forwarded unchanged with no warning (SIENTIAPDE-2212).
- Add a _schedule_input helper that decodes the workflow input of a
  laborious-namespace schedule.
- Reformat the ensure_namespace_search_attributes signature in
  conftest.py to a single line.
2026-10-27 16:27:58 -03:00
..
2026-10-27 16:27:58 -03:00
2026-05-22 15:02:16 -03:00
2026-10-27 16:27:58 -03:00
2026-05-22 15:02:16 -03:00
2026-05-22 15:02:16 -03:00
2026-10-27 16:27:58 -03:00
2026-05-22 15:02:16 -03:00
2026-05-22 15:02:16 -03:00

Orchestrator end-to-end tests

End-to-end tests run every external dependency for real (MongoDB, Redis, PostgreSQL via testcontainers; SMTP via in-process aiosmtpd; Temporal via WorkflowEnvironment.start_local()).

Requirements

  • Docker (for testcontainers)
  • Python dev dependencies: pip install -r requirements-dev.txt

Run locally

source ./venv/bin/activate
pytest e2e/ --override-ini testpaths=e2e -m e2e -v

Stop on first failure:

pytest e2e/ --override-ini testpaths=e2e -m e2e -x

Coverage (separate from unit tests)

COVERAGE_FILE=.coverage.e2e pytest e2e/ --override-ini testpaths=e2e -m e2e --cov=orchestrator --cov-branch
coverage combine .coverage .coverage.e2e
coverage report

Unit tests keep the default .coverage file; the E2E run must set COVERAGE_FILE=.coverage.e2e so reports do not overwrite each other.

Scenario catalog

See scenarios.md for numbered scenarios and which test module implements each case.