From 4035757aa66a5534ccc30eb097fb0845556d56d4 Mon Sep 17 00:00:00 2001 From: Hironobu Yamashita Date: Mon, 8 Oct 2018 05:17:16 +0000 Subject: dviout-util: fix bugs, more comprehensive tests git-svn-id: svn://tug.org/texlive/trunk@48857 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/dviout-util/dvispc.test | 63 +++++++++++++++++++++++-------- 1 file changed, 48 insertions(+), 15 deletions(-) (limited to 'Build/source/texk/dviout-util/dvispc.test') diff --git a/Build/source/texk/dviout-util/dvispc.test b/Build/source/texk/dviout-util/dvispc.test index 452962ead14..c176542518c 100755 --- a/Build/source/texk/dviout-util/dvispc.test +++ b/Build/source/texk/dviout-util/dvispc.test @@ -5,41 +5,74 @@ testdir=$srcdir/tests +# pre-generated test results in the repository are stored in LF +# but the output might be written in CRLF on some platform. +# if 'diff --strip-trailing-cr' is available, exploit it. +# (useful for tests on win32 binaries run on MSYS shell) +diffoptCRLF=--strip-trailing-cr +diff --strip-trailing-cr $testdir/test.spc $testdir/test.spc \ + && diffoptCRLF=--strip-trailing-cr || echo + + +## EXE2SPECIAL + ./dvispc -s $testdir/test.dvi xtest.spc && \ - diff $testdir/test.spc xtest.spc && echo || exit 1 + diff $diffoptCRLF $testdir/test.spc xtest.spc && echo || exit 1 ./dvispc -s $testdir/test.dvi > x1test.spc && \ - diff $testdir/test.spc x1test.spc && echo || exit 2 + diff $diffoptCRLF $testdir/test.spc x1test.spc && echo || exit 2 ## invalid usage #./dvispc -s < $testdir/test.dvi x2test.spc && \ -# diff $testdir/test.spc x2test.spc && echo || exit 3 +# diff $testdir/test.spc x2test.spc && echo || exit 0 ## stdin is a DVI, random access may not be supported, no test #./dvispc -s < $testdir/test.dvi > x3test.spc && \ -# diff $testdir/test.spc x3test.spc && echo || exit 4 +# diff $testdir/test.spc x3test.spc && echo || exit 3 + + +## EXE2TEXT + EXE2DVI + +./dvispc -a $testdir/test.dvi xtesta.txt && \ + ./dvispc -x xtesta.txt xtestax.dvi && \ + cmp $testdir/test.dvi xtestax.dvi && echo || exit 4 + +./dvispc -a $testdir/test.dvi > x1testa.txt && \ + ./dvispc -x < x1testa.txt > x1testax.dvi && \ + cmp $testdir/test.dvi x1testax.dvi && echo || exit 5 + + +## EXE2INDEP + +./dvispc -c $testdir/oldindep.dvi xoldindepout.dvi && \ + cmp $testdir/oldindepout.dvi xoldindepout.dvi && echo || exit 6 + +./dvispc -c $testdir/oldindep.dvi > x1oldindepout.dvi && \ + cmp $testdir/oldindepout.dvi x1oldindepout.dvi && echo || exit 7 + +./dvispc && echo || exit 0 + +# the following tests include +# * correction of dvipdfmx-style specials +# * correction in reversed order which requires prior scanning +# so will not pass for old version written by SHIMA. +# that version can be distinguished from the new version by +# exit code 1 for usage without argument. (the above line did it!) ./dvispc -c $testdir/test.dvi xtestout.dvi && \ - cmp $testdir/testout.dvi xtestout.dvi && echo || exit 5 + cmp $testdir/testout.dvi xtestout.dvi && echo || exit 8 ./dvispc -c $testdir/test.dvi > x1testout.dvi && \ - cmp $testdir/testout.dvi x1testout.dvi && echo || exit 6 + cmp $testdir/testout.dvi x1testout.dvi && echo || exit 9 ## invalid usage #./dvispc -c < $testdir/test.dvi x2testout.dvi && \ -# cmp $testdir/testout.dvi x2testout.dvi && echo || exit 7 +# cmp $testdir/testout.dvi x2testout.dvi && echo || exit 0 ## stdin is a DVI, random access may not be supported, no test #./dvispc -c < $testdir/test.dvi > x3testout.dvi && \ -# cmp $testdir/testout.dvi x3testout.dvi && echo || exit 8 +# cmp $testdir/testout.dvi x3testout.dvi && echo || exit 10 -./dvispc -a $testdir/test.dvi xtesta.txt && \ - ./dvispc -x xtesta.txt xtestax.dvi && \ - cmp $testdir/test.dvi xtestax.dvi && echo || exit 9 - -./dvispc -a $testdir/test.dvi > x1testa.txt && \ - ./dvispc -x < x1testa.txt > x1testax.dvi && \ - cmp $testdir/test.dvi x1testax.dvi && echo || exit 10 exit 0 -- cgit v1.2.3