summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.am1
-rw-r--r--defs13
-rw-r--r--t/README21
-rwxr-xr-xt/ac-output-old.tap2
-rw-r--r--t/ax/test-init.sh25
-rwxr-xr-xt/c-demo.sh2
6 files changed, 44 insertions, 20 deletions
diff --git a/Makefile.am b/Makefile.am
index fc37f44dc..a48ab82b0 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -403,6 +403,7 @@ nodist_noinst_SCRIPTS = \
t/wrap/automake-$(APIVERSION)
dist_noinst_DATA = \
+ t/ax/test-init.sh \
t/ax/test-lib.sh \
t/ax/am-test-lib.sh \
t/ax/tap-functions.sh
diff --git a/defs b/defs
index 1ee111632..586181e63 100644
--- a/defs
+++ b/defs
@@ -14,12 +14,9 @@
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+# This file is here for backward-compatibility with the existing
+# tests still unconverted to the use of 'test-init.sh'. It should
+# eventually be removed, once all the tests have been converted.
-set -e
-
-# Source the actual code for test initialization and setup.
-. test-lib.sh
-. am-test-lib.sh
-
-# Run that setup, and return control to the test script sourcing us.
-am_test_setup
+. test-init.sh
diff --git a/t/README b/t/README
index 06f087f77..02cb3a5a9 100644
--- a/t/README
+++ b/t/README
@@ -142,8 +142,8 @@ Writing test cases
tools which can be taken for granted because they're listed in the
GNU Coding Standards (for example, 'gzip').
-* Include ./defs in every test script (see existing tests for examples
- of how to do this).
+* Include 'test-init.sh' in every test script (see existing tests for
+ examples of how to do this).
* Use the 'skip_' function to skip tests, with a meaningful message if
possible. Where convenient, use the 'warn_' function to print generic
@@ -162,7 +162,7 @@ Writing test cases
parallel one. For those tests that are *not* meant to work with the
parallel testsuite harness at all (these should be very very few),
set the shell variable 'am_serial_tests' to "yes" before including
- ./defs.
+ test-init.sh.
* Some tests in the Automake testsuite are auto-generated; those tests
might have custom extensions, but their basename (that is, with such
@@ -173,14 +173,15 @@ Writing test cases
to be confused with auto-generated tests; for example, 'u-v-w.sh'
or 'option-w0.tap' are *not* valid name for hand-written tests.
-* ./defs brings in some commonly required files, and sets a skeleton
- configure.ac. If possible, append to this file. In some cases
- you'll have to overwrite it, but this should be the exception. Note
- that configure.ac registers Makefile.in but do not output anything by
+* test-init.sh brings in some commonly required files, and sets a skeleton
+ configure.ac. If possible, append to this file. In some cases you'll
+ have to overwrite it, but this should be the exception. Note that
+ configure.ac registers Makefile.in but do not output anything by
default. If you need ./configure to create Makefile, append AC_OUTPUT
- to configure.ac. In case you don't want ./defs to pre-populate your
- test directory (which is a rare occurrence), set the 'am_create_testdir'
- shell variable to "empty" before sourcing ./defs.
+ to configure.ac. In case you don't want your test directory to be
+ pre-populate by test-init.sh (this should be a rare occurrence), set
+ the 'am_create_testdir' shell variable to "empty" before sourcing
+ test-init.sh.
* By default, the testcases are run with the errexit shell flag on,
to make it easier to catch failures you might not have thought of.
diff --git a/t/ac-output-old.tap b/t/ac-output-old.tap
index be7e34976..e45fb5f28 100755
--- a/t/ac-output-old.tap
+++ b/t/ac-output-old.tap
@@ -18,7 +18,7 @@
# line breaking in the use of AC_OUTPUT. Synthesised by a bunch
# of older tests (referenced below).
-. ./defs || exit 1
+. test-init.sh
plan_ 22
diff --git a/t/ax/test-init.sh b/t/ax/test-init.sh
new file mode 100644
index 000000000..1ee111632
--- /dev/null
+++ b/t/ax/test-init.sh
@@ -0,0 +1,25 @@
+# -*- shell-script -*-
+#
+# Copyright (C) 1996-2012 Free Software Foundation, Inc.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+set -e
+
+# Source the actual code for test initialization and setup.
+. test-lib.sh
+. am-test-lib.sh
+
+# Run that setup, and return control to the test script sourcing us.
+am_test_setup
diff --git a/t/c-demo.sh b/t/c-demo.sh
index 2f51cf7b9..b0d1c4720 100755
--- a/t/c-demo.sh
+++ b/t/c-demo.sh
@@ -19,7 +19,7 @@
required=cc
am_create_testdir=empty
-. ./defs || exit 1
+. test-init.sh
cat > configure.ac << 'END'
AC_INIT([GNU C Demo], [22.3.2], [bug-automake@gnu.org])