#!/bin/sh ###################################################### # # Test msgchk # Only tests checking of local maildrop, does not # test checking of POP server. # ###################################################### set -e 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 expected=$MH_TEST_DIR/$$.expected expected_err=$MH_TEST_DIR/$$.expected_err actual=$MH_TEST_DIR/$$.actual actual_err=$MH_TEST_DIR/$$.actual_err # check -help # Only look at first 9 lines because the rest depend on # whether sasl support was configured in. cat >"$expected" <"$actual" 2>&1 check "$expected" "$actual" # check -version case `msgchk -v` in msgchk\ --*) ;; * ) printf '%s: msgchk -v generated unexpected output\n' "$0" >&2 failed=`expr ${failed:-0} + 1`;; esac # check unknown switch run_test "msgchk -nonexistent" 'msgchk: -nonexistent unknown' # check with no arguments and no mail waiting run_test 'msgchk' "You don't have any mail waiting" # Use maildrop specified in mts.conf, i.e., # ${MH_TEST_DIR}/Mail/maildrop, which should not yet exist. "${MH_LIB_DIR}"/rcvpack <"${MH_TEST_DIR}"/Mail/inbox/1 \ "${MH_TEST_DIR}"/Mail/maildrop # check with no arguments and mail waiting cat >"$expected" <"$actual" check "$expected" "$actual" # check -date cat >"$expected" <"$actual" check "$expected" "$actual" # check -nodate run_test 'msgchk -nodate' 'You have new mail waiting' # check -notify mail, when there is mail run_test 'msgchk -notify mail -nodate' 'You have new mail waiting' # check -notify nomail, when there is mail run_test 'msgchk -notify nomail -nodate' 'You have new mail waiting' # check -notify all, when there is mail run_test 'msgchk -notify nomail -notify all -nodate' 'You have new mail waiting' # check -nonotify mail, when there is mail run_test 'msgchk -nonotify mail -nodate' '' # check -nonotify nomail, when there is mail run_test 'msgchk -nonotify nomail -nodate' 'You have new mail waiting' # check -nonotify all, when there is mail run_test 'msgchk -nonotify nomail -nonotify all -nodate' '' inc -silent # check -notify mail, when there is no mail run_test 'msgchk -notify mail -nodate' "You don't have any mail waiting" # check -notify nomail, when there is no mail run_test 'msgchk -notify nomail -nodate' "You don't have any mail waiting" # check -notify all, when there is no mail run_test 'msgchk -notify nomail -nonotify all -nodate' '' # check -nonotify mail, when there is no mail run_test 'msgchk -nonotify mail -nodate' "You don't have any mail waiting" # check -nonotify nomail, when there is no mail run_test 'msgchk -nonotify nomail -nodate' '' # check -nonotify all, when there is no mail run_test 'msgchk -nonotify nomail -nonotify all -nodate' '' exit ${failed:-0}