| #! /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 |