diff options
Diffstat (limited to 'util/texi2dvi.test')
-rwxr-xr-x | util/texi2dvi.test | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/util/texi2dvi.test b/util/texi2dvi.test new file mode 100755 index 0000000..2f3f075 --- /dev/null +++ b/util/texi2dvi.test @@ -0,0 +1,84 @@ +#! /bin/sh +# Copyright (C) 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# +# This file is part of GNU Texinfo. +# +# GNU Texinfo 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 3 of the License, +# or (at your option) any later version. +# +# GNU Texinfo 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/>. + +required='tex' + +. ./defs || exit 1 + +set -e + +# one_run ARGS -- FILES +# --------------------- +# Run texi2dvi with ARGS, expect the FILES to be left. Remove them. +one_run () +{ + # Testing the local build mode. + # Use @foo to check that -t works properly. + echo "@foo" | create_input_texi + TEXI2DVI_pass $(optionset_get 1 "$@") \ + -t '@macro foo' \ + -t 'Foo' \ + -t '@end macro' \ + input.texi + # There should only be the expected FILES and the input file. + assert_and_remove_files $(optionset_get 2 "$@") input.texi +} + +one_run --batch \ + -- \ + input.aux input.cp input.dvi input.fn input.ky input.log \ + input.pg input.tp input.vr + + +one_run --batch -o output.dvi \ + -- \ + input.aux input.cp input.fn input.ky input.log \ + input.pg input.tp input.vr output.dvi + + +# Testing the clean build mode. +for mode in --clean --build=clean +do + # There should only be the DVI and the TEXI file. + one_run $mode --batch -- input.dvi + + # There should only be the DVI and the TEXI file. + one_run $mode --batch -o output.dvi -- output.dvi +done + + +# Testing the tidy build mode. +one_run --build=tidy --batch -o output.dvi \ + -- \ + output.dvi output.t2d + + +# mostly-clean should remove auxiliary files, but not the expected +# output. +touch output.dvi +one_run --build=tidy --batch -o output.dvi --mostly-clean \ + -- \ + output.dvi + + +# There should only be the DVI and the TEXI file. +create_input_texi </dev/null +cp input.texi input2.texi +one_run --clean --batch input.texi input2.texi \ + -- \ + input2.dvi input2.texi input.dvi |