summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/triptrap/mftrap.diffs
blob: 950dcb6c9d5b8143eef6b61335b016b95dd010ed (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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
#! /bin/sh -vx
# $Id: mftraptest.test 53154 2019-12-17 19:06:20Z karl $
# Copyright 2017-2021 Karl Berry <tex-live@tug.org>
# Copyright 2009-2014 Peter Breitenlohner <tex-live@tug.org>
# You may freely use, modify and/or distribute this file.

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

testdir=$abs_srcdir/triptrap
+ testdir=SRCDIR/triptrap
TEXMFCNF=$testdir; export TEXMFCNF
+ TEXMFCNF=SRCDIR/triptrap
+ export TEXMFCNF

rm -rf trapdir
+ rm -rf trapdir
mkdir trapdir
+ mkdir trapdir
cd trapdir
+ cd trapdir
mkdir a b
+ mkdir a b

# See triptrap/README for explanation of why we believe these diffs are ok,
# notably including the capsule numbers.

# TeX Live generic
cat >filter <<-\_EOF
	s,^\*\*(trap\.mf,** \&trap  trap \
	(trap.mf,
	s/ (TeX Live 20[^)]*)//
	s/base=trap [^)][^)]*)/base=trap)/
	s/)  [0-9A-Z: ]*$/)/
	s/usage [1-9][0-9&]* ([1-9][0-9&]* still/usage XX\&XX (YYY\&YYYYY still/
	s/[1-9][0-9]* strings of total length [1-9][0-9]*/XXXX strings of total length YYYYY/
	s/[1-9][0-9]* strings out of [1-9].*/XX strings out of YYY/
	s/[1-9][0-9]* string characters out of [1-9].*/XXXX string characters out of YYYYY/
	s/tokens out of [1-9][0-9]*/tokens out of YYYY/
	s/out of [1-9][0-9]*i,[0-9nrpb,]*/out of YYi,YYYn,YYYr,YYYp,YYYb/
	s/out of [1-9][0-9]*w,[0-9hdilkep,]*)/out of YYYw,YYh,YYd,YYi,YYYYl,YYYk,YYYe,YYp)/
	s/METAFONT output ....\...\...:.../METAFONT output YYYY.MM.DD:hhmm/
	_EOF
+ cat

# Capsule numbers
cat >>filter <<-\_EOF
	s/ %CA$/ %/
	s/^PSULE1675/CAPSULE1172/
	s/%CAPSULE[1-9][0-9]*/%CAPSULEnnnn/g
	_EOF
+ cat

echo ">>> Running TRAP test for Metafont." >&2
+ echo '>>> Running TRAP test for Metafont.'
>>> Running TRAP test for Metafont.
echo ">>> See $testdir/mftrap.diffs for example of acceptable diffs." >&2
+ echo '>>> See SRCDIR/triptrap/mftrap.diffs for example of acceptable diffs.'
>>> See SRCDIR/triptrap/mftrap.diffs for example of acceptable diffs.

is_OK=:
+ is_OK=:

set -x
+ set -x

# get same filename in log
rm -f trap.mf
+ rm -f trap.mf
$LN_S $testdir/trap.mf . || exit 1
+ ln -s SRCDIR/triptrap/trap.mf .

rm -f trap.base
+ rm -f trap.base
./mf --progname=inimf <$testdir/mftrap1.in >mftrapin.fot
+ ./mf --progname=inimf
if test ! -s trap.base; then
  echo "*** trap.base not created by mftrap1.in, investigate!" >&2
  exit 1
fi
+ test '!' -s trap.base
mv trap.log mftrapin.log || exit 1
+ mv trap.log mftrapin.log
diff $testdir/mftrapin.log mftrapin.log
+ diff SRCDIR/triptrap/mftrapin.log mftrapin.log
1c1
< This is METAFONT, Version 2.71828182 (INIMF)  4 JUL 1776 12:00
---
> This is METAFONT, Version 2.71828182 (INIMF)  27 JAN 2021 18:03
150c150
< String usage 26&83 (892&11481 still untouched)
---
> String usage 30&98 (6386&79447 still untouched)
176,177c176,177
<  (preloaded base=trap 1776.7.4)
< 1116 strings of total length 20570
---
>  (preloaded base=trap 2021.1.27)
> 1123 strings of total length 20614

./mf --progname=inimf <$testdir/mftrap2.in >mftrap.fot
+ ./mf --progname=inimf
mv trap.log mftrap.log || exit 1
+ mv trap.log mftrap.log
mv trap.tfm mftrap.tfm || exit 1
+ mv trap.tfm mftrap.tfm
diff $testdir/mftrap.fot mftrap.fot
+ diff SRCDIR/triptrap/mftrap.fot mftrap.fot
1,3c1,2
< This is METAFONT, Version 2.71828182 (INIMF)
< ** &trap  trap 
< (trap.mf
---
> This is METAFONT, Version 2.71828182 (TeX Live 2021/dev) (INIMF)
> **(trap.mf
39c38
< String usage 41&161 (816&7678 still untouched)
---
> String usage 50&202 (6300&75593 still untouched)
diff $testdir/mftrap.log mftrap.log
+ diff SRCDIR/triptrap/mftrap.log mftrap.log
1c1
< This is METAFONT, Version 2.71828182 (preloaded base=trap 1776.7.4)  4 JUL 1776 12:00
---
> This is METAFONT, Version 2.71828182 (preloaded base=trap 2021.1.27)  27 JAN 2021 18:03
1825c1825
< String usage 24&92 (859&11353 still untouched)
---
> String usage 30&119 (6346&79261 still untouched)
4235c4235
< String usage 41&161 (816&7678 still untouched)
---
> String usage 50&202 (6300&75593 still untouched)
4251,4252c4251,4252
<  68 strings out of 884
<  3752 string characters out of 11430
---
>  77 strings out of 6377
>  3793 string characters out of 79386
4254,4255c4254,4255
<  289 symbolic tokens out of 2100
<  8i,43n,14r,8p,167b stack positions out of 30i,100n,300r,150p,500b
---
>  289 symbolic tokens out of 9500
>  8i,43n,14r,8p,167b stack positions out of 300i,300n,1000r,150p,500b
4263c4263
<   out of 256w,16h,16d,64i,5000l,500k,256e,50p)
---
>   out of 256w,16h,16d,64i,15000l,2500k,256e,60p)

./tftopl ./mftrap.tfm mftrap.pl || exit 1
+ ./tftopl ./mftrap.tfm mftrap.pl
diff $testdir/mftrap.pl mftrap.pl || is_OK=false
+ diff SRCDIR/triptrap/mftrap.pl mftrap.pl

./gftype -m -i ./trap.72270gf >trap.typ || exit 1
+ ./gftype -m -i ./trap.72270gf
diff $testdir/trap.typ trap.typ
+ diff SRCDIR/triptrap/trap.typ trap.typ
1c1
< This is GFtype, Version 3.1
---
> This is GFtype, Version 3.1 (TeX Live 2021/dev)
3c3
< ' METAFONT output 2014.01.07:1811'
---
> ' METAFONT output 2021.01.27:1803'

for f in mftrapin.log mftrap.fot mftrap.log trap.typ; do
  sed $testdir/$f -f filter >a/$f
  sed $f -f filter >b/$f
  diff a/$f b/$f || is_OK=false
done
+ for f in mftrapin.log mftrap.fot mftrap.log trap.typ
+ sed SRCDIR/triptrap/mftrapin.log -f filter
+ sed mftrapin.log -f filter
+ diff a/mftrapin.log b/mftrapin.log
+ for f in mftrapin.log mftrap.fot mftrap.log trap.typ
+ sed SRCDIR/triptrap/mftrap.fot -f filter
+ sed mftrap.fot -f filter
+ diff a/mftrap.fot b/mftrap.fot
+ for f in mftrapin.log mftrap.fot mftrap.log trap.typ
+ sed SRCDIR/triptrap/mftrap.log -f filter
+ sed mftrap.log -f filter
+ diff a/mftrap.log b/mftrap.log
+ for f in mftrapin.log mftrap.fot mftrap.log trap.typ
+ sed SRCDIR/triptrap/trap.typ -f filter
+ sed trap.typ -f filter
+ diff a/trap.typ b/trap.typ

$is_OK && {
  echo ">>> All differences are acceptable." >&2
} || {
  echo "*** Error(s) found in mf trap test, investigate!" >&2
  exit 1
}
+ :
+ echo '>>> All differences are acceptable.'
>>> All differences are acceptable.
PASS mftraptest.test (exit status: 0)
PASS: mftraptest.test