export HOME
unset MAILDROP MHBUILD MHCONTEXT MHMTSUSERCONF MHN MHSHOW MHSTORE
-unset MHLDEBUG MHPDEBUG MHWDEBUG PAGER
+unset MHLDEBUG MHPDEBUG MHWDEBUG PAGER XOAUTH SMTPUTF8
#### Set LC_ALL in individual tests as needed. Unset these so
#### that we don't depend on user's settings in other tests.
unset LANG LC_ALL LC_CTYPE
}
# Skip test if none of the offered locales are supported.
+# As side effect, use the first locale that is found. Note that
+# some platforms allow, by way of example, en_US.UTF-8 to be used
+# even though en_US.UTF8 is listed by locale -a. But by setting
+# LC_ALL here, we don't rely on that.
require_locale ()
{
for locale in "$@"; do
if locale -a | grep -i "$locale" >/dev/null; then
+ LC_ALL="$locale"; export LC_ALL
return
fi
done
else
echo
#### POSIX diff should support -c.
-# diff -c "$first" "$second" || true
- if ! diff -c "$first" "$second"; then
- echo "$first:"; od -t ax "$first"
- echo "$second:"; od -t ax "$second"
- fi
+ diff -c "$first" "$second" || true
echo
echo "$0: $label failed, outputs are in $first and $second."
failed=`expr ${failed:-0} + 1`
#### Function to set the test name, and whatever the future brings.
start_test() {
- nmh_tests_testname="$1"
+ #### run_test disables exit on non-zero status, but does increment
+ #### failed. Don't overwrite nmh_tests_testname if there was a
+ #### failure; remember the first test that failed.
+ [ ${failed:-0} -eq 0 ] && nmh_tests_testname="$1"
}
#### Corresponding function to indicate that the test has finished. It need
#### not be called after each test, just the last one in a file.
finish_test() {
- unset nmh_tests_testname
+ #### run_test disables exit on non-zero status, but does increment
+ #### failed. Don't unset nmh_tests_testname if there was a failure.
+ [ ${failed:-0} -eq 0 ] && unset nmh_tests_testname
}
setup_test ()
fi
folder -create +inbox > /dev/null
+ #### Suppress warnings about a new version.
+ #### mhparam version includes the nmh- prefix, so be consistent with that.
+ printf 'Version: nmh-%s\n' "${MH_VERSION}" >> "${MH_TEST_DIR}"/Mail/context
+
# create 10 basic messages
for i in 1 2 3 4 5 6 7 8 9 10;
do