diff options
author | Stefano Lattarini <stefano.lattarini@gmail.com> | 2013-06-19 12:20:57 +0200 |
---|---|---|
committer | Stefano Lattarini <stefano.lattarini@gmail.com> | 2013-06-19 12:20:57 +0200 |
commit | f1d4efdd05ffd439110eae36477bab516361f7d6 (patch) | |
tree | 405554daf8b695f0ed531351171147b2d369c7b4 | |
parent | 9dd6d5f97d83bedcb33817ac2b64a0424d567385 (diff) | |
download | automake-f1d4efdd05ffd439110eae36477bab516361f7d6.tar.gz automake-f1d4efdd05ffd439110eae36477bab516361f7d6.tar.bz2 automake-f1d4efdd05ffd439110eae36477bab516361f7d6.zip |
coverage: new test on Texinfo @include support
Backported from the Automake-NG testsuite.
* t/txinfo-include.sh: New test.
* t/list-of-tests.mk: Add it.
Signed-off-by: Stefano Lattarini <stefano.lattarini@gmail.com>
-rw-r--r-- | t/list-of-tests.mk | 1 | ||||
-rw-r--r-- | t/txinfo-include.sh | 164 |
2 files changed, 165 insertions, 0 deletions
diff --git a/t/list-of-tests.mk b/t/list-of-tests.mk index 1aebce50d..9069b08bf 100644 --- a/t/list-of-tests.mk +++ b/t/list-of-tests.mk @@ -1191,6 +1191,7 @@ t/txinfo-builddir.sh \ t/txinfo-clean.sh \ t/txinfo-dvi-recurs.sh \ t/txinfo-info-in-srcdir.sh \ +t/txinfo-include.sh \ t/txinfo-makeinfo-error-no-clobber.sh \ t/txinfo-many-output-formats.sh \ t/txinfo-many-output-formats-vpath.sh \ diff --git a/t/txinfo-include.sh b/t/txinfo-include.sh new file mode 100644 index 000000000..5bb8963c5 --- /dev/null +++ b/t/txinfo-include.sh @@ -0,0 +1,164 @@ +#! /bin/sh +# Copyright (C) 2012-2013 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/>. + +# Texinfo input files using @include directives. Check both in-tree +# and VPATH builds, and both top-level and subdir input. + +required='makeinfo tex texi2dvi' +. test-init.sh + +echo AC_OUTPUT >> configure.ac + +cat > Makefile.am << 'END' +info_TEXINFOS = main.texi sub/more.texi +main_TEXINFOS = one.texi two.texi three.texi +sub_more_TEXINFOS = sub/desc.texi sub/hist.texi +END + +cat > main.texi << 'END' +\input texinfo +@setfilename main.info +@settitle main +@ifnottex +@node Top +@top GNU dummy. +@menu +* one:: Chapter one +* two:: Chapter two +* three:: Chapter three +@end menu +@end ifnottex +@include one.texi +@include two.texi +@include three.texi +@bye +END + +cat > one.texi << 'END' +@node one +@chapter Chapter one +Foo bar, baz. +END + +cat > two.texi << 'END' +@node two +@chapter Chapter two +Blah Blah Blah. +END + +cat > three.texi << 'END' +@node three +@chapter Chapter two +GNU's Not Unix. +END + +mkdir sub + +cat > sub/more.texi << 'END' +\input texinfo +@setfilename more.info +@settitle main +@ifnottex +@node Top +@top GNU more. +@menu +* desc:: Description of this program +* hist:: History of this program +@end menu +@end ifnottex +@include desc.texi +@include hist.texi +@bye +END + +cat > sub/desc.texi << 'END' +@node desc +@chapter Description of this program +It does something, really. +END + +cat > sub/hist.texi << 'END' +@node hist +@chapter History of this program +It was written somehow. +END + +cat > exp << 'END' +./main.info +./sub/more.info +END + +check_info_contents () +{ + srcdir=${1-.} + $FGREP "Foo bar, baz." $srcdir/main.info + $FGREP "Blah Blah Blah." $srcdir/main.info + $FGREP "GNU's Not Unix." $srcdir/main.info + $FGREP 'It does something, really.' $srcdir/sub/more.info + $FGREP 'It was written somehow.' $srcdir/sub/more.info +} + +get_info_names () +{ + find ${1-.} -type f -name '*.info' | LC_ALL=C sort > got +} + +check_expected () +{ + cat exp + cat got + diff exp got +} + +$ACLOCAL +$AUTOMAKE --add-missing +$AUTOCONF + +./configure + +$MAKE info +get_info_names +check_expected + +check_info_contents + +$MAKE dvi +test -f main.dvi +test -f sub/more.dvi + +$MAKE maintainer-clean +test ! -f main.dvi +test ! -f sub/more.dvi +test ! -f main.info +test ! -f sub/more.info + +mkdir build +cd build +../configure +$MAKE all dvi + +get_info_names .. +sed 's|^\./|../|' ../exp > exp +check_expected + +test -f main.dvi +test -f sub/more.dvi + +check_info_contents .. + +$MAKE distcheck + +: |