/
niceSOFT
/
gettext
Обзор
Документация
Войти
/
niceSOFT
/
gettext
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
gettext-tools/tests/format-python-brace-2
70 строк
1 KB
Bruno Haible
Python: Update python-brace-format, assuming Python >= 3.1.
24 июн 2025, 12:34
24 июн 2025, 12:34
51ec1c4
Код
Авторство
О чём код?
#! /bin/sh . "${srcdir=.}/init.sh"; path_prepend_ . ../src # Test checking of Python brace format strings. cat <<\EOF > f-pyb-2.data # Valid: same named arguments msgid "abc{date}{time}" msgstr "xyz{date}{time}" # Valid: permutation msgid "abc{x3}{x1}{x2}def" msgstr "xyz{x2}{x1}{x3}" # Valid: permutation msgid "abc{}{}{}def" msgstr "xyz{2}{1}{0}" # Invalid: missing argument msgid "abc{x2}def{x1}" msgstr "xyz{x1}" # Invalid: missing argument msgid "abc{x1}def{x2}" msgstr "xyz{x2}" # Invalid: added argument msgid "abc{foo}def" msgstr "xyz{foo}uvw{zoo}" # Valid: multiple reuse of same argument msgid "{foo} {bar} {baz}" msgstr "{baz} {bar} {foo} {bar}" # Valid: single reuse of same argument msgid "{baz} {bar} {foo} {bar}" msgstr "{foo} {bar} {baz}" # Valid: "{{" is an escape of "{" msgid "abc{{{x1}{x2}" msgstr "{x2}abc{x1}" EOF : ${MSGFMT=msgfmt} n=0 while read comment; do read msgid_line read msgstr_line n=`expr $n + 1` cat <<EOF > f-pyb-2-$n.po #, python-brace-format ${msgid_line} ${msgstr_line} EOF fail= if echo "$comment" | grep 'Valid:' > /dev/null; then if ${MSGFMT} --check-format -o f-pyb-2-$n.mo f-pyb-2-$n.po; then : else fail=yes fi else ${MSGFMT} --check-format -o f-pyb-2-$n.mo f-pyb-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-pyb-2-$n.po 1>&2 Exit 1 fi rm -f f-pyb-2-$n.po f-pyb-2-$n.mo done < f-pyb-2.data Exit 0