setup_test
-runtest()
-{
- testoutput=$(${MH_LIB_DIR}/ap -format "%(mymbox{text})" "$1")
-
- if [ -z "${testoutput}" ]; then
- echo "Test program did not return anything for $3"
- exit 1
- fi
-
- if [ "${testoutput}" -ne $2 ]; then
- echo "Did not get expected output for $3"
- exit 1
- fi
-}
-
-user="$(id -un)"
-host="$(hostname)"
-
-runtest "${user}" 1 "Basic user test"
-runtest "${user}@${host}" 1 "Basic user@host test"
-runtest "nosuchuser@nosuchhost.blah" 0 "Basic non-matching test"
+#### 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=`${MH_LIB_DIR}/ap -format '%(me)' 0`
+host=`${MH_OBJ_DIR}/test/getfqdn`
+
+output=`${MH_LIB_DIR}/ap -format '%(mymbox{text})' "${user}"`
+run_test "echo $output" 1 "Basic user test"
+output=`${MH_LIB_DIR}/ap -format '%(mymbox{text})' "${user}@${host}"`
+run_test "echo $output" 1 "Basic user@host test"
+run_test "${MH_LIB_DIR}/ap -format %(mymbox{text}) nosuchuser@nosuchhost.blah" \
+ 0 "Basic non-matching test"
myname="Random User <random@user.something.com>"
+#### 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}
-runtest "${myname}" 1 "Local-Mailbox test"
-runtest "${user}@${host}" 0 "Local-mailbox overriding user@host test"
+run_test "echo `${MH_LIB_DIR}/ap -format '%(mymbox{text})' "${myname}"`" \
+ 1 "Local-Mailbox test"
+
+output=`${MH_LIB_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 `${MH_LIB_DIR}/ap -format '%(mymbox{text})' "${myname}"`" \
+ 1 "Local-Mailbox with Alternate-Mailbox test"
-exit 0
+exit $failed