Blame testing/README.txt

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