#! /bin/sh . "${srcdir=.}/init.sh"; path_prepend_ . ../src # Test checking of KDE KUIT format strings. cat <<\EOF > f-kd-invalid.po #, kde-kuit-format msgid "foo" msgstr "<" EOF : ${MSGFMT=msgfmt} LC_ALL=C ${MSGFMT} --check-format -o /dev/null f-kd-invalid.po 2>&1 | grep 'not a valid KDE KUIT format' > /dev/null 2>&1 test $? = 0 || { echo "Skipping test: msgfmt was built without KDE KUIT format support" Exit 77 } cat <<\EOF > f-kd-2.data # Valid: one argument msgid "%1" msgstr "%1" # Invalid: missing argument msgid "%1" msgstr "foo" # Valid: change the text msgid "foo" msgstr "bar" # Invalid: unbalanced tag msgid "foo" msgstr "bar" # Invalid: unbalanced tag msgid "foo" msgstr "bar" # Valid: replaced tag msgid "foo" msgstr "foo" # Valid: accelerator msgid "&foo" msgstr "&foo" # Valid: entity reference msgid "foo" msgstr "&" EOF n=0 while read comment; do read msgid_line read msgstr_line n=`expr $n + 1` cat < f-kd-2-$n.po #, kde-kuit-format ${msgid_line} ${msgstr_line} EOF fail= if echo "$comment" | grep 'Valid:' > /dev/null; then if ${MSGFMT} --check-format -o f-kd-2-$n.mo f-kd-2-$n.po; then : else fail=yes fi else ${MSGFMT} --check-format -o f-kd-2-$n.mo f-kd-2-$n.po 2> /dev/null if test $? = 1; then : else fail=yes fi fi if test -n "$fail"; then echo "Format string checking error:" 1>&2 cat f-kd-2-$n.po 1>&2 Exit 1 fi rm -f f-kd-2-$n.po f-kd-2-$n.mo done < f-kd-2.data Exit 0