summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/uptexdir/uptriptest.test
blob: b58cd8a0cf44a2f08169f773f9aa98e8322a372f (plain)
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
67
68
69
70
71
72
73
74
75
76
77
78
#! /bin/sh -vx
# $Id$
# Copyright 2017-2018 Karl Berry <tex-live@tug.org>
# Copyright 2011-2014 Peter Breitenlohner <tex-live@tug.org>
# You may freely use, modify and/or distribute this file.

BinDir=${BinDir:-..}
ExeExt=${ExeExt:-}
_uptex=$BinDir/uptex$ExeExt
_pltotf=$BinDir/pltotf$ExeExt
_tftopl=$BinDir/tftopl$ExeExt
_dvitype=$BinDir/dvitype$ExeExt

LC_ALL=C; export LC_ALL;  LANGUAGE=C; export LANGUAGE

testdir=$abs_srcdir/triptrap
uptestdir=$abs_srcdir/uptexdir/uptrip

TEXMFCNF=$uptestdir; export TEXMFCNF

rm -rf uptripdir
mkdir uptripdir
cd uptripdir

dvitype_args="-output-level=2 -dpi=72.27 -page-start='*.*.*.*.*.*.*.*.*.*'"

echo ">>> Running TRIP test for upTeX." >&2
echo ">>> See $uptestdir/uptrip.diffs for example of acceptable diffs." >&2

# upTeX outputs direction of boxes.
P_SED1='s/, yoko direction//;s/yoko direction, //'
P_SED2='s/yoko(math) direction, //'

is_OK=:

set -x

echo "*** TRIP test for upTeX ***."

$_pltotf $testdir/trip.pl trip.tfm || exit 1

$_tftopl ./trip.tfm trip.pl || exit 1

diff $testdir/trip.pl trip.pl || is_OK=false

# get same filename in log
$LN_S $testdir/trip.tex .

rm -f trip.log
$_uptex --progname=upinitex --ini <$testdir/trip1.in >uptripin.fot
if test ! -s trip.fmt; then
  echo "*** trip.fmt not created by trip1.in, investigate!" >&2
  exit 1
fi
sed "$P_SED1" trip.log >  uptripin.log || exit 1
diff $testdir/tripin.log uptripin.log

# May as well test non-ini second time through.
rm -f trip.log
$_uptex --progname=uptex <$testdir/trip2.in >uptrip.fot
sed "$P_SED1;$P_SED2" trip.log > uptrip.log
diff $testdir/trip.fot uptrip.fot

# We use $DIFF instead of `diff' only for those files where there
# might actually be legitimate numerical differences.
$DIFF $DIFFFLAGS $testdir/trip.log uptrip.log 

mv tripos.tex uptripos.tex
diff $testdir/tripos.tex uptripos.tex || is_OK=false

eval $_dvitype $dvitype_args trip.dvi >uptrip.typ || exit 1
$DIFF $DIFFFLAGS $testdir/trip.typ uptrip.typ

$is_OK || {
  echo ">>> There were some errors." >&2
  exit 1
}