#!/bin/sh # # Tests to see if bursting MIME messages works correctly. # 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 # # Create a one-part test message that we can burst # cat > "${MH_TEST_DIR}/Mail/inbox/11" < To: Test Recipient Date: Friday, 29 Sep 2006 00:00:00 Subject: Test MIME digest MIME-Version: 1.0 Content-type: message/rfc822 From: Mister Burster To: Nobody 1 Date: Thursday, 28 Sep 2006 00:01:00 Subject: Message one - - This line should not be unstuffed EOF run_prog burst 11 run_test 'scan -width 80 11-last' "\ 11 09/29 Test Burst Messag Test MIME digest< "${MH_TEST_DIR}/Mail/inbox/14" < To: Test Recipient Date: Friday, 29 Sep 2006 00:00:00 Subject: Test digest MIME-Version: 1.0 Content-Type: multipart/digest; boundary="----- =_aaaaaaaaaa0" This is a preamble ------- =_aaaaaaaaaa0 Content-Type: message/rfc822 From: Mister Burster To: Nobody 1 Date: Thursday, 28 Sep 2006 00:01:00 Subject: Message one - -This is message one ------- =_aaaaaaaaaa0 From: Mister Burster To: Nobody 2 Date: Thursday, 28 Sep 2006 00:02:00 Subject: Message two This is message two - For real. ------- =_aaaaaaaaaa0 From: Mister Burster To: Nobody 3 Date: Thursday, 28 Sep 2006 00:03:00 Subject: Message three Will this one work? ------- =_aaaaaaaaaa0-- EOF run_prog burst 14 || exit run_test 'scan -width 80 14-last' "\ 14 09/29 Test Burst Messag Test digest<> 16 09/28 Mister Burster Message two<> 17 09/28 Mister Burster Message three<>" # # Check to see if each message is what we expect # run_test 'show -noheader -noshow 15' \ "From: Mister Burster To: Nobody 1 Date: Thursday, 28 Sep 2006 00:01:00 Subject: Message one - -This is message one" run_test 'show -noheader -noshow 16' \ "From: Mister Burster To: Nobody 2 Date: Thursday, 28 Sep 2006 00:02:00 Subject: Message two This is message two - For real." # # The CR/LF that appears right before the boundary line is considered part # of the boundary line, so this has the practical effect of "eating" a # blank line if it's before the boundary (RFC 2046. 5.1.1). So make sure # a double blank line results in only one blank line at the end of a message. # expected="${MH_TEST_DIR}/$$.expected" cat > "${expected}" < To: Nobody 3 Date: Thursday, 28 Sep 2006 00:03:00 Subject: Message three Will this one work? EOF check "${expected}" `mhpath 17` exit $failed