Tags: junzis/pyModeS
Tags
fix(smoke): stop pinning full PipeDecoder stats dict The v3.0.0 smoke test hardcoded the four counters that existed at release time. v3.1.0 adds altitude_mismatch, position_rejected, bootstrap_held, and bootstrap_reset — and the build's smoke step broke as a result. Check only the counters we have always guaranteed; newer releases can extend the dict freely.
Fix nuc_p latent KeyError on TC=19 airborne velocity messages adsb.nuc_p's guard was `if tc is None or tc < 5 or tc > 22:`, which let TC=19 (airborne velocity) fall through to the `uncertainty.TC_NUCp_lookup[tc]` line. TC_NUCp_lookup has no entry for 19, so nuc_p would crash with KeyError instead of the documented RuntimeError the guard was meant to raise. The function's own error message already said the expected range is "airborne position message (8<TC<19)" (exclusive of 19), so the intent was always to reject TC=19 — the guard was just incomplete. Adds `or tc == 19` to the guard and a regression test that asserts RuntimeError is raised for a known TC=19 message.
PreviousNext