[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
testsuite
Scripts For putting Autotest into movement, you need some configuration and Makefile machinery. We recommend, at least if your package uses deep or shallow hierarchies, that you use `tests/' as the name of the directory holding all your tests and their `Makefile'. Here is a check list of things to do.
PACKAGE
and VERSION
.
This is already guaranteed if you are using Automake through the
AM_INIT_AUTOMAKE
call, but with straight Autoconf, it means that
you should at least use AC_SUBST
for these two variables, after
having initialized them to proper values.
AT_CONFIG
macro from within file `configure.ac'.
This macro accepts one argument, which is the directory, relative to the
test directory, where the executables are prepared.
AC_CONFIG_FILES
command includes substitution for
`tests/atconfig' and also, as appropriate, `tests/atlocal'.
With Automake, here is a minimal example about how to link `make check' with a validation suite.
EXTRA_DIST = testsuite.at testsuite TESTSUITE = $(srcdir)/testsuite check-local: atconfig atlocal $(TESTSUITE) $(SHELL) $(TESTSUITE) AUTOM4TE = autom4te AUTOTEST = $(AUTOM4TE) --language=autotest $(TESTSUITE): $(srcdir)/testsuite.at $(AUTOTEST) -I $(srcdir) $.at -o $.tmp mv $.tmp $ |
You might want to list explicitly the dependencies, i.e., the list of the files `testsuite.at' includes.
With strict Autoconf, you might need to add lines inspired from the following:
subdir = tests atconfig: $(top_builddir)/config.status cd $(top_builddir) && \ $(SHELL) ./config.status $(subdir)/$ atlocal: $(srcdir)/atlocal.in $(top_builddir)/config.status cd $(top_builddir) && \ $(SHELL) ./config.status $(subdir)/$ |
and manage to have `atconfig.in' and $(EXTRA_DIST)
distributed.