X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/a3bf69c3a988b0de2126fbfe6804c61ef24a8896..3de39642e3207651b71d6090e5753d23258c778b:/test/format/test-mymbox diff --git a/test/format/test-mymbox b/test/format/test-mymbox index 5a39d59f..42f584c1 100755 --- a/test/format/test-mymbox +++ b/test/format/test-mymbox @@ -13,24 +13,79 @@ fi setup_test -user=${LOGNAME:-`id -un`} -host=`${MH_OBJ_DIR}/test/getfqdn` - -run_test "${MH_LIB_DIR}/ap -format %(mymbox{text}) ${user}" \ - 1 "Basic user test" -run_test "${MH_LIB_DIR}/ap -format %(mymbox{text}) ${user}@${host}" \ - 1 "Basic user@host test" -run_test "${MH_LIB_DIR}/ap -format %(mymbox{text}) nosuchuser@nosuchhost.blah" \ +#### Use ap to get the username. That will either be what's in the +#### Local-Mailbox profile component, which we don't use in the test +#### suite, or the user's login name. ap will escape (quote) it if +#### needed. +user=`run_prog ${MH_LIBEXEC_DIR}/ap -format '%(me)' 0` +host=`${MH_OBJ_DIR}/test/getcanon` + +output=`run_prog ${MH_LIBEXEC_DIR}/ap -format '%(mymbox{text})' "${user}"` +run_test "echo $output" 1 "Basic user test" +output=`run_prog ${MH_LIBEXEC_DIR}/ap -format '%(mymbox{text})' "${user}@${host}"` +run_test "echo $output" 1 "Basic user@host test" +run_test "${MH_LIBEXEC_DIR}/ap -format %(mymbox{text}) nosuchuser@nosuchhost.blah" \ 0 "Basic non-matching test" myname="Random User " -echo "Local-Mailbox: ${myname}" >> ${MH} +#### Remove existing Local-Mailbox: profile component, if any. Then +#### add one. +grep -v 'Local-Mailbox: ' "$MH" > "$MH".new +mv -f "$MH".new "$MH" +echo "Local-Mailbox: ${myname}" >> "$MH" -run_test "echo `${MH_LIB_DIR}/ap -format '%(mymbox{text})' "${myname}"`" \ +run_test "echo \ + `run_prog ${MH_LIBEXEC_DIR}/ap -format '%(mymbox{text})' "${myname}"`" \ 1 "Local-Mailbox test" -run_test "${MH_LIB_DIR}/ap -format %(mymbox{text}) ${user}@${host}" \ - 0 "Local-mailbox overriding user@host test" +output=`run_prog ${MH_LIBEXEC_DIR}/ap -format '%(mymbox{text})' "${user}@${host}"` +run_test "echo $output" 0 "Local-mailbox overriding user@host test" + +# Add an Alternate-Mailbox. This caused ismymbox() to lose the +# Local-Mailbox, Bug #36635: -nocc me doesn't account for +# Alternate-Mailboxes. +printf 'Alternate-Mailboxes: user@example.com\n' >> $MH +run_test "echo \ + `run_prog ${MH_LIBEXEC_DIR}/ap -format '%(mymbox{text})' "${myname}"`" \ + 1 "Local-Mailbox with Alternate-Mailbox test" + +# check getmymbox, without match +run_test 'fmttest -message -format %(getmymbox{from}) first' '' + +# check getmyaddr, without match +run_test 'fmttest -message -format %(getmyaddr{from}) first' '' + +grep -v 'Alternate-Mailboxes: ' "$MH" > "$MH".new +mv -f "$MH".new "$MH" +cat >>"$MH" <' + +# check getmyaddr, with match +run_test 'fmttest -message -format %(getmyaddr{from}) first' \ + 'test1@example.com' + +# check getmymbox and getmyaddr, with match of other than first address in +# component +cat >`mhpath new` <<'EOF' +From: Test11 +Cc: Test0 , Test3 , + Test1 , Test2 +To: Some User +Date: Fri, 29 Sep 2006 00:00:00 +Message-Id: 11@test.nmh +Subject: Testing message 11 + +This is message number 11 +EOF +run_test 'fmttest -message -format %(getmymbox{cc}) last' \ + 'Test1 ' +run_test 'fmttest -message -format %(getmyaddr{cc}) last' \ + 'test1@example.com' exit $failed