|
Than Ngo |
b7bcaa |
Doxygen regression test suite
|
|
Than Ngo |
b7bcaa |
============================
|
|
Than Ngo |
b7bcaa |
|
|
Than Ngo |
b7bcaa |
This directory contains a set of regression tests. Each test consists of a
|
|
Than Ngo |
b7bcaa |
file starting with a 3 digit number and a corresponding directory whose name
|
|
Than Ngo |
b7bcaa |
has the same 3 digit number. The directory contains one or more reference
|
|
Than Ngo |
b7bcaa |
files that are compared against the XML output produced by doxygen. If the
|
|
Than Ngo |
b7bcaa |
result is the same, there is no regression and the test passes. If there is a
|
|
Than Ngo |
b7bcaa |
difference the test fails and the difference (in diff -u format) will be shown.
|
|
Than Ngo |
b7bcaa |
It is also possible to see whether or not the test can be built to a xhtml set
|
|
Than Ngo |
b7bcaa |
of files (and tested against a DTD), it is also possible to create a pdf file
|
|
Than Ngo |
b7bcaa |
for each test to see if the LaTeX / pdf generation is possible.
|
|
Than Ngo |
b7bcaa |
|
|
Than Ngo |
b7bcaa |
The runtest.py script responsible for running the tests takes a number of
|
|
Than Ngo |
b7bcaa |
optional parameters:
|
|
Than Ngo |
b7bcaa |
--updateref update the reference data for a test
|
|
Than Ngo |
b7bcaa |
--doxygen [DOXYGEN] path/name of the doxygen executable
|
|
Than Ngo |
b7bcaa |
--xmllint [XMLLINT] path/name of the xmllint executable
|
|
Than Ngo |
b7bcaa |
--id IDS [IDS ...] id of the test to perform
|
|
Than Ngo |
b7bcaa |
--start_id START_ID run tests starting with number n
|
|
Than Ngo |
b7bcaa |
--end_id END_ID run tests ending with number n
|
|
Than Ngo |
b7bcaa |
--all perform all tests
|
|
Than Ngo |
b7bcaa |
--inputdir [INPUTDIR]
|
|
Than Ngo |
b7bcaa |
input directory containing the tests
|
|
Than Ngo |
b7bcaa |
--outputdir [OUTPUTDIR]
|
|
Than Ngo |
b7bcaa |
output directory to write the doxygen output to
|
|
Than Ngo |
b7bcaa |
--noredir disable redirection of doxygen warnings
|
|
Than Ngo |
b7bcaa |
--xml create xml output and check
|
|
Than Ngo |
b7bcaa |
--rtf create rtf output
|
|
Than Ngo |
b7bcaa |
--docbook create docbook output and check with xmllint
|
|
Than Ngo |
b7bcaa |
--xhtml create xhtml output and check with xmllint
|
|
Than Ngo |
b7bcaa |
--pdf create LaTeX output and create pdf from it
|
|
Than Ngo |
b7bcaa |
--subdirs use the configuration parameter CREATE_SUBDIRS=YES
|
|
Than Ngo |
b7bcaa |
--keep keep result directories
|
|
Than Ngo |
b7bcaa |
--cfg CFGS [CFGS ...] run test with extra doxygen configuration settings
|
|
Than Ngo |
b7bcaa |
(the option may be specified multiple times
|
|
Than Ngo |
b7bcaa |
In case neither --xml, --pdf, --rtf, --docbook or --xhtml is used the default is set to --xml.
|
|
Than Ngo |
b7bcaa |
|
|
Than Ngo |
b7bcaa |
The runtest.pl has the following dependencies on 3rd party tools:
|
|
Than Ngo |
b7bcaa |
- python to run the script
|
|
Than Ngo |
b7bcaa |
- xmllint to normalize the XML output
|
|
Than Ngo |
b7bcaa |
- diff to show the differences in case a test fails
|
|
Than Ngo |
b7bcaa |
|
|
Than Ngo |
b7bcaa |
Each test file can have a number of special comment lines that are extracted by
|
|
Than Ngo |
b7bcaa |
the runtest.pl script and take the form:
|
|
Than Ngo |
b7bcaa |
// <identifier>: 'argument'
|
|
Than Ngo |
b7bcaa |
Where <identifier> can be one of:
|
|
Than Ngo |
b7bcaa |
- objective: 'argument' provides the objective for the test (i.e. its purpose)
|
|
Than Ngo |
b7bcaa |
- check: 'argument' names a file that is generated by doxygen, which should
|
|
Than Ngo |
b7bcaa |
be compared against the reference.
|
|
Than Ngo |
b7bcaa |
- config: 'argument' is a line that is added to the default Doxyfile used to
|
|
Than Ngo |
b7bcaa |
run doxygen on the test file.
|
|
Than Ngo |
b7bcaa |
|
|
Than Ngo |
b7bcaa |
Example to run all tests:
|
|
Than Ngo |
b7bcaa |
python runtest.py
|
|
Than Ngo |
b7bcaa |
|
|
Than Ngo |
b7bcaa |
Example to run a test
|
|
Than Ngo |
b7bcaa |
python runtest.py -id 10
|
|
Than Ngo |
b7bcaa |
|
|
Than Ngo |
b7bcaa |
Example to update the reference files for a test
|
|
Than Ngo |
b7bcaa |
python runtest.py -updateref -id 10
|
|
Than Ngo |
b7bcaa |
|
|
Than Ngo |
b7bcaa |
There is also a CMakeLists.txt, which can be used from the build directory
|
|
Than Ngo |
b7bcaa |
to run all tests by simply invoking 'make tests', to use the specific options use
|
|
Than Ngo |
b7bcaa |
the flag TEST_FLAGS with make
|
|
Than Ngo |
b7bcaa |
e.g. make tests TEST_FLAGS="--id=5 --id=10 --pdf --xhtml"
|