3 # Test that we can retrieve the local username via the passwd file,
4 # the Signature profile entry, and via SIGNATURE environment variable.
9 if test -z "${MH_OBJ_DIR}"; then
10 srcdir=`dirname "$0"`/../..
11 MH_OBJ_DIR=`cd "$srcdir" && pwd`; export MH_OBJ_DIR
14 . "$MH_OBJ_DIR/test/common.sh"
20 fullname=`${MH_OBJ_DIR}/test/getfullname`
21 run_test "${MH_LIB_DIR}/ap -format %(myname) ignore" \
22 "$fullname" "GECOS field test"
24 echo "Signature: Some Random Name 1" >> ${MH}
26 run_test "${MH_LIB_DIR}/ap -format %(myname) ignore" \
27 "Some Random Name 1" "MH Profile Signature test"
29 export SIGNATURE="Some Random Name 2"
31 run_test "${MH_LIB_DIR}/ap -format %(myname) ignore" \
32 "${SIGNATURE}" "SIGNATURE Environment test"
34 #### Test escaping of display names.
35 escape="${MH_OBJ_DIR}/test/getfullname"
36 run_test "$escape "'user' 'user' 'no escape'
37 run_test "$escape "'first.last' '"first.last"' 'escape'
38 run_test "$escape "'"first.last"' '"first.last"' 'already escaped'
39 run_test "$escape "'embedded"quote' '"embedded\"quote"' 'embedded quote'
40 run_test "$escape "'"' '"\""' 'special "'
41 run_test "$escape "'(' '"("' 'special ('
42 run_test "$escape "')' '")"' 'special )'
43 #### We stop at the first comma so this one gets eliminated:
44 run_test "$escape "',' '' 'special ,'
45 run_test "$escape "'.' '"."' 'special .'
46 run_test "$escape "':' '":"' 'special :'
47 run_test "$escape "';' '";"' 'special ;'
48 run_test "$escape "'<' '"<"' 'special <'
49 run_test "$escape "'>' '">"' 'special >'
50 run_test "$escape "'@' '"@"' 'special @'
51 run_test "$escape "'[' '"["' 'special ['
52 run_test "$escape "'\\' '"\\"' 'special \\'
53 run_test "$escape "']' '"]"' 'special ]'