From 19210f529e50b1d1d66f7e3bdb31a76713b1a7c9 Mon Sep 17 00:00:00 2001 From: David Levine Date: Sun, 1 Jul 2012 08:32:18 -0500 Subject: [PATCH] Wrapped some shell variables with quotes so the tests have a chance of running if the current directory has a character such as a space in it. Though the tests themselves need the same help for them to work. Also, added mention of Heirloom shell to test/README. --- Makefile.am | 8 ++++---- docs/pending-release-notes | 16 +++++++++++++++- test/README | 4 ++++ test/common.sh.in | 27 ++++++++++++++------------- 4 files changed, 37 insertions(+), 18 deletions(-) diff --git a/Makefile.am b/Makefile.am index 37568c8..1f83352 100644 --- a/Makefile.am +++ b/Makefile.am @@ -33,10 +33,10 @@ auxexecdir = @libdir@ ## ## nmh _does_ have a test suite! ## -TESTS_ENVIRONMENT = MH_OBJ_DIR=@abs_builddir@ \ - MH_TEST_DIR=@abs_builddir@/test/testdir \ - auxexecdir=$(auxexecdir) bindir=$(bindir) \ - mandir=$(mandir) sysconfdir=$(sysconfdir) \ +TESTS_ENVIRONMENT = MH_OBJ_DIR="@abs_builddir@" \ + MH_TEST_DIR="@abs_builddir@/test/testdir" \ + auxexecdir="$(auxexecdir)" bindir="$(bindir)" \ + mandir="$(mandir)" sysconfdir="$(sysconfdir)" \ MULTIBYTE_ENABLED=$(MULTIBYTE_ENABLED) \ $(TESTS_SHELL) ## Keep at end of TESTS_ENVIRONMENT. ## diff --git a/docs/pending-release-notes b/docs/pending-release-notes index 98912e4..db1f5d9 100644 --- a/docs/pending-release-notes +++ b/docs/pending-release-notes @@ -7,10 +7,15 @@ NEW FEATURES - All nmh programs will now warn about multiple profile entries for the same non-null, non-comment component. In previous versions, all but the first were silently ignored. -- mhmail now supports all post(8) options, and optionally can use +- mhmail now supports all post(8) options, or optionally can use send(1) with all of its options. Its formerly undocumented -resent switch has been documented. And it has new -attach, -headerfield, and -send/-nosend switches. +- Default to flock() locking on OpenBSD and Darwin. +- Added -directives support to mhbuild(1) to control whether or not + mhbuild will honor MIME directives by default. And added support + for special #on/#off/#pop directives to control the MIME directive + processing state. ---------------------------- OBSOLETE/DEPRECATED FEATURES @@ -34,3 +39,12 @@ OBSOLETE/DEPRECATED FEATURES http://smtpfilter.sourceforge.net/esmtp.html - conflict(8) is deprecated and will be removed from the next release. - mhtest(8) is deprecated and will be removed from the next release. + +--------- +BUG FIXES +--------- + +- Replaced utilities that operate on pbm files with those that operate + on pnm files in etc/mhn.defaults [Bug #15152]. +- Removed obsolete BUGS section at end of rcvstore(1) man page [Bug #4361]. +- Fixed -nocc me doesn't account for Alternate-Mailboxes [Bug #36635]. diff --git a/test/README b/test/README index 7bf605b..7b1de5f 100644 --- a/test/README +++ b/test/README @@ -71,6 +71,10 @@ in the test scripts. In particular: - Avoid depending on the exact format of output from system (non-nmh) programs. +The Heirloom Bourne Shell, http://heirloom.sourceforge.net/sh.html, +catches many non-portable shell constructs, such as $(), $(()), !, and +assignment in export statements. + checkbashisms, available at http://sourceforge.net/projects/checkbaskisms/, might help some catch problems. Though it misses all of the troublesome constructs, except for assignment in an export statement, listed above. diff --git a/test/common.sh.in b/test/common.sh.in index aa34927..1c1633b 100644 --- a/test/common.sh.in +++ b/test/common.sh.in @@ -18,7 +18,7 @@ test -z "$MULTIBYTE_ENABLED" && MULTIBYTE_ENABLED="@MULTIBYTE_ENABLED@" export MH_TEST_DIR auxexecdir bindir mandir sysconfdir pagerpath export MULTIBYTE_ENABLED -test -z "$MH_INST_DIR" && MH_INST_DIR=${MH_TEST_DIR}/inst +test -z "$MH_INST_DIR" && MH_INST_DIR="${MH_TEST_DIR}/inst" export MH_INST_DIR unset MHBUILD MHCONTEXT MHMTSUSERCONF MHN MHSHOW MHSTORE MHTMPDIR @@ -133,33 +133,34 @@ run_test() { setup_test () { - MH=${MH_TEST_DIR}/Mail/.mh_profile - MHMTSCONF=${MH_INST_DIR}${sysconfdir}/mts.conf - PATH=${MH_INST_DIR}${bindir}:${PATH} - MH_LIB_DIR=${MH_INST_DIR}${auxexecdir} + MH="${MH_TEST_DIR}/Mail/.mh_profile" + MHMTSCONF="${MH_INST_DIR}${sysconfdir}/mts.conf" + PATH="${MH_INST_DIR}${bindir}:${PATH}" + MH_LIB_DIR="${MH_INST_DIR}${auxexecdir}" export MH MHMTSCONF MH_LIB_DIR PATH # # Only install once # - if [ -d ${MH_INST_DIR}${bindir} ]; then + if [ -d "${MH_INST_DIR}${bindir}" ]; then : else - (cd ${MH_OBJ_DIR} && make DESTDIR=${MH_INST_DIR} SETGID_MAIL= install) || + (cd "${MH_OBJ_DIR}" && + make DESTDIR="${MH_INST_DIR}" SETGID_MAIL= install) || exit 1 #### Don't test with sendmail because it would really send the #### mail. If configured to use sendmail, change to smtp instead #### so that we use fakesmtp. - sed -e 's/mts: *sendmail/mts: smtp/' ${MHMTSCONF} >${MHMTSCONF}.new - mv -f ${MHMTSCONF}.new ${MHMTSCONF} + sed -e 's/mts: *sendmail/mts: smtp/' "${MHMTSCONF}" >"${MHMTSCONF}.new" + mv -f "${MHMTSCONF}.new" "${MHMTSCONF}" fi # clean old test data - trap "rm -rf $MH_TEST_DIR/Mail" 0 + trap "rm -rf '$MH_TEST_DIR/Mail'" 0 # setup test data - mkdir $MH_TEST_DIR/Mail || exit 1 - cat > $MH < "$MH" < /dev/null -- 1.7.10.4