- .gitattributes tracks tests/data/*.h5 via git-LFS for big reference datasets. - tests/TestData.h resolves tests/data files and reports absent / unfetched-LFS-pointer so tests can SKIP() instead of failing; tests/data/README.md documents fetching + the expected lyso_rotation/lyso_serial datasets. - JFJochProcessLargeTest: a Catch start-up listener that prints dataset availability, plus [large] full-analysis runs (rotation indexing + serial) that SKIP when data is absent. Verified against the real 1800-image lyso rotation set (100% indexing, cell 78.2/78.2/37.8) and skips cleanly without it. - jfjoch_process.cpp: drop the ~15 now-unused workflow includes left after the JFJochProcess extraction. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Large reference test datasets (git-LFS)
The [large] Catch tests in tests/ run the full analysis/processing pipeline over real
JUNGFRAU datasets that are too big to keep as ordinary git blobs. They are tracked with
git-LFS (see the tests/data/*.h5 rule in the top-level .gitattributes).
These files are not required to build or to run the normal test suite: every test that
needs them resolves the path through jfjoch_test::LargeDataFile() (tests/TestData.h) and
SKIP()s when the file is absent or is still an unfetched LFS pointer. jfjoch_test also
prints, at start-up, whether this directory is populated.
Fetching
git lfs install
git lfs pull # or: git lfs pull --include "tests/data/*.h5"
Expected files
Place each dataset's master and its _data_NNNNNN.h5 files in this directory:
| File | Dataset |
|---|---|
lyso_rotation_master.h5 |
lysozyme rotation series (~1800 images) |
lyso_serial_master.h5 |
lysozyme serial / jet stills (~5000 images) |
To point the tests at an existing local dataset without copying, symlink it:
ln -s /path/to/your_master.h5 tests/data/lyso_rotation_master.h5
ln -s /path/to/your_data_000001.h5 tests/data/...
(The master references its data files by relative name, so keep them side by side.)