|
Packit |
1c1d7e |
Doxygen regession test suite
|
|
Packit |
1c1d7e |
============================
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
This directory contains a set of regression tests. Each test consists of a
|
|
Packit |
1c1d7e |
file starting with a 3 digit number and a corresponding directory whose name
|
|
Packit |
1c1d7e |
has the same 3 digit number. The directory contains one or more reference
|
|
Packit |
1c1d7e |
files that are compared against the XML output produced by doxygen. If the
|
|
Packit |
1c1d7e |
result is the same, there is no regression and the test passes. If there is a
|
|
Packit |
1c1d7e |
difference the test fails and the difference (in diff -u format) will be shown.
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
The runtest.py script responsible for running the tests takes a number of
|
|
Packit |
1c1d7e |
optional parameters:
|
|
Packit |
1c1d7e |
-id n: run test with number n only (the option may be specified
|
|
Packit |
1c1d7e |
multiple times) default is to run all tests.
|
|
Packit |
1c1d7e |
-updateref: update the reference files. Should be used in combination
|
|
Packit |
1c1d7e |
with -id to update the reference file(s) for the given test.
|
|
Packit |
1c1d7e |
-all: can be used in combination with -updateref to update the
|
|
Packit |
1c1d7e |
reference files for all tests.
|
|
Packit |
1c1d7e |
-doxygen exe: run the specified doxygen executable.
|
|
Packit |
1c1d7e |
-xmllint exe: run the specified xmllint executable.
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
The runtest.pl has the following dependenies on 3rd party tools:
|
|
Packit |
1c1d7e |
- python to run the script
|
|
Packit |
1c1d7e |
- xmllint to normalize the XML output
|
|
Packit |
1c1d7e |
- diff to show the differences in case a test fails
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
Each test file can have a number of special comment lines that are extracted by
|
|
Packit |
1c1d7e |
the runtest.pl script and take the form:
|
|
Packit |
1c1d7e |
// <identifier>: 'argument'
|
|
Packit |
1c1d7e |
Where <identifier> can be one of:
|
|
Packit |
1c1d7e |
- objective: 'argument' provides the objective for the test (i.e. its purpose)
|
|
Packit |
1c1d7e |
- check: 'argument' names a file that is generated by doxygen, which should
|
|
Packit |
1c1d7e |
be compared against the reference.
|
|
Packit |
1c1d7e |
- config: 'argument' is a line that is added to the default Doxyfile used to
|
|
Packit |
1c1d7e |
run doxygen on the test file.
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
Example to run all tests:
|
|
Packit |
1c1d7e |
python runtest.py
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
Example to run a test
|
|
Packit |
1c1d7e |
python runtest.py -id 10
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
Example to update the reference files for a test
|
|
Packit |
1c1d7e |
python runtest.py -updateref -id 10
|
|
Packit |
1c1d7e |
|
|
Packit |
1c1d7e |
There is also a CMakeLists.txt, which can be used from the build directory
|
|
Packit |
1c1d7e |
to run all tests by simply invoking 'make tests'.
|
|
Packit |
1c1d7e |
|