diff options
author | G. Branden Robinson <g.branden.robinson@gmail.com> | 2022-10-02 20:41:54 -0500 |
---|---|---|
committer | G. Branden Robinson <g.branden.robinson@gmail.com> | 2022-10-03 00:26:33 -0500 |
commit | e65ab0627cbe24775132a02c9596ad6d10983b9f (patch) | |
tree | e2cbbb77ed32da7fb3cb06a9b6e028be7c4e9b41 /tmac/tests | |
parent | 0e24c2da7eee5e784baacd7bf36911f1924d6a98 (diff) | |
download | groff-git-e65ab0627cbe24775132a02c9596ad6d10983b9f.tar.gz |
[tmac]: Regression-test Savannah #63112 (3/3).
* tmac/tests/latin2_works: Do it.
* tmac/tmac.am (tmac_TESTS): Run test.
Test fails at this commit.
Diffstat (limited to 'tmac/tests')
-rwxr-xr-x | tmac/tests/latin2_works.sh | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/tmac/tests/latin2_works.sh b/tmac/tests/latin2_works.sh new file mode 100755 index 000000000..144fcfb41 --- /dev/null +++ b/tmac/tests/latin2_works.sh @@ -0,0 +1,74 @@ +#!/bin/sh +# +# Copyright (C) 2022 Free Software Foundation, Inc. +# +# This file is part of groff. +# +# groff 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. +# +# groff 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/>. +# + +groff="${abs_top_builddir:-.}/test-groff" + +fail= + +wail () { + echo "...FAILED $*" + fail=yes +} + +input=$(\ + printf '\\[A ho]\\[ab]\\[/L]\\[S aa]'; + printf '\\[vS]\\[S ac]\\[T ah]\\[Z aa]\\[vZ]\\[Z a.]\n'; + printf '\\[a ho]\\[ho]\\[/l]\\[s aa]'; + printf '\\[vs]\\[s ac]\\[t ah]\\[z aa]\[a"]\\[vZ]\\[z a.]\n'; + printf '\\[R aa]\\[A ab]\\[L aa]\\[C aa]'; + printf '\\[C ah]\\[E ho]\\[E ah]\\[D ah]\n'; + printf '\\[u0110]\\[N aa]\\[N ah]\\[O a"]'; + printf '\\[R ah]\\[U ao]\\[U a"]\\[T ac]\n'; + printf '\\[r aa]\\[a ab]\\[l aa]\\[c aa]'; + printf '\\[c ah]\\[e ho]\\[e ah]\\[d ah]\n'; + printf '\\[u0111]\\[n aa]\\[n ah]\\[o a"]'; + printf '\\[r ah]\\[u ao]\\[u a"]\\[t ac]\\[a.]\n'; +) + +output=$(printf "%s\n" "$input" | "$groff" -Tlatin1 -mlatin2 \ + | LC_ALL=C od -t c) +printf "$output" \ + | grep -Eq '^0000000 241 242 243 246 251 252 253 254 256 257 +' \ + || wail "in block 0xA0" +printf "$output" \ + | grep -Eq '^0000000 .* 261 262 263 266 271$' \ + || wail "in block 0xB0" +printf "$output" \ + | grep -Eq '^0000020 272 273 274 275 256 277 +' \ + || wail "in block 0xB0" +printf "$output" \ + | grep -Eq '^0000020 .* 300 303 305 306 310 312 314 317 +$' \ + || wail "in block 0xC0" +printf "$output" \ + | grep -Eq '^0000040 320 321 322 325 330 331 333 336 +' \ + || wail "in block 0xD0" +printf "$output" \ + | grep -Eq '^0000040 .* 340 343 345 346 350 352 354$' \ + || wail "in block 0xE0" +printf "$output" \ + | grep -Eq '^0000060 357 +' \ + || wail "in block 0xE0" +printf "$output" \ + | grep -Eq '^0000060 .* 360 361 362 365 370 371 373 376 377 +$' \ + || wail "in block 0xF0" + +test -z "$fail" + +# vim:set ai et sw=4 ts=4 tw=72: |