X-Git-Url: http://git.marmaro.de/?a=blobdiff_plain;f=test%2Fformat%2Ftest-myname;h=d9dca2dcc5676f16bc5f1f98e242b8fc2da9a68b;hb=87e2eacc63f1ecc60d58a01921cdcf8b1aa55171;hp=dc86ea5e45aadf3f64cd1aea99d205b616269311;hpb=4d6cfbb1c9b425cb693e5189a19e132c67f5494a;p=mmh diff --git a/test/format/test-myname b/test/format/test-myname index dc86ea5..d9dca2d 100755 --- a/test/format/test-myname +++ b/test/format/test-myname @@ -4,6 +4,8 @@ # the Signature profile entry, and via SIGNATURE environment variable. # +set -e + if test -z "${MH_OBJ_DIR}"; then srcdir=`dirname "$0"`/../.. MH_OBJ_DIR=`cd "$srcdir" && pwd`; export MH_OBJ_DIR @@ -13,10 +15,11 @@ fi setup_test -unset SIGNATURE +unset SIGNATURE +fullname=`${MH_OBJ_DIR}/test/getfullname` run_test "${MH_LIB_DIR}/ap -format %(myname) ignore" \ - "`${MH_OBJ_DIR}/test/getfullname`" "GECOS field test" + "$fullname" "GECOS field test" echo "Signature: Some Random Name 1" >> ${MH} @@ -28,4 +31,25 @@ export SIGNATURE="Some Random Name 2" run_test "${MH_LIB_DIR}/ap -format %(myname) ignore" \ "${SIGNATURE}" "SIGNATURE Environment test" +#### Test escaping of display names. +escape="${MH_OBJ_DIR}/test/getfullname" +run_test "$escape "'user' 'user' 'no escape' +run_test "$escape "'first.last' '"first.last"' 'escape' +run_test "$escape "'"first.last"' '"first.last"' 'already escaped' +run_test "$escape "'embedded"quote' '"embedded\"quote"' 'embedded quote' +run_test "$escape "'"' '"\""' 'special "' +run_test "$escape "'(' '"("' 'special (' +run_test "$escape "')' '")"' 'special )' +#### We stop at the first comma so this one gets eliminated: +run_test "$escape "',' '' 'special ,' +run_test "$escape "'.' '"."' 'special .' +run_test "$escape "':' '":"' 'special :' +run_test "$escape "';' '";"' 'special ;' +run_test "$escape "'<' '"<"' 'special <' +run_test "$escape "'>' '">"' 'special >' +run_test "$escape "'@' '"@"' 'special @' +run_test "$escape "'[' '"["' 'special [' +run_test "$escape "'\\' '"\\"' 'special \\' +run_test "$escape "']' '"]"' 'special ]' + exit $failed