#### The following variables are set by "make check". Ensure
#### that they are set here so that individual tests can be run
#### outside of make. Requires that MH_OBJ_DIR be set on entry.
-test -z "$MH_TEST_DIR" && MH_TEST_DIR="$MH_OBJ_DIR/test/testdir"
+#### Use the result of cd and pwd -P so that the result will agree
+#### with what getcwd(3) returns.
+test -d "$MH_OBJ_DIR/test/testdir" || mkdir -p "$MH_OBJ_DIR/test/testdir"
+test -z "$MH_TEST_DIR" && MH_TEST_DIR=`cd "$MH_OBJ_DIR/test/testdir" && pwd -P`
+export MH_TEST_DIR
test -z "$MH_INST_DIR" && MH_INST_DIR="${MH_TEST_DIR}/inst"
test -z "$MH_VERSION" && MH_VERSION="@VERSION@"
test -z "$prefix" && prefix=@prefix@
test -z "$OAUTH_SUPPORT" && OAUTH_SUPPORT="@OAUTH_SUPPORT@"
test -z "$CURL_USER_AGENT" && CURL_USER_AGENT="@CURL_USER_AGENT@"
+#### If w3m is used, HOME needs to be set, assuming default w3m config.
+#### So make sure that HOME is set to avoid run-time warning about not
+#### being able to create config directory.
+test -z "$HOME" && HOME=$MH_TEST_DIR
+HOME=$MH_TEST_DIR
+export HOME
+
+#### If w3m is used, HOME needs to be set, assuming default w3m config.
+#### So make sure that HOME is set to avoid run-time warning about not
+#### being able to create config directory.
+test -z "$HOME" && HOME=$MH_TEST_DIR
+HOME=$MH_TEST_DIR
+export HOME
+
unset MAILDROP MHBUILD MHCONTEXT MHMTSUSERCONF MHN MHSHOW MHSTORE
unset MHLDEBUG MHPDEBUG MHWDEBUG PAGER
#### Set LC_ALL in individual tests as needed. Unset these so
# clean old test data on exit
trap cleanup 0
+
# setup test data
mkdir -p "$MH_TEST_DIR/Mail" || exit 1
cat > "$MH" <<EOF || exit 1