blob: 7262a0c8d2c3ec130c7ffe0bb2f88d1762a64581 (
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
|
#! /bin/sh
# Test man-recode's --in-place behaviour.
: "${srcdir=.}"
# shellcheck source-path=SCRIPTDIR
. "$srcdir/testlib.sh"
: "${MAN_RECODE=man-recode}"
init
cat >"$tmpdir/a.1.exp" <<'EOF'
.SH NAME
a \- á
EOF
cp "$tmpdir/a.1.exp" "$tmpdir/a.1"
cat >"$tmpdir/b.1.exp" <<'EOF'
'\" -*- coding: UTF-8 -*-
.SH NAME
b \- é
EOF
gzip -c <"$tmpdir/b.1.exp" >"$tmpdir/b.1.gz"
cat >"$tmpdir/c.1.exp" <<'EOF'
'\" -*- coding: UTF-8
.SH NAME
b \- é
EOF
cat >"$tmpdir/c.1" <<'EOF'
'\" -*- coding: ISO-8859-1
EOF
<"$tmpdir/c.1.exp" tail -n +2 | iconv -f UTF-8 -t ISO-8859-1 >>"$tmpdir/c.1"
gzip "$tmpdir/c.1"
run $MAN_RECODE -t UTF-8 --in-place \
"$tmpdir/a.1" "$tmpdir/b.1.gz" "$tmpdir/c.1.gz"
expect_files_equal '--in-place with no coding tag' \
"$tmpdir/a.1.exp" "$tmpdir/a.1"
if [ "$HAVE_ICONV" = yes ]; then
expect_files_equal '--in-place with gzip and coding tag matching target encoding' \
"$tmpdir/b.1.exp" "$tmpdir/b.1"
expect_files_equal \
'--in-place with gzip and coding tag not matching target encoding' \
"$tmpdir/c.1.exp" "$tmpdir/c.1"
else
report_skip '--in-place with gzip and coding tag matching target encoding'
report_skip '--in-place with gzip and coding tag not matching target encoding'
fi
test ! -f "$tmpdir/b.1.gz" && test ! -f "$tmpdir/c.1.gz"
report '--in-place removes compressed input files' "$?"
finish
|