Tests#
Validation notebooks are located in tests/reports and provide
regression/sanity checks for key processing steps.
Recommended checks after changing core processing logic:
tests/reports/l1b_swath_start.py.ipynb Edge cases for identifying swath start.
tests/reports/l1b_waveform.py.ipynb Waveform-level geometry and elevation sanity checks.
tests/reports/l2_dem_comparison.py.ipynb L2 elevation comparison against the reference DEM.
tests/reports/l2_tested_data_comparison.py.ipynb Comparison against validated reference output.
scripts/tutorial__general_step-by-step.ipynb End-to-end processing tutorial executed directly in tests.
scripts/tutorial__process_first_waveform.ipynb Waveform tutorial executed directly in tests.
scripts/tutorial__process_first_swath.ipynb Swath tutorial executed directly in tests.
scripts/tutorial__poca.ipynb POCA tutorial executed directly in tests.
Run all report notebooks through Snakemake with Pixi:
pixi run -e test test-notebooks
Run tutorial notebooks through Snakemake with Pixi:
pixi run -e test test-tutorial-notebooks
If tutorials are stored outside the current checkout, set
CRYOSWATH_TUTORIAL_DIR to the directory that contains
tutorial__*.ipynb before running test-tutorial-notebooks.
Run unit tests + report notebooks + tutorial notebooks:
pixi run -e test test-all
Notebooks starting with 0-l4_ are intentionally excluded from this workflow.
These notebooks are smoke/regression tests, not a full scientific validation campaign.
Some notebook tests fetch larger datasets from first-hand online sources at runtime. External network outages and credential issues can therefore cause test failures.