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
This commit is contained in:
Yuzviak
2026-05-11 18:20:05 +03:00
parent 09e756ecbb
commit 5744ff65ac
37 changed files with 82 additions and 2 deletions
+2
View File
@@ -3,6 +3,8 @@
import numpy as np
import pytest
pytestmark = [pytest.mark.unit]
from gps_denied.testing.coord import ecef_to_wgs84, euler_to_quaternion
# --- ECEF → WGS84 ---
+2
View File
@@ -2,6 +2,8 @@
import pytest
pytestmark = [pytest.mark.unit]
from gps_denied.testing.datasets.base import (
DatasetAdapter,
DatasetCapabilities,
+4
View File
@@ -3,6 +3,10 @@
import hashlib
from pathlib import Path
import pytest
pytestmark = [pytest.mark.unit]
from gps_denied.testing.download import (
DATASET_REGISTRY,
DatasetSpec,
+2
View File
@@ -13,6 +13,8 @@ from pathlib import Path
import pytest
pytestmark = [pytest.mark.e2e]
from gps_denied.testing.datasets.euroc import EuRoCAdapter
from gps_denied.testing.harness import E2EHarness
from gps_denied.testing.metrics import absolute_trajectory_error
+2
View File
@@ -4,6 +4,8 @@ from pathlib import Path
import pytest
pytestmark = [pytest.mark.unit]
from gps_denied.testing.datasets.base import (
DatasetNotAvailableError,
PlatformClass,
+2
View File
@@ -17,6 +17,8 @@ from pathlib import Path
import pytest
pytestmark = [pytest.mark.e2e]
from gps_denied.testing.datasets.euroc import EuRoCAdapter
from gps_denied.testing.harness import E2EHarness
from gps_denied.testing.metrics import absolute_trajectory_error
+2
View File
@@ -20,6 +20,8 @@ import cv2
import numpy as np
import pytest
pytestmark = [pytest.mark.e2e]
from gps_denied.core.vo import ORBVisualOdometry
from gps_denied.schemas import CameraParameters
from gps_denied.testing.datasets.euroc import EuRoCAdapter
+2
View File
@@ -7,6 +7,8 @@ Correctness of VO on synthetic is out of scope — that's unit-test territory.
import pytest
pytestmark = [pytest.mark.integration]
from gps_denied.testing.datasets.synthetic import SyntheticAdapter
from gps_denied.testing.harness import E2EHarness, HarnessResult
+2
View File
@@ -4,6 +4,8 @@ from pathlib import Path
import pytest
pytestmark = [pytest.mark.e2e]
from gps_denied.testing.datasets.mars_lvig import MARSLVIGAdapter
from gps_denied.testing.harness import E2EHarness
+2
View File
@@ -4,6 +4,8 @@ from pathlib import Path
import pytest
pytestmark = [pytest.mark.unit]
from gps_denied.testing.datasets.base import (
DatasetNotAvailableError,
PlatformClass,
+2
View File
@@ -3,6 +3,8 @@
import numpy as np
import pytest
pytestmark = [pytest.mark.unit]
from gps_denied.testing.metrics import (
absolute_trajectory_error,
relative_pose_error,
+3
View File
@@ -1,8 +1,11 @@
"""SyntheticAdapter produces a deterministic straight-line trajectory."""
import numpy as np
import pytest
from gps_denied.testing.datasets.base import PlatformClass
pytestmark = [pytest.mark.unit]
from gps_denied.testing.datasets.synthetic import SyntheticAdapter
+2
View File
@@ -8,6 +8,8 @@ from pathlib import Path
import pytest
pytestmark = [pytest.mark.e2e]
from gps_denied.testing.datasets.vpair import VPAIRAdapter
from gps_denied.testing.harness import E2EHarness
from gps_denied.testing.metrics import absolute_trajectory_error
+2
View File
@@ -10,6 +10,8 @@ from pathlib import Path
import numpy as np
import pytest
pytestmark = [pytest.mark.unit]
from gps_denied.testing.datasets.base import (
DatasetNotAvailableError,
PlatformClass,