Hash :
9b967c28
Author :
Date :
2011-08-04T11:08:24
testsuite: yet more use of TAP, and related extensions * tests/defs (show_): New function, display the contents of one or more files on stdout, with bells & whistles (both for cosmetic and practical reasons, the latter aimed at avoiding spurious TAP diagnostic). (AUTOMAKE_run): Extend and adapt to make it compatible with TAP based tests. Since we are at it, make its implementation more namespace-safe, and improve its command-line interface. (AUTOMAKE_fails): Adapt to the new command-line interface of `AUTOMAKE_run'. * tests/add-missing.test: Renamed ... * tests/add-missing.tap: ... to this, and converted to the use of the TAP protocol, and of the new `show_' function. * tests/automake.test: Renamed ... * tests/automake-cmdline.tap: ... to this, and converted to the use of the TAP protocol. * tests/getopt.test: Adapt to the new command-line interface of `AUTOMAKE_run'. * tests/cond44.test: Likewise. * tests/cond45.test: Likewise. * tests/configure.test: Likewise. * tests/license2.test: Likewise. * tests/parallel-am.test: Likewise. * tests/parallel-am3.test: Likewise. * tests/tags2.test: Likewise. * tests/werror3.test: Likewise. * tests/werror4.test: Likewise. * tests/amopts-variable-expansion.test: Likewise. * tests/warnings-win-over-strictness.test: Likewise. * tests/Makefile.am (TESTS): Update. (TAP_LOG_DRIVER_FLAGS): Add `--merge', so that TAP diagnostic is reported in the testsuite progress output.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
#! /bin/sh
# Copyright (C) 2010, 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/>.
# -Werror and local -Werror settings should be flagged for the user.
. ./defs || Exit 1
cat >>configure.in <<\END
AC_CONFIG_FILES([sub/Makefile])
AC_OUTPUT
END
mkdir sub
cat >sub/Makefile.am <<\END
AUTOMAKE_OPTIONS = -Werror
SUB = foo
SUB = bar
END
cat >Makefile.am <<\END
AUTOMAKE_OPTIONS = -Werror
VAR = foo
VAR = bar
END
$ACLOCAL
AUTOMAKE_fails -Wno-error
grep 'VAR multiply defined' stderr
grep 'SUB multiply defined' stderr
test `grep -c 'warnings are treated as errors' stderr` -eq 1
sed '/AUTOMAKE_OPTIONS/d' sub/Makefile.am > t
mv -f t sub/Makefile.am
AUTOMAKE_fails -Wno-error
grep 'VAR multiply defined' stderr
grep 'SUB multiply defined' stderr
test `grep -c 'warnings are treated as errors' stderr` -eq 1
sed '/AUTOMAKE_OPTIONS/d' Makefile.am > t
mv -f t Makefile.am
AUTOMAKE_fails -Werror
grep 'VAR multiply defined' stderr
grep 'SUB multiply defined' stderr
test `grep -c 'warnings are treated as errors' stderr` -eq 1
AUTOMAKE_run -Wno-error
grep 'VAR multiply defined' stderr
grep 'SUB multiply defined' stderr
grep 'warnings are treated as errors' stderr && Exit 1
: