Rearranged test suite environment variables so that individual tests
[mmh] / test / mhbuild / test-forw
1 #!/bin/sh
2 ######################################################
3 #
4 # Test forwarding messages (including RFC-934 mode).
5 #
6 ######################################################
7
8 if test -z "${MH_OBJ_DIR}"; then
9     srcdir=`dirname $0`/../..
10     MH_OBJ_DIR=`cd $srcdir && pwd`; export MH_OBJ_DIR
11 fi
12
13 . "$MH_OBJ_DIR/test/common.sh"
14
15 setup_test
16
17 # TODO: Move to a common file tests can source; need more framework...
18 failed=0
19 check() {
20     diff -u $expected $actual
21     if [ $? -ne 0 ]; then
22         failed=$((failed + 1))
23     fi
24 }
25
26 # Make a draft file forwarding two messages.
27 mkdraft() {
28     cat > $draft <<EOF
29 To:
30 cc:
31 Fcc: +outbox
32 Subject:
33 --------
34 #forw [forwarded messages] +inbox 1 2
35 EOF
36 }
37
38 # Munge the Content-Id from the draft after mhbuild, so we have a reliable
39 # value to check.
40 mungedraft() {
41     sed 's/\(Content-ID:\) <[^>][^>]*>/\1 <TESTID>/' $draft > $actual
42 }
43
44 draft=$MH_TEST_DIR/$$.draft
45 expected=$MH_TEST_DIR/$$.expected
46 actual=$MH_TEST_DIR/$$.actual
47
48 # check mhbuild
49 cat > $expected <<EOF
50 To:
51 cc:
52 Fcc: +outbox
53 Subject:
54 MIME-Version: 1.0
55 Content-Type: multipart/digest; boundary="----- =_aaaaaaaaaa0"
56 Content-ID: <TESTID>
57 Content-Description: forwarded messages
58
59 ------- =_aaaaaaaaaa0
60 Content-Type: message/rfc822
61
62 From: Test1 <test1@example.com>
63 To: Some User <user@example.com>
64 Date: Fri, 29 Sep 2006 00:00:00
65 Subject: Testing message 1
66
67 This is message number 1
68
69 ------- =_aaaaaaaaaa0
70 Content-Type: message/rfc822
71
72 From: Test2 <test2@example.com>
73 To: Some User <user@example.com>
74 Date: Fri, 29 Sep 2006 00:00:00
75 Subject: Testing message 2
76
77 This is message number 2
78
79 ------- =_aaaaaaaaaa0--
80 EOF
81 mkdraft
82 mhbuild $draft
83 mungedraft
84 check
85
86 # check mhbuild -rfc934
87 cat > $expected <<EOF
88 To:
89 cc:
90 Fcc: +outbox
91 Subject:
92 MIME-Version: 1.0
93 Content-Type: multipart/digest; boundary="----- =_aaaaaaaaaa0"
94 Content-ID: <TESTID>
95 Content-Description: forwarded messages
96
97
98 ------- =_aaaaaaaaaa0
99
100 From: Test1 <test1@example.com>
101 To: Some User <user@example.com>
102 Date: Fri, 29 Sep 2006 00:00:00
103 Subject: Testing message 1
104
105 This is message number 1
106
107 ------- =_aaaaaaaaaa0
108
109 From: Test2 <test2@example.com>
110 To: Some User <user@example.com>
111 Date: Fri, 29 Sep 2006 00:00:00
112 Subject: Testing message 2
113
114 This is message number 2
115
116 ------- =_aaaaaaaaaa0--
117 EOF
118 mkdraft
119 mhbuild -rfc934 $draft
120 mungedraft
121 check
122
123 exit $failed