Commit Graph

2 Commits

Author SHA1 Message Date
Yuzviak 5744ff65ac feat(02-03): apply module-level pytestmark to 37 test files
- Add pytestmark = [pytest.mark.<category>] to all 23 root test files and 14 e2e test files
- Marker distribution: 22 unit, 7 integration, 1 blackbox, 1 sitl, 5 e2e + 2 e2e integration
- Add import pytest to test_models.py, test_download.py, test_synthetic_adapter.py (were missing)
- Convert test_sitl_integration.py's bare pytestmark to list form preserving skipif guard
- Union of all 5 markers = 298/298 = 100% coverage; 216 tests pass with --strict-markers
2026-05-11 18:20:05 +03:00
Yuzviak c9b74f45b8 test(e2e): parametrised ESKF drift tests across all 5 EuRoC MH sequences
conftest.py: add euroc_mh02..05_root fixtures (session-scoped, skip when absent)
test_euroc_mh_all.py: 10 parametrised tests — pipeline_completes + eskf_drift
  for MH_01..05 with per-difficulty ESKF ATE ceilings (easy: 0.5 m, med/hard: 1.5 m)

Results on first 100 frames (vo_scale=5 mm/frame):
  MH_01 easy     ESKF ATE 0.205 m  (< 0.5 m ceiling)
  MH_02 easy     ESKF ATE 0.131 m  (< 0.5 m ceiling)
  MH_03 medium   ESKF ATE 0.008 m  (< 1.5 m ceiling)
  MH_04 difficult ESKF ATE 0.009 m  (< 1.5 m ceiling)
  MH_05 difficult ESKF ATE 0.007 m  (< 1.5 m ceiling)
All 10 tests PASS.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-18 15:19:09 +03:00