2010-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+ check-interactive and check-noninteractive for both testsuites.
+ * Makefile.am (COMMON_TESTS, TESTS): Split into ...
+ (NONINTERACTIVE_TESTS, INTERACTIVE_TESTS): ... these new
+ variables.
+ (check-interactive-new): Rename from check-interactive.
+ (check-noninteractive-new): Rename from check-noninteractive.
+ (check-interactive-old, check-noninteractive-old): New targets.
+ (check-interactive, check-noninteractive): Depend on the
+ respective targets for the old and the new test suites.
+ * doc/libtool.texi (Test descriptions): Simplify description
+ about check-interactive and check-noninteractive. Add index
+ entries.
+
Adjust docs for renaming and for parallel-tests.
* README: Update example TESTS setting.
* README.alpha: Likewise.
$(TESTS_ENVIRONMENT) $(INSTALLCHECK_ENVIRONMENT) $(TESTSUITEFLAGS) \
AUTOTEST_PATH="$(exec_prefix)/bin"
+check-noninteractive-old:
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS TESTS='$(NONINTERACTIVE_TESTS)'
+check-interactive-old:
+ $(MAKE) $(AM_MAKEFLAGS) check-TESTS TESTS='$(INTERACTIVE_TESTS)'
+
# Run only noninteractive parts of the new testsuite.
-check-noninteractive: $(testsuite_deps_uninstalled)
+check-noninteractive-new: $(testsuite_deps_uninstalled)
$(CD_TESTDIR); \
CONFIG_SHELL="$(SHELL)" $(SHELL) $$abs_srcdir/$(TESTSUITE) \
$(TESTS_ENVIRONMENT) $(BUILDCHECK_ENVIRONMENT) \
$(TESTSUITEFLAGS)
# Run only interactive parts of the new testsuite.
-check-interactive: $(testsuite_deps_uninstalled)
+check-interactive-new: $(testsuite_deps_uninstalled)
$(CD_TESTDIR); \
CONFIG_SHELL="$(SHELL)" $(SHELL) $$abs_srcdir/$(TESTSUITE) \
$(TESTS_ENVIRONMENT) $(BUILDCHECK_ENVIRONMENT) \
-k interactive -k recursive INNER_TESTSUITEFLAGS=",interactive" \
$(TESTSUITEFLAGS)
+check-interactive: check-interactive-old check-interactive-new
+check-noninteractive: check-noninteractive-old check-noninteractive-new
+
# We need to remove any file droppings left behind by testsuite
clean-local: clean-local-legacy
-$(CD_TESTDIR); \
tests/mdemo-shared-unst.test \
tests/cdemo-undef.test \
tests/cdemo-undef-make.test \
- tests/cdemo-undef-exec.test \
+ tests/cdemo-undef-exec.test
+
+# Actually, only demo-relink and depdemo-relink require interaction,
+# but they depend on the other tests being run beforehand.
+INTERACTIVE_TESTS = \
tests/demo-shared.test \
tests/demo-shared-make.test \
tests/demo-shared-exec.test \
tests/pdemo-make.log: tests/pdemo-conf.log
-TESTS = $(COMMON_TESTS)
+NONINTERACTIVE_TESTS = $(COMMON_TESTS)
if HAVE_CXX
-TESTS += $(CXX_TESTS)
+NONINTERACTIVE_TESTS += $(CXX_TESTS)
endif
if HAVE_F77
-TESTS += $(F77_TESTS)
+# f77demo-static-exec.test might be interactive on MSYS.
+INTERACTIVE_TESTS += $(F77_TESTS)
endif
if HAVE_FC
-TESTS += $(FC_TESTS)
+NONINTERACTIVE_TESTS += $(FC_TESTS)
endif
+TESTS = $(NONINTERACTIVE_TESTS) $(INTERACTIVE_TESTS)
EXTRA_DIST += $(srcdir)/tests/defs.in tests/defs.m4sh \
- $(COMMON_TESTS) $(CXX_TESTS) $(F77_TESTS) $(FC_TESTS)
+ $(COMMON_TESTS) $(CXX_TESTS) $(F77_TESTS) $(FC_TESTS) \
+ $(INTERACTIVE_TESTS)
DIST_SUBDIRS += $(CONF_SUBDIRS)
# The defs script shouldn't be recreated whenever the Makefile is
while the test groups they invoke may do so.
@end table
-For example, in order to avoid any interactive test groups, you could
-use this:
-
-@smallexample
-make check-local \
- TESTSUITEFLAGS='-k !interactive INNER_TESTSUITEFLAGS=",!interactive"'
-@end smallexample
-
-@noindent
-while to run only those test groups, you would use this:
-
-@smallexample
-make check-local \
- TESTSUITEFLAGS='-k interactive -k recursive INNER_TESTSUITEFLAGS=,interactive'
-@end smallexample
-
-@noindent
-but the convenience targets @samp{check-interactive} and
-@samp{check-noninteractive} avoid needing to remember these complex
-commands, in addition to also disabling interactive tests in the old
-test suite.
+@cindex @samp{check-interactive}
+@cindex @samp{check-noninteractive}
+There is a convenience target @samp{check-noninteractive} that runs
+all tests from both test suites that do not cause user interaction on
+Windows. Conversely, the target @samp{check-interactive} runs the
+complement of tests and might require closing popup windows about DLL
+load errors on Windows.
@node When tests fail