[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] Separate checks on target overriding into multiple test scripts.
From: |
Stefano Lattarini |
Subject: |
[PATCH] Separate checks on target overriding into multiple test scripts. |
Date: |
Thu, 25 Nov 2010 11:45:32 +0100 |
User-agent: |
KMail/1.13.3 (Linux/2.6.30-2-686; KDE/4.4.4; i686; ; ) |
Separate checks on target overriding into multiple test scripts.
* tests/overrid.test: Deleted, it's contents separated into ...
* tests/override-suggest-local.test: ... this new test ...
* tests/override-html.test: ... and this new test ...
* tests/override-conditional-1.test: ... and this new test ...
* tests/override-conditional-2.test: ... and this new test (still
xfailing).
* tests/Makefile.am (TESTS, XFAIL_TESTS): Updated.
---
ChangeLog | 11 ++++++
tests/Makefile.am | 6 +++-
tests/Makefile.in | 6 +++-
tests/overrid.test | 67 -------------------------------------
tests/override-conditional-1.test | 56 +++++++++++++++++++++++++++++++
tests/override-conditional-2.test | 41 ++++++++++++++++++++++
tests/override-html.test | 35 +++++++++++++++++++
tests/override-suggest-local.test | 45 +++++++++++++++++++++++++
8 files changed, 198 insertions(+), 69 deletions(-)
delete mode 100755 tests/overrid.test
create mode 100755 tests/override-conditional-1.test
create mode 100755 tests/override-conditional-2.test
create mode 100755 tests/override-html.test
create mode 100755 tests/override-suggest-local.test
-*-*-*-
It is this comment in the old `overrid.test' that suggested me a
better organization and separation of the checks was in order:
# Conditional overrides ought to be diagnosed, but it can't be done yet.
# See the FIXME in Automake::Rule::define. Once this is fixed, the grep below
# will fail. If you see the failure, it means you fixed Automake. Well done!
# Just strip out the next '&& Exit 1' and this comment.
grep ':.*overrides.*ps' stderr && Exit 1
The patch is based off of maint, and intended for master; OK to apply?
Regards,
Stefano
From ef1a629fa4405e7554543717f50f9b5fe1e9c0f4 Mon Sep 17 00:00:00 2001
From: Stefano Lattarini <address@hidden>
Date: Wed, 24 Nov 2010 15:01:31 +0100
Subject: [PATCH] Separate checks on target overriding into multiple test
scripts.
* tests/overrid.test: Deleted, its contents separated into ...
* tests/override-suggest-local.test: ... this new test ...
* tests/override-html.test: ... and this new test ...
* tests/override-conditional-1.test: ... and this new test ...
* tests/override-conditional-2.test: ... and this new test (still
xfailing).
* tests/Makefile.am (TESTS, XFAIL_TESTS): Updated.
---
ChangeLog | 11 ++++++
tests/Makefile.am | 6 +++-
tests/Makefile.in | 6 +++-
tests/overrid.test | 67 -------------------------------------
tests/override-conditional-1.test | 56 +++++++++++++++++++++++++++++++
tests/override-conditional-2.test | 41 ++++++++++++++++++++++
tests/override-html.test | 35 +++++++++++++++++++
tests/override-suggest-local.test | 45 +++++++++++++++++++++++++
8 files changed, 198 insertions(+), 69 deletions(-)
delete mode 100755 tests/overrid.test
create mode 100755 tests/override-conditional-1.test
create mode 100755 tests/override-conditional-2.test
create mode 100755 tests/override-html.test
create mode 100755 tests/override-suggest-local.test
diff --git a/ChangeLog b/ChangeLog
index ffbeb69..67dddad 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2010-11-25 Stefano Lattarini <address@hidden>
+
+ Separate checks on target overriding into multiple test scripts.
+ * tests/overrid.test: Deleted, its contents separated into ...
+ * tests/override-suggest-local.test: ... this new test ...
+ * tests/override-html.test: ... and this new test ...
+ * tests/override-conditional-1.test: ... and this new test ...
+ * tests/override-conditional-2.test: ... and this new test (still
+ xfailing).
+ * tests/Makefile.am (TESTS, XFAIL_TESTS): Updated.
+
2010-11-21 Stefano Lattarini <address@hidden>
Tests: consistently use "|| Exit 1" after ". ./defs".
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 5f1ab9e..dbed2c1 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -21,6 +21,7 @@ all.test \
auxdir2.test \
cond17.test \
gcj6.test \
+override-conditional-2.test \
txinfo5.test
include $(srcdir)/parallel-tests.am
@@ -542,7 +543,10 @@ output11.test \
output12.test \
output13.test \
output-order.test \
-overrid.test \
+override-conditional-1.test \
+override-conditional-2.test \
+override-html.test \
+override-suggest-local.test \
parallel-am.test \
parallel-am2.test \
parallel-am3.test \
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 140b178..863d9bb 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -277,6 +277,7 @@ all.test \
auxdir2.test \
cond17.test \
gcj6.test \
+override-conditional-2.test \
txinfo5.test
parallel_tests = \
@@ -809,7 +810,10 @@ output11.test \
output12.test \
output13.test \
output-order.test \
-overrid.test \
+override-conditional-1.test \
+override-conditional-2.test \
+override-html.test \
+override-suggest-local.test \
parallel-am.test \
parallel-am2.test \
parallel-am3.test \
diff --git a/tests/overrid.test b/tests/overrid.test
deleted file mode 100755
index df453ca..0000000
--- a/tests/overrid.test
+++ /dev/null
@@ -1,67 +0,0 @@
-#! /bin/sh
-# Copyright (C) 2003, 2004, 2006 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/>.
-
-# Make sure automake -Woverride suggests using TARGET-local instead
-# of TARGET when possible.
-
-. ./defs || Exit 1
-
-set -e
-
-cat >> configure.in << 'END'
-AM_CONDITIONAL([COND], [:])
-END
-
-cat > Makefile.am << 'END'
-install:
- :
-installcheck:
- :
-html:
- :
-clean-am:
- :
-
-if COND
-ps: mine
- :
-endif
-END
-
-$ACLOCAL
-$AUTOMAKE -Wno-override
-AUTOMAKE_fails
-grep ':.*install-local' stderr && Exit 1 # There is no such thing as
install-local
-grep ':.*installcheck-local' stderr
-grep ':.*html-local' stderr
-# Make sure overriding *-am targets suggest using *-local, not *-am.
-grep ':.*clean-am-local' stderr && Exit 1
-grep ':.*clean-local' stderr
-
-# Conditional overrides ought to be diagnosed, but it can't be done yet.
-# See the FIXME in Automake::Rule::define. Once this is fixed, the grep below
-# will fail. If you see the failure, it means you fixed Automake. Well done!
-# Just strip out the next '&& Exit 1' and this comment.
-grep ':.*overrides.*ps' stderr && Exit 1
-
-# Test for another issue. Overriding html: should cause only one
-# html: rule to be output.
-test `grep '^html:' Makefile.in | wc -l` = 1
-
-# ps: should be output in two conditions
-test `grep '[^-]ps:' Makefile.in | wc -l` = 2
-grep '@address@hidden: mine' Makefile.in
-grep '@address@hidden: ps-am' Makefile.in
diff --git a/tests/override-conditional-1.test
b/tests/override-conditional-1.test
new file mode 100755
index 0000000..fe0bbba
--- /dev/null
+++ b/tests/override-conditional-1.test
@@ -0,0 +1,56 @@
+
+#! /bin/sh
+# Copyright (C) 2010 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/>.
+
+# Test for conditionally-defined overrides.
+
+. ./defs || Exit 1
+
+set -e
+
+cat >> configure.in << 'END'
+AM_CONDITIONAL([COND], [test x"$cond" = x"yes"])
+AC_OUTPUT
+END
+
+cat > Makefile.am << 'END'
+foobar:
+ : > $@
+if COND
+ps: foobar
+ :
+endif
+END
+
+$ACLOCAL
+$AUTOMAKE -Wno-override
+
+# "ps:" should be output in two conditions
+test `grep '[^-]ps:' Makefile.in | wc -l` = 2
+grep '@address@hidden: *foobar' Makefile.in
+grep '@address@hidden: *ps-am' Makefile.in
+
+$AUTOCONF
+
+./configure cond=no
+$MAKE ps
+test ! -r foobar
+
+./configure cond=yes
+$MAKE ps
+test -f foobar
+
+:
diff --git a/tests/override-conditional-2.test
b/tests/override-conditional-2.test
new file mode 100755
index 0000000..132b841
--- /dev/null
+++ b/tests/override-conditional-2.test
@@ -0,0 +1,41 @@
+#! /bin/sh
+# Copyright (C) 2010 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/>.
+
+# Test that conditional overrides are diagnosed.
+# This test is still xfailing; see the FIXME in Automake::Rule::define.
+# Once that is fixed, the test should succeed.
+
+. ./defs || Exit 1
+
+set -e
+
+cat >> configure.in << 'END'
+AM_CONDITIONAL([COND], [:])
+END
+
+cat > Makefile.am << 'END'
+if COND
+all:
+ :
+endif
+END
+
+$ACLOCAL
+
+AUTOMAKE_fails
+grep ':.*overrides.*all' stderr
+
+:
diff --git a/tests/override-html.test b/tests/override-html.test
new file mode 100755
index 0000000..baece42
--- /dev/null
+++ b/tests/override-html.test
@@ -0,0 +1,35 @@
+#! /bin/sh
+# Copyright (C) 2010 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/>.
+
+# Test that overriding `html' target causes only one "html:" rule to
+# be output.
+
+. ./defs || Exit 1
+
+set -e
+
+cat > Makefile.am << 'END'
+html:
+ :
+END
+
+$ACLOCAL
+$AUTOMAKE -Wno-override
+
+# Overriding `html' should cause only one "html:" rule to be output.
+test `grep '^html:' Makefile.in | wc -l` = 1
+
+:
diff --git a/tests/override-suggest-local.test
b/tests/override-suggest-local.test
new file mode 100755
index 0000000..851393a
--- /dev/null
+++ b/tests/override-suggest-local.test
@@ -0,0 +1,45 @@
+#! /bin/sh
+# Copyright (C) 2010 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/>.
+
+# Make sure automake -Woverride suggests using TARGET-local instead
+# of TARGET when possible.
+
+. ./defs || Exit 1
+
+set -e
+
+cat > Makefile.am << 'END'
+install:
+ :
+installcheck:
+ :
+html:
+ :
+clean-am:
+ :
+END
+
+$ACLOCAL
+$AUTOMAKE -Wno-override
+AUTOMAKE_fails
+grep ':.*install-local' stderr && Exit 1 # There is no such thing as
install-local
+grep ':.*installcheck-local' stderr
+grep ':.*html-local' stderr
+# Make sure overriding *-am targets suggest using *-local, not *-am.
+grep ':.*clean-am-local' stderr && Exit 1
+grep ':.*clean-local' stderr
+
+:
--
1.7.1
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [PATCH] Separate checks on target overriding into multiple test scripts.,
Stefano Lattarini <=