Next: , Previous: Running gnattest, Up: Creating Unit Tests Using gnattest


26.2 Switches for gnattest

--harness-only
When this option is given, gnattest creates a harness for all sources, treating them as test packages.
--additional-tests=projname
Sources described in projname are considered potential additional manual tests to be added to the test suite.
-r
Recursively consider all sources from all projects.
-Xname=value
Indicate that external variable name has the value value.
-q
Suppresses noncritical output messages.
-v
Verbose mode: generates version information.
--validate-type-extensions
Enables substitution check: run all tests from all parents in order to check substitutability.
--skeleton-default=val
Specifies the default behavior of generated skeletons. val can be either "fail" or "pass", "fail" being the default.
--tests-root=dirname
The directory hierarchy of tested sources is recreated in the dirname directory, and test packages are placed in corresponding directories. If the dirname is a relative path, it is considered relative to the object directory of the project file. When all sources from all projects are taken recursively from all projects, directory hierarchies of tested sources are recreated for each project in their object directories and test packages are placed accordingly.
--subdir=dirname
Test packages are placed in subdirectories.
--tests-dir=dirname
All test packages are placed in the dirname directory. If the dirname is a relative path, it is considered relative to the object directory of the project file. When all sources from all projects are taken recursively from all projects, dirname directories are created for each project in their object directories and test packages are placed accordingly.
--harness-dir=dirname
specifies the directory that will hold the harness packages and project file for the test driver. If the dirname is a relative path, it is considered relative to the object directory of the project file.
--separates
Bodies of all test routines are generated as separates. Note that this mode is kept for compatibility reasons only and it is not advised to use it due to possible problems with hash in names of test skeletons when using an inconsistent casing. Separate test skeletons can be incorporated to monolith test package with improved hash being used by using --transition switch.
--transition
This allows transition from separate test routines to monolith test packages. All matching test routines are overwritten with contents of corresponding separates. Note that if separate test routines had any manually added with clauses they will be moved to the test package body as is and have to be moved by hand.

--tests_root, --subdir and --tests-dir switches are mutually exclusive.