21 lines
759 B
Python
21 lines
759 B
Python
from __future__ import annotations
|
|
|
|
import json
|
|
from pathlib import Path
|
|
|
|
import pytest
|
|
|
|
|
|
@pytest.mark.signalsim
|
|
def test_signalsim_decoded_ephemerides_match_rinex_truth_within_quantization() -> None:
|
|
path = Path("reports/inav_truth_comparison.json")
|
|
if not path.is_file():
|
|
pytest.skip("post-decode SignalSim truth-comparison report is unavailable")
|
|
report = json.loads(path.read_text(encoding="utf-8"))
|
|
assert report["truth_injected_into_decoder"] is False
|
|
assert report["overall_pass"] is True
|
|
assert len(report["satellites"]) >= 4
|
|
assert all(item["pass"] for item in report["satellites"].values())
|
|
assert report["galileo_time"]["pass"] is True
|
|
assert report["galileo_time"]["time_of_week_absolute_error_s"] <= 1
|