Moved check() function from individual tests to common.sh.
[mmh] / test / bad-input / test-header
1 #!/bin/sh
2 ######################################################
3 #
4 # Test bogus headers (no blank line before body).
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 expected=$MH_TEST_DIR/$$.expected
18 actual=$MH_TEST_DIR/$$.actual
19
20 # Write message with bogus header field (missing blank line, really).
21 msgfile=$(mhpath new)
22 msgnum=$(basename $msgfile)
23 cat > $msgfile <<EOF
24 Date: Sun, 18 Dec 2005 00:52:39 +0100
25 From: foo@example.edu
26 To: bar@example.edu
27 Subject: test
28 This is a multi-part message in MIME format.
29
30 I am a stupid spammer.
31 EOF
32
33 # check scan
34 cat > $expected <<EOF
35   11  12/18 foo@example.edu    test<<This is a multi-part message in MIME forma
36 EOF
37 scan $msgnum > $actual 2>&1
38 check $expected $actual
39
40 # check show (mhl)
41 cat > $expected <<EOF
42 (Message inbox:11)
43
44 Date:    Sun, 18 Dec 2005 00:52:39 +0100
45 To:      bar@example.edu
46 From:    foo@example.edu
47 Subject: test
48
49
50 This is a multi-part message in MIME format.
51
52
53 I am a stupid spammer.
54 EOF
55 show $msgnum > $actual 2>&1
56 check $expected $actual
57
58 # check mhshow
59 cat > $expected <<EOF
60 Date:    Sun, 18 Dec 2005 00:52:39 +0100
61 To:      bar@example.edu
62 From:    foo@example.edu
63 Subject: test
64
65
66 part       text/plain                  70
67
68 This is a multi-part message in MIME format.
69
70 I am a stupid spammer.
71 EOF
72 mhshow -nopause $msgnum > $actual 2>&1
73 check $expected $actual
74
75 exit $failed