Files
galileo/tests/integration/test_signalsim_inav_pages.py
T

20 lines
828 B
Python

from __future__ import annotations
from pathlib import Path
import pytest
from galileo_rx.navigation.decoder_diagnostics import load_prompt_epochs
from galileo_rx.navigation.inav_pipeline import InavNavigationPipeline
@pytest.mark.signalsim
def test_signalsim_prompts_produce_crc_valid_inav_pages() -> None:
path = Path("verification/navigation/signalsim_navigation_multisat/prn_01/prompt_epochs.npz")
if not path.is_file():
pytest.skip("SignalSim navigation prompt artifact is unavailable; run collect-navigation first")
decoded = InavNavigationPipeline(1).process(load_prompt_epochs(path, 1))
assert len(decoded.pages) == 15
assert all(page.sync_valid and page.fec_valid and page.crc_valid for page in decoded.pages)
assert {word.word_type for word in decoded.words} == {1, 2, 3, 4, 5, 6}