On Tuesday 21 June 2011, Stefano Lattarini wrote: > On Monday 20 June 2011, Stefano Lattarini wrote: > > > > [SNIP] > > > > To quote from the added NEWS entry: > > > > - The parallel-tests driver is now implemented (partly at least) with > > the help of automake-provided auxiliary scripts (e.g., `test-driver'), > > instead of relying entirely on code in the generated Makefile.in. > > This has two noteworthy implications. The first one is that projects > > using the `parallel-tests' option should now either run automake with > > the `--add-missing' option, or manually copy the `test-driver' script > > into their tree. The second, and more important, implication is that > > now shell functions and non-environmental shell variables defined in > > TESTS_ENVIRONMENT are not anymore available in LOG_COMPILER and > > <ext>_LOG_COMPILER. > > > Well, no, this is not correct. The real important "second implication" > here is that one cannot put test runners in TESTS_ENVIRONMENT anymore (and > this is what had broken coreutils' testsuite), nor use shell functions or > generic shell code as LOG_COMPILER. But stuff set in TESTS_ENVIRONMENT, > even if not exported, can still be used in LOG_COMPILER and LOG_FLAGS. > This is a nice feature to have indeed, and one we shouldn't break; I'll > thus fix the NEWS entry accordingly, and add the attached test to master, > to ensure that we don't break that feature. > Attached is the patch I plan to apply to master. OK?
Regards, Stefano
From 1e005df1553b0211a1a8c2ef0e6d62eb41ce0ba5 Mon Sep 17 00:00:00 2001 Message-Id: <1e005df1553b0211a1a8c2ef0e6d62eb41ce0ba5.1308683662.git.stefano.lattar...@gmail.com> In-Reply-To: <42a9c4db8dc4624dc2b59d1f9a3efb45e359c12e.1308683662.git.stefano.lattar...@gmail.com> References: <42a9c4db8dc4624dc2b59d1f9a3efb45e359c12e.1308683662.git.stefano.lattar...@gmail.com> From: Stefano Lattarini <stefano.lattar...@gmail.com> Date: Tue, 21 Jun 2011 13:17:50 +0200 Subject: [PATCH 2/2] tests: interactions between TESTS_ENVIRONMENT and LOG_COMPILER * tests/tests-environment-and-log-compiler.test: New test, checking that we can use variables and functions set by TESTS_ENVIRONMENT and AM_TESTS_ENVIRONMENT in LOG_COMPILER and LOG_FLAGS (for tests both with and without registered extensions). * tests/Makefile.am (TESTS): Update. --- ChangeLog | 10 +++ tests/Makefile.am | 1 + tests/Makefile.in | 1 + tests/tests-environment-and-log-compiler.test | 75 +++++++++++++++++++++++++ 4 files changed, 87 insertions(+), 0 deletions(-) create mode 100755 tests/tests-environment-and-log-compiler.test diff --git a/ChangeLog b/ChangeLog index cb1c290..50b8633 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2011-06-21 Stefano Lattarini <stefano.lattar...@gmail.com> + + tests: interactions between TESTS_ENVIRONMENT and LOG_COMPILER + * tests/tests-environment-and-log-compiler.test: New test, + checking that we can use variables and functions set by + TESTS_ENVIRONMENT and AM_TESTS_ENVIRONMENT in LOG_COMPILER + and LOG_FLAGS (for tests both with and without registered + extensions). + * tests/Makefile.am (TESTS): Update. + 2011-06-20 Stefano Lattarini <stefano.lattar...@gmail.com> maintcheck: avoid few spurious failures diff --git a/tests/Makefile.am b/tests/Makefile.am index 0ac3123..6060a62 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -960,6 +960,7 @@ tar3.test \ target-cflags.test \ targetclash.test \ tests-environment-fd-redirect.test \ +tests-environment-and-log-compiler.test \ txinfo.test \ txinfo2.test \ txinfo3.test \ diff --git a/tests/Makefile.in b/tests/Makefile.in index 46138b5..3b7a63e 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -1233,6 +1233,7 @@ tar3.test \ target-cflags.test \ targetclash.test \ tests-environment-fd-redirect.test \ +tests-environment-and-log-compiler.test \ txinfo.test \ txinfo2.test \ txinfo3.test \ diff --git a/tests/tests-environment-and-log-compiler.test b/tests/tests-environment-and-log-compiler.test new file mode 100755 index 0000000..3753bb9 --- /dev/null +++ b/tests/tests-environment-and-log-compiler.test @@ -0,0 +1,75 @@ +#! /bin/sh +# Copyright (C) 2011 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/>. + +# parallel-tests: check that we can use variables and functions set +# by TESTS_ENVIRONMENT and AM_TESTS_ENVIRONMENT in LOG_COMPILER and +# LOG_FLAGS (for tests both with and without registered extensions). + +parallel_tests=yes +. ./defs || Exit 1 + +cat >> configure.in << 'END' +AC_OUTPUT +END + +unset v0 v1 v2 v3 v4 || : + +cat > Makefile.am << 'END' +TESTS_ENVIRONMENT = am__f3 () { echo 3; }; v0='$(srcdir)' v1=1; :; +AM_TESTS_ENVIRONMENT = v2=2; v4=4 && am__f5 () { echo 5; }; :; + +LOG_COMPILER = $$v0/log-compiler $$v1 +AM_LOG_FLAGS = $$v2 `am__f3` +LOG_FLAGS = $$v4 `am__f5` + +TEST_LOG_COMPILER = $$v0/test-log-compiler $$v2 +AM_TEST_LOG_FLAGS = `am__f5` $$v1 +TEST_LOG_FLAGS = $$v4 `am__f3` + +EXTRA_DIST = log-compiler test-log-compiler + +TESTS = a b.test +$(TESTS): +END + +cat > log-compiler << 'END' +#! /bin/sh +echo "$0: $*" +test x"$1$2$3$4$5" = x"12345" +END + +cat > test-log-compiler << 'END' +#! /bin/sh +echo "$0: $*" +test x"$1$2$3$4$5" = x"25143" +END + +chmod a+x test-log-compiler log-compiler + +$ACLOCAL +$AUTOCONF +$AUTOMAKE -a + +./configure + +$MAKE -n check # For debugging. +VERBOSE=yes $MAKE check +cat a.log +cat b.log + +VERBOSE=yes $MAKE distcheck + +: -- 1.7.2.3