xref: /illumos-gate/usr/src/test/util-tests/tests/awk/tests/T.latin1 (revision 8af575c0afc1d79bd23c3e1a78a546c9963e5083)
1#!/bin/bash
2
3if [[ -z "$AWK" || -z "$WORKDIR" ]]; then
4    printf '$AWK and $WORKDIR must be set\n' >&2
5    exit 1
6fi
7
8TEMP0=$WORKDIR/test.temp.0
9TEMP1=$WORKDIR/test.temp.1
10TEMP2=$WORKDIR/test.temp.2
11
12RESULT=0
13
14fail() {
15	echo "$1" >&2
16	RESULT=1
17}
18
19echo T.latin1: tests of 8-bit input
20
21$AWK '
22{ print $0 }
23' latin1 > $TEMP1
24
25diff latin1 $TEMP1 || fail 'BAD: T.latin1 1'
26
27LC_ALL=C grep '[�-�]' latin1 > $TEMP0
28$AWK '/[�-�]/' latin1 > $TEMP1
29diff $TEMP0 $TEMP1 || fail 'BAD: T.latin1 2'
30
31$AWK '{ gsub(/\351/, "\370"); print }' latin1 > $TEMP0
32$AWK '{ gsub(/�/, "�"); print }' latin1 > $TEMP1
33diff $TEMP0 $TEMP1 || fail 'BAD: T.latin1 3'
34
35$AWK '{ gsub(/[^\300-\370]/, ""); print }' latin1 > $TEMP0
36$AWK '{ gsub(/[^�-�]/, ""); print } ' latin1 > $TEMP1
37diff $TEMP0 $TEMP1 || fail 'BAD: T.latin1 4'
38
39echo  '/�/' > $TEMP1
40$AWK -f $TEMP1 $TEMP1 > $TEMP2
41diff $TEMP1 $TEMP2 || fail 'BAD: T.latin1 5'
42
43echo /[��]/ > $TEMP1
44$AWK -f $TEMP1 $TEMP1 > $TEMP2
45diff $TEMP1 $TEMP2 || fail 'BAD: T.latin1 6'
46
47
48echo 'This is a line.
49Patterns like /[��]/ do not work yet. Example, run awk /[��]/
50over a file containing just �.
51This is another line.' > $TEMP0
52echo 'Patterns like /[��]/ do not work yet. Example, run awk /[��]/
53over a file containing just �.' > $TEMP1
54$AWK '/[��]/' $TEMP0 > $TEMP2
55diff $TEMP1 $TEMP2 || fail 'BAD: T.latin1 7'
56
57exit $RESULT
58