blob: 7e766572f3f5e039cbd5eb097896969eecf6a1c1 [file] [log] [blame]
#! /bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ . ../src
# Test general filter execution with Java .properties syntax.
if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
# Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
ac_n= ac_c='
' ac_t=' '
else
ac_n=-n ac_c= ac_t=
fi
else
ac_n= ac_c='\c' ac_t=
fi
# Some fold programs (like SunOS4 and FreeBSD) don't have an option to wrap at
# spaces.
echo abc | fold -b -s -w 20 >/dev/null 2>&1 || {
echo "Skipping test: fold program not POSIX compliant"
Exit 77
}
# Some fold programs (like NetBSD 5.0) remove trailing spaces when wrapping.
echo ab cd | fold -b -s -w 3 | grep ' ' >/dev/null || {
echo "Skipping test: fold program trims trailing spaces"
Exit 77
}
# Some fold programs (like HP-UX) insert a newline at the end, if the last
# line was not terminated with a newline and the -s option was given.
foldoutputcount=`echo $ac_n "abc$ac_c" | fold -b -s -w 20 | wc -c`
foldoutputcount=`echo "$foldoutputcount" | sed -e 's/[ ]//g'`
test "$foldoutputcount" = 3 || {
echo "Skipping test: fold program inserts extra newline"
Exit 77
}
cat <<\EOF > mfi-test3.properties
# HEADER.
#
!=Project-Id-Version\: Bonnie Tyler\n
#: married-men:4
#, fuzzy
!The\ world\ is\ full\ of\ married\ men=So viele verheiratete M\u00e4nner
#: married-men:5
with\ wives\ who\ never\ understand=und ihre Frauen verstehen sie nicht
#: married-men:6
!They're\ looking\ for\ someone\ to\ share=
# schwer zu \u00fcbersetzen...
#: married-men:7
!the\ excitement\ of\ a\ love\ affair=
#: married-men:8
!Just\ as\ soon\ as\ they\ find\ you=
#: married-men:9
!They\ warn\ you\ and\ darn\ you=
EOF
: ${MSGFILTER=msgfilter}
LC_ALL=C \
${MSGFILTER} --properties-input --properties-output -i mfi-test3.properties -o mfi-test3.out fold -b -s -w 20
result=$?
test $result = 0 || { Exit 1; }
cat <<\EOF > mfi-test3.ok
# HEADER.
#
!=Project-Id-Version\: \nBonnie Tyler\n
#: married-men:4
#, fuzzy
!The\ world\ is\ full\ of\ married\ men=So viele \nverheiratete M\u00e4nner
#: married-men:5
with\ wives\ who\ never\ understand=und ihre Frauen \nverstehen sie nicht
#: married-men:6
!They're\ looking\ for\ someone\ to\ share=
# schwer zu \u00fcbersetzen...
#: married-men:7
!the\ excitement\ of\ a\ love\ affair=
#: married-men:8
!Just\ as\ soon\ as\ they\ find\ you=
#: married-men:9
!They\ warn\ you\ and\ darn\ you=
EOF
: ${DIFF=diff}
${DIFF} mfi-test3.ok mfi-test3.out
result=$?
exit $result