xref: /netbsd-src/external/bsd/zstd/dist/tests/regression/README.md (revision 3117ece4fc4a4ca4489ba793710b60b0d26bab6c)
1*3117ece4Schristos# Regression tests
2*3117ece4Schristos
3*3117ece4SchristosThe regression tests run zstd in many scenarios and ensures that the size of the compressed results doesn't change. This helps us ensure that we don't accidentally regress zstd's compression ratio.
4*3117ece4Schristos
5*3117ece4SchristosThese tests get run every night by CircleCI. If the job fails you can read the diff printed by the job to ensure the change isn't a regression. If all is well you can download the `results.csv` artifact and commit the new results. Or you can rebuild it yourself following the instructions below.
6*3117ece4Schristos
7*3117ece4Schristos## Rebuilding results.csv
8*3117ece4Schristos
9*3117ece4SchristosFrom the root of the zstd repo run:
10*3117ece4Schristos
11*3117ece4Schristos```
12*3117ece4Schristos# Build the zstd binary
13*3117ece4Schristosmake clean
14*3117ece4Schristosmake -j zstd
15*3117ece4Schristos
16*3117ece4Schristos# Build the regression test binary
17*3117ece4Schristoscd tests/regression
18*3117ece4Schristosmake clean
19*3117ece4Schristosmake -j test
20*3117ece4Schristos
21*3117ece4Schristos# Run the regression test
22*3117ece4Schristos./test --cache data-cache --zstd ../../zstd --output results.csv
23*3117ece4Schristos
24*3117ece4Schristos# Check results.csv to ensure the new results are okay
25*3117ece4Schristosgit diff
26*3117ece4Schristos
27*3117ece4Schristos# Then submit the PR
28*3117ece4Schristos```
29