|
|
# Unit Testing Suite
|
|
|
In order to assure that the preprocessor and building scripts work as intended, every script comes with a collection of tests.
|
|
|
|
|
|
In order to assure that the preprocessor and building scripts work as intended, every script comes with a collection of tests. The test suites also reside in the subdirectory `bin` and carry the filename prefix `test_`. Every test that comes with reference files come with an additional subdirectory `/testing/test_name-of-your-sub`.
|
|
|
# Unit Testing Suites
|
|
|
|
|
|
The tests are run on GitLab after each change in `/bin` and `/testing`, see [CI/CD](Continuous-Integration-and-Continuous-Deployment#docker-test-and-testing) for details.
|
|
|
The test suites also reside in the subdirectory `bin` and carry the filename prefix `test_`. Every test that comes with reference files come with an additional subdirectory `/testing/test_name-of-your-sub`.
|
|
|
|
|
|
The tests are run on GitLab after each change in `/bin` and `/testing`, see [CI/CD](Continuous-Integration-and-Continuous-Deployment#docker-test-and-testing) and the configuration in `.gitlab-ci.yml` for details.
|
|
|
|
|
|
# Test Template
|
|
|
|
|
|
Each test has 5 stages:
|
|
|
* [Prepare generic variables](#generic-variables).
|
|
|
* Run the script to be tested (with different combinations of input arguments
|
|
|
* Run the script to be tested (with different combinations of input arguments.
|
|
|
* Compare the output with a reference file usually via a [`diff`](https://en.wikipedia.org/wiki/Diff) command.
|
|
|
* Check whether all files where created using `if [ -f ...]`
|
|
|
* Check whether all files where created using `if [ -f ...]` .
|
|
|
* Exit with exit code `1` if script has failed or continue with next test.
|
|
|
|
|
|
## Generic Variables
|
... | ... | |