- .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>
36 lines
1.4 KiB
Markdown
36 lines
1.4 KiB
Markdown
# 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.)
|