nihtest.conf —
testing tool configuration file format
nihtest(1) is a testing
tool. It reads a configuration file to get its default settings. The default
path for the file is nihtest.conf in the current
directory; this can be overridden with
nihtest(1)'s
-C flag. This man page describes the format of this
configuration file.
The configuration file consists of multiple sections, which are
started with [section-name]. The supported sections
are settings, environment,
and comparators.
Each section consists of variable assignments in the format name = value, one per line.
Multiple values for the same variable can be specified, one per line, where subsequent lines must be indented with spaces.
In the settings section, the following
variables are recognized:
default-program
= programprogram
directive is found in the test.default-stderr-replace
= pattern replacement ...stderr-replace directives. See
nihtest-case(5) for details on
stderr-replace.default-working-directory
= directoryworking-directory directive is found in the
test.environment-clear
= trueenvironment-clear is set to
true, only variables explicitly set or passed
through are included in the environment passed to the tested program.environment-passthrough
= variable ...environment-unset
= variable ...features-files
= file ...features directive in test cases.keep-sandbox
= when--keep-broken -=
when or --no-cleanup. The
default is never.print-results
= when--quiet or --verbose. The
default is failed.program-directories
= directory ...PATH.sandbox-directories
= directory ...test-input-directories
= directory ...The environment section contains variable
and values that will be added as environment variables when the test program
is run.
The comparators section specifies programs
to use to compare files of certain types. The variable names have the format
got-extension.
expected-extension, the value specifies the command
line to use to compare these files. The command will be run with the two
files as arguments, the file in the sandbox first and the expected last.
The command is expected to exit with code 0 if the two files are
considered equal, any other exit code if not. The command output will be
displayed if verbose test results are enabled (see
print-results above).
For example, with comparators containing
zip.zip = zipcmp -vfile got.zip
expected.zipzipcmp -v got.zip
expected.zipThe comparator-preprocessors section
specifies programs to use to preprocess certain file types for comparison.
The variable names have the format got-extension.
expected-extension, the value specifies the command
line to use to preprocess the file in the sandbox. The command will be run
with the file in the sandbox first as argument. The command's output will be
compared to the expected file.
If the command doesn't exit with code 0, the test will fail.
The copiers section specifies programs to
use to copy certain file types into the sandbox. The variable names have the
format sandbox-extension.
source-extension, the value specifies the command line
to use to copy the file into the sandbox. The command will be run with the
two files as arguments, the source file first and the file in the sandbox
last.
If the command doesn't exit with code 0, the test will fail.
The optional suite can be used to define a
suite of tests to be run with the --all command line
option.
tests
= teststest-input-directories.expected-failing-tests
= teststests.[settings]
default-program = program_to_test
program-directories = bin
tests
[environment]
LC_ALL=en_US.UTF-8
[comparators]
zip.zip = zipcmp -v
[suite]
tests = *.test
expected_failing_tests = *-broken.test
completely_broken_test.test