Test modules can be marked with some special status attributes. When a
test module has such an attribute, gnulib-tool --import
will not
include it by default.
The supported status attributes are:
c++-test
longrunning-test
privileged-test
unportable-test
gnulib-tool --import
will not include tests marked with these
attributes by default. When gnulib-tool
is invoked with one
of the options --with-c++-tests
, --with-longrunning-tests
,
--with-privileged-tests
, --with-unportable-tests
, it
will include tests despite the corresponding special status attribute.
When gnulib-tool
receives the option --with-all-tests
,
it will include all tests regardless of their status attributes.
gnulib-tool --create-testdir
and
gnulib-tool --create-megatestdir
by default include all tests of
modules specified on the command line, regardless of their status
attributes. Tests of modules occurring as dependencies are not included
by default if they have one of these status attributes. The options
--with-c++-tests
, --with-longrunning-tests
,
--with-privileged-tests
, --with-unportable-tests
are
recognized here as well. Additionally, gnulib-tool
also
understands the options --without-c++-tests
,
--without-longrunning-tests
, --without-privileged-tests
,
--without-unportable-tests
.
In order to mark a module with a status attribute, you need to add it to the module description, like this:
Status: longrunning-test
If only a part of a test deserves a particular status attribute, you
can split the module into a primary and a secondary test module,
say foo-tests
and foo-extra-tests
. Then add a dependency
from foo-tests
to foo-extra-tests
, and mark the
foo-extra-tests
with the particular status attribute.