diff options
author | Bruno Haible <bruno@clisp.org> | 2003-02-14 15:38:47 +0000 |
---|---|---|
committer | Bruno Haible <bruno@clisp.org> | 2009-06-23 12:09:49 +0200 |
commit | 823750f3e538464876742e08e1cd7c7352e8f623 (patch) | |
tree | cb4db2d2c510f00ebff3ab3d0c1f33e20947eb74 /gettext-tools/tests | |
parent | 22be5bd8b703e3588f256873a9f1cb677121b7a5 (diff) | |
download | external_gettext-823750f3e538464876742e08e1cd7c7352e8f623.zip external_gettext-823750f3e538464876742e08e1cd7c7352e8f623.tar.gz external_gettext-823750f3e538464876742e08e1cd7c7352e8f623.tar.bz2 |
Move tests/msgfmt-1 to gettext-tools/tests/msgfmt-1.
Diffstat (limited to 'gettext-tools/tests')
-rwxr-xr-x | gettext-tools/tests/msgfmt-1 | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/gettext-tools/tests/msgfmt-1 b/gettext-tools/tests/msgfmt-1 new file mode 100755 index 0000000..3b8face --- /dev/null +++ b/gettext-tools/tests/msgfmt-1 @@ -0,0 +1,79 @@ +#! /bin/sh + +tmpfiles="" +trap 'rm -fr $tmpfiles' 1 2 3 15 + +tmpfiles="$tmpfiles LC_MESSAGES" +test -d LC_MESSAGES || mkdir LC_MESSAGES + +tmpfiles="$tmpfiles module1.po module2.po" +cat <<EOF > module1.po +#default domain "messages.mo" +msgid "SYS_(C)\n" +msgstr "MSGFMT(3) portable message object file compiler\n" +"Copyright (C) 1995 Free Software Foundation\n" +"Report bugs to <bug-gnu-utils@gnu.org>\n" +msgid "msg 1" +msgstr "msg 1 translation" +# +domain "help_dom" +msgid "help 2 %d" +msgstr "help 2 translation" +# +domain "error_dom" +msgid "error 3" +msgstr "error 3 translation" +EOF + +cat <<EOF > module2.po +# --- +#default domain "messages.mo" +msgid "mesg 4" +msgstr "mesg 4 translation" +# +domain "error_dom" +msgid "error 3" +msgstr "alternate error 3 translation" +msgid "error 5" +msgstr "error 5 translation" +# +domain "window_dom" +msgid "window 6" +msgstr "window 6 translation" +EOF + +# Without use of msgcat, expect a "duplicate message definition" error. +: ${MSGFMT=msgfmt} +if ${MSGFMT} module1.po module2.po -o LC_MESSAGES/gen.mo 2> /dev/null; then + rm -fr $tmpfiles + exit 1 +fi + +# With msgcat, it should work. +tmpfiles="$tmpfiles modules.po" +: ${MSGCAT=msgcat} ${MSGFMT=msgfmt} +${MSGCAT} --use-first module1.po module2.po -o modules.po +test $? = 0 || { rm -fr $tmpfiles; exit 1; } +${MSGFMT} modules.po -o LC_MESSAGES/gen.mo +test $? = 0 || { rm -fr $tmpfiles; exit 1; } + +tmpfiles="$tmpfiles mf-test1.out" +: ${GETTEXT=gettext} +TEXTDOMAINDIR=.. LANGUAGE=tests \ +${GETTEXT} --env LC_ALL=en gen 'SYS_(C) +' > mf-test1.out + +tmpfiles="$tmpfiles gtmf-test1.ok" +cat <<EOF > gtmf-test1.ok +MSGFMT(3) portable message object file compiler +Copyright (C) 1995 Free Software Foundation +Report bugs to <bug-gnu-utils@gnu.org> +EOF + +: ${DIFF=diff} +${DIFF} gtmf-test1.ok mf-test1.out +result=$? + +rm -fr $tmpfiles + +exit $result |