Home | History | Annotate | Line # | Download | only in tests
      1 #! /bin/sh
      2 
      3 # Test that on glibc systems, gettext() works right even with intermediate
      4 # setlocale() calls.
      5 
      6 tmpfiles=""
      7 trap 'rm -fr $tmpfiles' 1 2 3 15
      8 
      9 # This test works only on glibc systems.
     10 grep '@GLIBC2@.*yes' ../config.status >/dev/null || {
     11   echo "Skipping test: not a glibc system"
     12   exit 77
     13 }
     14 
     15 # This test works only on systems that have a de_DE and fr_FR locale installed.
     16 LC_ALL=de_DE ./testlocale || {
     17   if test -f /usr/bin/localedef; then
     18     echo "Skipping test: locale de_DE not installed"
     19   else
     20     echo "Skipping test: locale de_DE not supported"
     21   fi
     22   exit 77
     23 }
     24 LC_ALL=fr_FR ./testlocale || {
     25   if test -f /usr/bin/localedef; then
     26     echo "Skipping test: locale fr_FR not installed"
     27   else
     28     echo "Skipping test: locale fr_FR not supported"
     29   fi
     30   exit 77
     31 }
     32 
     33 tmpfiles="$tmpfiles de_DE fr_FR"
     34 test -d de_DE || mkdir de_DE
     35 test -d de_DE/LC_MESSAGES || mkdir de_DE/LC_MESSAGES
     36 test -d fr_FR || mkdir fr_FR
     37 test -d fr_FR/LC_MESSAGES || mkdir fr_FR/LC_MESSAGES
     38 
     39 : ${MSGFMT=msgfmt}
     40 ${MSGFMT} -o de_DE/LC_MESSAGES/tstlang.mo ${top_srcdir}/tests/gettext-3-1.po
     41 ${MSGFMT} -o fr_FR/LC_MESSAGES/tstlang.mo ${top_srcdir}/tests/gettext-3-2.po
     42 
     43 tmpfiles="$tmpfiles gt-3.ok"
     44 cat <<EOF > gt-3.ok
     45 String1 - Lang1: 1st string
     46 String2 - Lang1: 2nd string
     47 String1 - Lang2: 1st string
     48 String2 - Lang2: 2nd string
     49 String1 - First string for testing.
     50 String2 - Another string for testing.
     51 EOF
     52 
     53 tmpfiles="$tmpfiles gt-3.out"
     54 ./gettext-3-prg > gt-3.out || exit 1
     55 
     56 : ${DIFF=diff}
     57 ${DIFF} gt-3.ok gt-3.out || exit 1
     58 
     59 rm -fr $tmpfiles
     60 
     61 exit 0
     62