1Testing
2=======
3
4C API
5-----
6
7The unit tests leverage the CTest and Check frameworks to provide a easy
8environment to build up unit tests. They are split into Public and Private
9test suites reflecting the public and internal API functions of civetweb.
10
11When adding new functionality to civetweb tests should be written so that the
12new functionality will be tested across the continuous build servers. There
13are various levels of the unit tests:
14
15  * Tests are included in
16  * Test Cases which are there are multiple in
17  * Test Suites which are ran by the check framework by
18  * `civetweb-unit-tests` which is driven using the `--suite` and
19    `--test-case` arguments by
20  * CTest via `add_test` in `CMakeLists.txt`
21
22Each test suite and test case is ran individually by CTest so that it provides
23good feedback to the continuous integration servers and also CMake. Adding a
24new test case or suite will require the corresponding `add_test` driver to be
25added to `CMakeLists.txt`
26