Allow selection of locking type.
[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 # Make a draft file forwarding two messages.
18 mkdraft() {
19     cat > $draft <<EOF
20 To:
21 cc:
22 Fcc: +outbox
23 Subject:
24 --------
25 #forw [forwarded messages] +inbox 1 2
26 EOF
27 }
28
29 # Munge the Content-Id from the draft after mhbuild, so we have a reliable
30 # value to check.
31 mungedraft() {
32     sed 's/\(Content-ID:\) <[^>][^>]*>/\1 <TESTID>/' $draft > $actual
33 }
34
35 draft="$MH_TEST_DIR/$$.draft"
36 draftorig="$MH_TEST_DIR/,$$.draft.orig"
37 expected="$MH_TEST_DIR/$$.expected"
38 actual="$MH_TEST_DIR/$$.actual"
39
40 # check mhbuild
41 cat > $expected <<EOF
42 To:
43 cc:
44 Fcc: +outbox
45 Subject:
46 MIME-Version: 1.0
47 Content-Type: multipart/digest; boundary="----- =_aaaaaaaaaa0"
48 Content-ID: <TESTID>
49 Content-Description: forwarded messages
50
51 ------- =_aaaaaaaaaa0
52 Content-Type: message/rfc822
53
54 From: Test1 <test1@example.com>
55 To: Some User <user@example.com>
56 Date: Fri, 29 Sep 2006 00:00:00
57 Subject: Testing message 1
58
59 This is message number 1
60
61 ------- =_aaaaaaaaaa0
62 Content-Type: message/rfc822
63
64 From: Test2 <test2@example.com>
65 To: Some User <user@example.com>
66 Date: Fri, 29 Sep 2006 00:00:00
67 Subject: Testing message 2
68
69 This is message number 2
70
71 ------- =_aaaaaaaaaa0--
72 EOF
73 mkdraft
74 mhbuild $draft
75 mungedraft
76 check $expected $actual
77 test ${failed:-0} -eq 0  &&  rm "$draft" "$draftorig"
78
79 # check mhbuild -rfc934
80 cat > $expected <<EOF
81 To:
82 cc:
83 Fcc: +outbox
84 Subject:
85 MIME-Version: 1.0
86 Content-Type: multipart/digest; boundary="----- =_aaaaaaaaaa0"
87 Content-ID: <TESTID>
88 Content-Description: forwarded messages
89
90
91 ------- =_aaaaaaaaaa0
92
93 From: Test1 <test1@example.com>
94 To: Some User <user@example.com>
95 Date: Fri, 29 Sep 2006 00:00:00
96 Subject: Testing message 1
97
98 This is message number 1
99
100 ------- =_aaaaaaaaaa0
101
102 From: Test2 <test2@example.com>
103 To: Some User <user@example.com>
104 Date: Fri, 29 Sep 2006 00:00:00
105 Subject: Testing message 2
106
107 This is message number 2
108
109 ------- =_aaaaaaaaaa0--
110 EOF
111 mkdraft
112 mhbuild -rfc934 $draft
113 mungedraft
114 check $expected $actual
115 test ${failed:-0} -eq 0  &&  rm "$draft" "$draftorig"
116
117 exit $failed