[regression] Add initial regression test framework
The regression tests run nightly or on the `regression` branch for convenience. The results get uploaded as the artifacts of the job. If they change, check the diff printed in the job. If all is well, download the new results and commit them to the repo. This code will only run on a UNIX like platform. It could be made to run on Windows, but I don't think that it is necessary. It also uses C99. * data: This module defines the data to run tests on. It downloads data from a URL into a cache directory, checks it against a checksum, and unpacks it. It also provides helpers for accessing the data. * config: This module defines the configs to run tests with. A config is a set of API parameters and a set of CLI flags. * result: This module is a helper for method that defines the result type. * method: This module defines the compression methods to test. It is what runs the regression test using the data and the config. It reports the total compressed size, or an error/skip. * test: This is the test binary that runs the tests for every (data, config, method) tuple, and prints the results to the output file and stderr. * results.csv: The results that the current commit is expected to produce.
显示
- .circleci/config.yml 66 个添加, 1 个删除.circleci/config.yml
- tests/regression/Makefile 58 个添加, 0 个删除tests/regression/Makefile
- tests/regression/config.c 63 个添加, 0 个删除tests/regression/config.c
- tests/regression/config.h 59 个添加, 0 个删除tests/regression/config.h
- tests/regression/data.c 493 个添加, 0 个删除tests/regression/data.c
- tests/regression/data.h 92 个添加, 0 个删除tests/regression/data.h
- tests/regression/levels.h 44 个添加, 0 个删除tests/regression/levels.h
- tests/regression/method.c 186 个添加, 0 个删除tests/regression/method.c
- tests/regression/method.h 65 个添加, 0 个删除tests/regression/method.h
- tests/regression/result.c 28 个添加, 0 个删除tests/regression/result.c
- tests/regression/result.h 103 个添加, 0 个删除tests/regression/result.h
- tests/regression/results.csv 43 个添加, 0 个删除tests/regression/results.csv
- tests/regression/test.c 308 个添加, 0 个删除tests/regression/test.c
tests/regression/Makefile
0 → 100644
tests/regression/config.c
0 → 100644
tests/regression/config.h
0 → 100644
tests/regression/data.c
0 → 100644
tests/regression/data.h
0 → 100644
tests/regression/levels.h
0 → 100644
tests/regression/method.c
0 → 100644
tests/regression/method.h
0 → 100644
tests/regression/result.c
0 → 100644
tests/regression/result.h
0 → 100644
tests/regression/results.csv
0 → 100644
tests/regression/test.c
0 → 100644
想要评论请 注册 或 登录