#!/bin/sh # # Test that the %(mymbox) function correctly determines whether or not # a particular email address is "mine" or not # if test -z "${MH_OBJ_DIR}"; then srcdir=`dirname "$0"`/../.. MH_OBJ_DIR=`cd "$srcdir" && pwd`; export MH_OBJ_DIR fi . "$MH_OBJ_DIR/test/common.sh" setup_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 " #### 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}"`" \ 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 $failed