]> diplodocus.org Git - nmh/blobdiff - test/mhlist/test-mhlist
One more attempt at getting the buildbot $PATH correct on Solaris.
[nmh] / test / mhlist / test-mhlist
index f61a1366d12073f2499e07c5e9fea7b8e5eb38b3..b1d59d109014a95a93d4be03eca4d7443031e8e8 100755 (executable)
@@ -26,7 +26,7 @@ run_test 'mhlist' 'mhlist: no cur message'
 # check with no options and current message
 folder +inbox 5 > /dev/null
 cat > $expected <<EOF
- msg part  type/subtype              size description                         
+ msg part  type/subtype              size description
    5       text/plain                  25
 EOF
 mhlist > $actual 2>&1
@@ -53,7 +53,7 @@ check $expected $actual
 
 # check -file -
 cat > $expected <<EOF
- msg part  type/subtype              size description                         
+ msg part  type/subtype              size description
    0       text/plain                  25
 EOF
 mhlist -file - < "$MH_TEST_DIR/Mail/inbox/5" > $actual 2>&1
@@ -64,7 +64,7 @@ run_test 'mhlist 11' "mhlist: message 11 doesn't exist"
 
 # check multiple messages
 cat > $expected <<EOF
- msg part  type/subtype              size description                         
+ msg part  type/subtype              size description
    2       text/plain                  25
    8       text/plain                  25
 EOF
@@ -72,7 +72,7 @@ mhlist 2 8 > $actual 2>&1
 check $expected $actual
 
 # Write message with a text/plain subpart.
-msgfile=$(mhpath new)
+msgfile=`mhpath new`
 cat > $msgfile <<EOF
 To: recipient@example.com
 From: sender@example.com
@@ -86,15 +86,15 @@ Content-Type: multipart/related;
     boundary="subpart__1.1"
 
 --subpart__1.1
-Content-Type: text/plain; charset="us-ascii"
+Content-Type: text/plain; charset="iso-8859-1"
 Content-Disposition: attachment; filename="test1"
 
-This is the first text/plain part.
+This is the first text/plain part, in a subpart.
 
 --subpart__1.1--
 
 ------- =_aaaaaaaaaa0
-Content-Type: text/plain; charset="us-ascii"
+Content-Type: text/plain; charset="iso-8859-1"
 Content-Disposition: attachment; filename="test2"
 Content-MD5: kq+Hnc2SD/eKwAnkFBDuEA==
 Content-Transfer-Encoding: quoted-printable
@@ -102,13 +102,13 @@ Content-Transfer-Encoding: quoted-printable
 This is the second text/plain part.
 
 ------- =_aaaaaaaaaa0
-Content-Type: text/plain; charset="us-ascii"
+Content-Type: text/plain; charset="iso-8859-1"; name="test3"
 Content-Disposition: attachment; filename="test3"
 
 This is the third text/plain part.
 
 ------- =_aaaaaaaaaa0
-Content-Type: text/plain; charset="us-ascii"
+Content-Type: text/plain; charset="iso-8859-1"
 Content-Disposition: attachment; filename="test4"
 Content-Transfer-Encoding: base64
 
@@ -119,57 +119,249 @@ EOF
 
 # check -part
 run_test 'mhlist last -part 3 -noheader' \
-'  11       multipart/mixed            900
-     1     multipart/related          164
+'  11       multipart/mixed            936
+     1     multipart/related          180
      3     text/plain                  35'
 
 # check -part of a subpart
 run_test 'mhlist last -part 1.1 -noheader' \
-'  11       multipart/mixed            900
-     1     multipart/related          164
-     1.1   text/plain                  35'
+'  11       multipart/mixed            936
+     1     multipart/related          180
+     1.1   text/plain                  49'
 
 # check -type
 run_test 'mhlist last -type text/plain -noheader' \
-'  11       multipart/mixed            900
-     1     multipart/related          164
-     1.1   text/plain                  35
+'  11       multipart/mixed            936
+     1     multipart/related          180
+     1.1   text/plain                  49
      2     text/plain                  36
      3     text/plain                  35
      4     text/plain                  36'
 
 # check -norealsize
 run_test 'mhlist last -part 4 -noheader -norealsize' \
-'  11       multipart/mixed            900
-     1     multipart/related          164
+'  11       multipart/mixed            936
+     1     multipart/related          180
      4     text/plain                  49'
 
 # check -realsize, the default
 run_test 'mhlist last -part 4 -noheader -norealsize -realsize' \
-'  11       multipart/mixed            900
-     1     multipart/related          164
+'  11       multipart/mixed            936
+     1     multipart/related          180
      4     text/plain                  36'
 
 # check -check
 run_test 'mhlist last -part 2 -noheader -check' \
-'  11       multipart/mixed            900
-     1     multipart/related          164
+'  11       multipart/mixed            936
+     1     multipart/related          180
      2     text/plain                  36'
 
 # check -check with bad MD5 checksum
 sed 's/\(Content-MD5: \)kq+Hnc/\1BADBAD/' $msgfile > $MH_TEST_DIR/$$.tmp
 mv -f $MH_TEST_DIR/$$.tmp $msgfile
 run_test 'mhlist last -part 2 -noheader -check' \
-'  11       multipart/mixed            900
-     1     multipart/related          164
+'  11       multipart/mixed            936
+     1     multipart/related          180
      2     text/plain                  36
 mhlist: content integrity suspect (digest mismatch) -- continuing
         (content text/plain in message 11, part 2)'
 
 # check -nocheck, the default
 run_test 'mhlist last -part 2 -noheader -check -nocheck' \
-'  11       multipart/mixed            900
-     1     multipart/related          164
+'  11       multipart/mixed            936
+     1     multipart/related          180
      2     text/plain                  36'
 
+#
+# Set the cur sequence to 1 to test default behavior of changecur after
+# this test.
+#
+
+mark 1 -sequence cur -add -zero
+
+# check -verbose
+run_test 'mhlist 11 -verbose -noheader' \
+'  11       multipart/mixed            936
+            boundary="----- =_aaaaaaaaaa0"
+     1     multipart/related          180
+            type="multipart/alternative"
+            boundary="subpart__1.1"
+     1.1   text/plain                  49
+            charset="iso-8859-1"
+     2     text/plain                  36
+            charset="iso-8859-1"
+     3     text/plain                  35
+            charset="iso-8859-1"
+            name="test3"
+     4     text/plain                  36
+            charset="iso-8859-1"'
+
+#
+# Check default changecur behavior
+#
+
+run_test 'mark -sequence cur -list' 'cur: 11'
+
+#
+# Now test -nochangecur
+#
+
+mhlist -nochangecur 1 >/dev/null
+
+run_test 'mark -sequence cur -list' 'cur: 11'
+
+# check MIME parser and m_getfld
+cat > $expected <<EOF
+ msg part  type/subtype              size description
+  12       multipart/related          204
+     1     multipart/alternative       74
+     1.1   text/plain                  17
+     2     text/plain                  17
+EOF
+
+msgfile=`mhpath new`
+cat > $msgfile <<EOF
+To: recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    recipient@example.com, recipient@example.com, recipient@example.com,
+    re@example.com
+From: sender@example.com
+Subject: very long header
+Date: Wed, 4 Dec 2013 21:12:00 -0500
+MIME-Version: 1.0
+Content-Type: multipart/related; boundary="1"
+
+--1
+Content-Type: multipart/alternative; boundary="2"
+
+--2
+Content-Type: text/plain; charset="us-ascii"
+
+This is part 1.
+
+
+--2--
+
+--1
+Content-Type: text/plain; charset="us-ascii"
+
+This is part 2.
+
+
+--1--
+EOF
+
+mhlist last > $actual 2>&1
+check $expected $actual
+
+
 exit $failed