summaryrefslogtreecommitdiff
path: root/t
diff options
context:
space:
mode:
authorStefano Lattarini <stefano.lattarini@gmail.com>2012-07-26 11:04:31 +0200
committerStefano Lattarini <stefano.lattarini@gmail.com>2012-07-26 14:11:40 +0200
commitdb188c29be11177499d4c96bd2b8327e884f7d8c (patch)
treed039becaaf1f5b84bd2b16ba89c9e7865da1b3a1 /t
parent253e3eb74d8dabe3eb5c9b2b09dab00e319a6caf (diff)
downloadautomake-db188c29be11177499d4c96bd2b8327e884f7d8c.tar.gz
runtest: sanitize test environment
* runtest.in: Here, similarly to what is done by AM_TESTS_ENVIRONMENT in Makefile.am, unset variables that should be under the complete control of the test framework, and that could create havoc if inherited from the environment. This remove the need to check against possible environment "pollution" ... * t/ax/test-defs.in: ... in here. * Makefile.am (AM_TESTS_ENVIRONMENT): Add a comment about the need of synchronization with 'runtest.in'. * t/self-check-env-sanitize.tap: Remove as obsolete. * t/list-of-tests.mk: Adjust. Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
Diffstat (limited to 't')
-rw-r--r--t/ax/test-defs.in21
-rw-r--r--t/list-of-tests.mk1
-rwxr-xr-xt/self-check-env-sanitize.tap56
3 files changed, 0 insertions, 78 deletions
diff --git a/t/ax/test-defs.in b/t/ax/test-defs.in
index d0063cfde..56b45e1ca 100644
--- a/t/ax/test-defs.in
+++ b/t/ax/test-defs.in
@@ -22,27 +22,6 @@
# - Multiple inclusions of this file should be idempotent.
# - This code has to be 'set -e' clean.
-# Check that the environment is properly sanitized.
-# Having variables exported to the empty string is OK, since our code
-# treats such variables as if they were unset.
-for var in \
- required \
- am_test_protocol \
- am_serial_tests \
- am_create_testdir \
- am_tap_implementation \
- am_test_prefer_config_shell \
- am_original_AUTOMAKE \
- am_original_ACLOCAL \
-; do
- if eval "test x\"\$$var\" != x" && env | grep "^$var=" >/dev/null; then
- echo "$me: variable '$var' is set in the environment:" \
- "this is unsafe" >&2
- exit 99
- fi
-done
-unset var
-
# See whether the current test script is expected to use TAP or not.
# Use a sensible default, while allowing the scripts to override this
# check.
diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk
index 10f1e9482..d193adb47 100644
--- a/t/list-of-tests.mk
+++ b/t/list-of-tests.mk
@@ -954,7 +954,6 @@ t/repeated-options.sh \
t/rulepat.sh \
t/self-check-configure-help.sh \
t/self-check-dir.tap \
-t/self-check-env-sanitize.tap \
t/self-check-exit.tap \
t/self-check-explicit-skips.sh \
t/self-check-is_newest.tap \
diff --git a/t/self-check-env-sanitize.tap b/t/self-check-env-sanitize.tap
deleted file mode 100755
index 4896ce2a2..000000000
--- a/t/self-check-env-sanitize.tap
+++ /dev/null
@@ -1,56 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2011-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/>.
-
-# Sanity check for the automake testsuite.
-# Make sure that the testsuite initialization code complains when
-# some testsuite-influential variables are set in the environment.
-
-am_create_testdir=no
-. ./defs || exit 1
-
-set -x
-exec 5>&1
-
-plan_ 16 # Two times the number of variable names in $vars.
-
-vars='
- required
- am_serial_tests
- am_test_protocol
- am_create_testdir
- am_tap_implementation
- am_test_prefer_config_shell
- am_original_AUTOMAKE
- am_original_ACLOCAL
-'
-
-do_run ()
-{
- env "$1=foo" $AM_TEST_RUNNER_SHELL -c '. ./defs' foo.test
-}
-
-do_grep ()
-{
- env "$1=foo" $AM_TEST_RUNNER_SHELL -c '. ./defs' foo.test 2>&1 1>&5 \
- | grep "foo\.test:.* variable '$1'.* in the environment.*unsafe"
-}
-
-for var in $vars; do
- command_ok_ "$var [err status]" not do_run $var
- command_ok_ "$var [err message]" do_grep $var
-done
-
-: