Beginnings of a test suite for the mh-format support in forw.
authorKen Hornstein <kenh@pobox.com>
Sun, 26 Feb 2012 17:12:28 +0000 (12:12 -0500)
committerKen Hornstein <kenh@pobox.com>
Mon, 27 Feb 2012 01:06:31 +0000 (20:06 -0500)
Makefile.am
test/forw/test-forw-format [new file with mode: 0755]

index 3f1650d..d99d46c 100644 (file)
@@ -44,7 +44,7 @@ TESTS = test/bad-input/test-header test/comp/test-comp-format \
        test/folder/test-create \
        test/folder/test-total test/format/test-localmbox \
        test/format/test-myname test/format/test-myhost \
-       test/format/test-mymbox \
+       test/format/test-mymbox test/forw/test-forw-format \
        test/inc/test-deb359167 test/inc/test-eom-align \
        test/manpages/test-manpages test/mhbuild/test-forw \
        test/mhpath/test-mhpath \
diff --git a/test/forw/test-forw-format b/test/forw/test-forw-format
new file mode 100755 (executable)
index 0000000..dc73c6c
--- /dev/null
@@ -0,0 +1,75 @@
+#!/bin/sh
+#
+# Tests to see if the -from, -to, -cc, -fcc, and -subject switches to
+# "forw" work correctly.
+#
+
+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
+
+#
+# Create a test template file (we create one here just in case the master
+# one changes)
+#
+
+form="${MH_TEST_DIR}/$$.forwcomps"
+cat > $form <<EOF
+%(void{nmh-from})%(void(width))%(putaddr From: )
+%(void{nmh-to})%(void(width))%(putaddr To: )
+%(void{nmh-cc})%(void(width))%(putaddr cc: )
+Fcc: %{fcc}
+Subject:%<{nmh-subject} %(trim)%(putlit)%?{subject} %(trim)%(putlit) (fwd)%>
+--------
+EOF
+
+expected="${MH_TEST_DIR}/$$.expected"
+actual="${MH_TEST_DIR}/Mail/draft"
+from="Mr Test User <test@user.com>"
+to1="User One <userone@test.com>"
+to2="User Two <usertwo@test.com>"
+cc1="CC User One <ccuserone@test.com>"
+cc2="CC User Two <ccusertwo@test.com>"
+cc3="CC User Three <ccuserthree@test.com>"
+cc4="CC User Four <ccuserfour@test.com>"
+fcc1="+nosuchmailbox"
+fcc2="+nosuchmailbox2"
+subject="Totally bogus subject"
+
+cat > "$expected" <<EOF
+From: ${from}
+To: ${to1}, ${to2}
+cc: ${cc1},
+    ${cc2},
+    ${cc3},
+    ${cc4}
+Fcc: ${fcc1}, ${fcc2}
+Subject: ${subject}
+--------
+
+------- Forwarded Message
+
+EOF
+
+cat `mhpath +inbox 1` >> "$expected"
+
+cat >> "$expected" <<EOF
+
+------- End of Forwarded Message
+
+EOF
+
+forw -editor true -form "${form}" -from "${from}" -to "${to1}" -to "${to2}" \
+    -cc "${cc1}" -cc "${cc2}" -cc "${cc3}" -cc "${cc4}" -fcc "${fcc1}" \
+    -fcc "${fcc2}" -subject "${subject}" -width 60 -nowhatnowproc 1 || exit 1
+
+check "${expected}" "${actual}"
+
+test "${failed:-0}" -eq 0 && rm "${form}"
+
+exit $failed