diff --git a/CLAUDE.md b/CLAUDE.md index 5720a3a5..d008eafc 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -78,12 +78,21 @@ Tests use **Catch2** and are collected into a single binary `tests/jfjoch_test`. ``` make -j$(nproc) jfjoch_test cd tests -./jfjoch_test # all tests ./jfjoch_test "" # one test case (exact name in TEST_CASE) +./jfjoch_test "Prefix*" # by name prefix ./jfjoch_test "[tag]" # by tag ./jfjoch_test -r junit -o report.xml ``` +**Do not run the whole suite** (`./jfjoch_test` with no filter). It takes far too long to be worth +running locally, and **CI runs it on every push anyway**. Run only the cases or tags covering the +code you changed and stop there; a bare `./jfjoch_test` is justified only for a genuinely sweeping +change. The same applies to the 37-crystal rotation battery (`rugnux_vs_xds.py`) — run it when a +change plausibly moves merged results, not as a reflex. + +**Do not `git push`.** Commit when asked; pushing is a separate decision that belongs to the +maintainer. + `make jfjoch_hdf5_test` builds the HDF5 write-speed benchmark (it lives in `tools/`, so the binary is `build/tools/jfjoch_hdf5_test`); CI also uses it to produce files that are validated against XDS (Durin/Neggia), DIALS and CrystFEL. `jfjoch_hdf5_enospc_test` + the `enospc_shim` module test