#! /bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ . ../src

# Test checking of Emacs Lisp format strings.

cat <<\EOF > f-el-2.data
# Valid: %% doesn't count
msgid  "abc%%def"
msgstr "xyz"
# Invalid: invalid msgstr
msgid  "abc%%def"
msgstr "xyz%"
# Valid: same arguments
msgid  "abc%s%xdef"
msgstr "xyz%s%x"
# Valid: same arguments, with different widths
msgid  "abc%2sdef"
msgstr "xyz%3s"
# Valid: same arguments but in numbered syntax
msgid  "abc%s%xdef"
msgstr "xyz%1$s%2$x"
# Valid: permutation
msgid  "abc%s%x%cdef"
msgstr "xyz%3$c%2$x%1$s"
# Invalid: too few arguments
msgid  "abc%2$xdef%1$s"
msgstr "xyz%1$s"
# Invalid: too few arguments
msgid  "abc%sdef%x"
msgstr "xyz%s"
# Invalid: too many arguments
msgid  "abc%xdef"
msgstr "xyz%xvw%c"
# Valid: same numbered arguments, with different widths
msgid  "abc%2$5s%1$4s"
msgstr "xyz%2$4s%1$5s"
# Invalid: missing argument
msgid  "abc%2$sdef%1$x"
msgstr "xyz%1$x"
# Invalid: missing argument
msgid  "abc%1$sdef%2$x"
msgstr "xyz%2$x"
# Invalid: added argument
msgid  "abc%1$xdef"
msgstr "xyz%1$xvw%2$c"
# Valid: type compatibility
msgid  "abc%d"
msgstr "xyz%i"
# Valid: type compatibility
msgid  "abc%d"
msgstr "xyz%x"
# Valid: type compatibility
msgid  "abc%d"
msgstr "xyz%X"
# Valid: type compatibility
msgid  "abc%d"
msgstr "xyz%o"
# Valid: type compatibility
msgid  "abc%x"
msgstr "xyz%X"
# Valid: type compatibility
msgid  "abc%x"
msgstr "xyz%o"
# Valid: type compatibility
msgid  "abc%X"
msgstr "xyz%o"
# Valid: type compatibility
msgid  "abc%e"
msgstr "xyz%E"
# Valid: type compatibility
msgid  "abc%e"
msgstr "xyz%f"
# Valid: type compatibility
msgid  "abc%e"
msgstr "xyz%g"
# Valid: type compatibility
msgid  "abc%e"
msgstr "xyz%G"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%d"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%i"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%x"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%X"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%o"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%e"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%E"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%f"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%g"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%G"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%s"
# Invalid: type incompatibility
msgid  "abc%c"
msgstr "xyz%S"
# Invalid: type incompatibility
msgid  "abc%d"
msgstr "xyz%e"
# Invalid: type incompatibility
msgid  "abc%d"
msgstr "xyz%E"
# Invalid: type incompatibility
msgid  "abc%d"
msgstr "xyz%f"
# Invalid: type incompatibility
msgid  "abc%d"
msgstr "xyz%g"
# Invalid: type incompatibility
msgid  "abc%d"
msgstr "xyz%G"
# Invalid: type incompatibility
msgid  "abc%d"
msgstr "xyz%s"
# Invalid: type incompatibility
msgid  "abc%d"
msgstr "xyz%S"
# Invalid: type incompatibility
msgid  "abc%i"
msgstr "xyz%e"
# Invalid: type incompatibility
msgid  "abc%i"
msgstr "xyz%E"
# Invalid: type incompatibility
msgid  "abc%i"
msgstr "xyz%f"
# Invalid: type incompatibility
msgid  "abc%i"
msgstr "xyz%g"
# Invalid: type incompatibility
msgid  "abc%i"
msgstr "xyz%G"
# Invalid: type incompatibility
msgid  "abc%i"
msgstr "xyz%s"
# Invalid: type incompatibility
msgid  "abc%i"
msgstr "xyz%S"
# Invalid: type incompatibility
msgid  "abc%x"
msgstr "xyz%e"
# Invalid: type incompatibility
msgid  "abc%x"
msgstr "xyz%E"
# Invalid: type incompatibility
msgid  "abc%x"
msgstr "xyz%f"
# Invalid: type incompatibility
msgid  "abc%x"
msgstr "xyz%g"
# Invalid: type incompatibility
msgid  "abc%x"
msgstr "xyz%G"
# Invalid: type incompatibility
msgid  "abc%x"
msgstr "xyz%s"
# Invalid: type incompatibility
msgid  "abc%x"
msgstr "xyz%S"
# Invalid: type incompatibility
msgid  "abc%X"
msgstr "xyz%e"
# Invalid: type incompatibility
msgid  "abc%X"
msgstr "xyz%E"
# Invalid: type incompatibility
msgid  "abc%X"
msgstr "xyz%f"
# Invalid: type incompatibility
msgid  "abc%X"
msgstr "xyz%g"
# Invalid: type incompatibility
msgid  "abc%X"
msgstr "xyz%G"
# Invalid: type incompatibility
msgid  "abc%X"
msgstr "xyz%s"
# Invalid: type incompatibility
msgid  "abc%X"
msgstr "xyz%S"
# Invalid: type incompatibility
msgid  "abc%o"
msgstr "xyz%e"
# Invalid: type incompatibility
msgid  "abc%o"
msgstr "xyz%E"
# Invalid: type incompatibility
msgid  "abc%o"
msgstr "xyz%f"
# Invalid: type incompatibility
msgid  "abc%o"
msgstr "xyz%g"
# Invalid: type incompatibility
msgid  "abc%o"
msgstr "xyz%G"
# Invalid: type incompatibility
msgid  "abc%o"
msgstr "xyz%s"
# Invalid: type incompatibility
msgid  "abc%o"
msgstr "xyz%S"
# Invalid: type incompatibility
msgid  "abc%e"
msgstr "xyz%s"
# Invalid: type incompatibility
msgid  "abc%e"
msgstr "xyz%S"
# Invalid: type incompatibility
msgid  "abc%E"
msgstr "xyz%s"
# Invalid: type incompatibility
msgid  "abc%E"
msgstr "xyz%S"
# Invalid: type incompatibility
msgid  "abc%f"
msgstr "xyz%s"
# Invalid: type incompatibility
msgid  "abc%f"
msgstr "xyz%S"
# Invalid: type incompatibility
msgid  "abc%g"
msgstr "xyz%s"
# Invalid: type incompatibility
msgid  "abc%g"
msgstr "xyz%S"
# Invalid: type incompatibility
msgid  "abc%G"
msgstr "xyz%s"
# Invalid: type incompatibility
msgid  "abc%G"
msgstr "xyz%S"
# Invalid: type incompatibility
msgid  "abc%s"
msgstr "xyz%S"
EOF

: ${MSGFMT=msgfmt}
n=0
while read comment; do
  read msgid_line
  read msgstr_line
  n=`expr $n + 1`
  cat <<EOF > f-el-2-$n.po
#, elisp-format
${msgid_line}
${msgstr_line}
EOF
  fail=
  if echo "$comment" | grep 'Valid:' > /dev/null; then
    if ${MSGFMT} --check-format -o f-el-2-$n.mo f-el-2-$n.po; then
      :
    else
      fail=yes
    fi
  else
    ${MSGFMT} --check-format -o f-el-2-$n.mo f-el-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-el-2-$n.po 1>&2
    Exit 1
  fi
  rm -f f-el-2-$n.po f-el-2-$n.mo
done < f-el-2.data

Exit 0
