summaryrefslogtreecommitdiffstats
path: root/tests/msgcmp-2
blob: b0bbc9191b792f5e53b84c5b77be3f9a7f8c5bd1 (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
#! /bin/sh
# One argument is required which is the path to the toplevel directory
# of the distribution.

LANGUAGE=
LC_ALL=
LC_MESSAGES=
LANG=
export LANGUAGE LC_ALL LC_MESSAGES LANG

tmpfiles="mc-test2.in1 mc-test2.in2"
cat <<EOF > mc-test2.in1
msgid "one" msgstr "first"
msgid "two" msgstr "second"
msgid "three" msgstr "third"
msgid "four" msgstr "fourth"
EOF

cat <<EOF > mc-test2.in2
msgid "thre" msgstr "" #i.e. pretend a typo in the program
msgid "one" msgstr ""
msgid "two" msgstr ""
EOF

tmpfiles="$tmpfiles mc-test2.out"
: ${MSGCMP=msgcmp}
${MSGCMP} mc-test2.in1 mc-test2.in2 > mc-test2.out 2>&1

tmpfiles="$tmpfiles mc-test2.ok"
cat <<EOF > mc-test2.ok
mc-test2.in2:1: this message is used but not defined...
mc-test2.in1:3: ...but this definition is similar
mc-test2.in1:4: warning: this message is not used
found 1 fatal errors
EOF

: ${DIFF=diff}
${DIFF} mc-test2.ok mc-test2.out
result=$?

rm -fr $tmpfiles

exit $result

# Preserve executable bits for this shell script.
# Thanks to Noah Friedman for this great trick.
Local Variables:
eval:(defun frobme () (set-file-modes buffer-file-name file-mode))
eval:(make-local-variable 'file-mode)
eval:(setq file-mode (file-modes (buffer-file-name)))
eval:(make-local-variable 'after-save-hook)
eval:(add-hook 'after-save-hook 'frobme)
End: