#!/bin/sh
######################################################
#
-# Test a simple scan.
+# Test scan(1)
#
######################################################
-expected=$MH_TEST_DIR/$$.expected
-actual=$MH_TEST_DIR/$$.actual
+. "$MH_TEST_COMMON"
-cat > $expected <<EOF
+
+runandcheck "scan -width 80 +inbox" <<!
1 2006-09-29 00:00 Test1 Testing message 1
2 2006-09-29 00:00 Test2 Testing message 2
3 2006-09-29 00:00 Test3 Testing message 3
8 2006-09-29 00:00 Test8 Testing message 8
9 2006-09-29 00:00 Test9 Testing message 9
10 2006-09-29 00:00 Test10 Testing message 10
-EOF
+!
+
+
+runandcheck "scan -width 80 +inbox 2-6" <<!
+ 2 2006-09-29 00:00 Test2 Testing message 2
+ 3 2006-09-29 00:00 Test3 Testing message 3
+ 4 2006-09-29 00:00 Test4 Testing message 4
+ 5 2006-09-29 00:00 Test5 Testing message 5
+ 6 2006-09-29 00:00 Test6 Testing message 6
+!
+
+
+runandcheck "scan -width 80 +inbox 2-6" normspace <<!
+ 2 2006-09-29 00:00 Test2 Testing message 2
+ 3 2006-09-29 00:00 Test3 Testing message 3
+ 4 2006-09-29 00:00 Test4 Testing message 4
+ 5 2006-09-29 00:00 Test5 Testing message 5
+ 6 2006-09-29 00:00 Test6 Testing message 6
+!
+
+
+runandcheck "scan -width 50 +inbox 2 3 6" <<!
+ 2 2006-09-29 00:00 Test2 Testin
+ 3 2006-09-29 00:00 Test3 Testin
+ 6 2006-09-29 00:00 Test6 Testin
+!
+
+runandcheck "scan f l" <<!
+ 1 2006-09-29 00:00 Test1 Testing message 1
+ 10 2006-09-29 00:00 Test10 Testing message 10
+!
+
+show 5 >/dev/null
+runandcheck "scan" <<!
+ 1 2006-09-29 00:00 Test1 Testing message 1
+ 2 2006-09-29 00:00 Test2 Testing message 2
+ 3 2006-09-29 00:00 Test3 Testing message 3
+ 4 2006-09-29 00:00 Test4 Testing message 4
+ 5+ 2006-09-29 00:00 Test5 Testing message 5
+ 6 2006-09-29 00:00 Test6 Testing message 6
+ 7 2006-09-29 00:00 Test7 Testing message 7
+ 8 2006-09-29 00:00 Test8 Testing message 8
+ 9 2006-09-29 00:00 Test9 Testing message 9
+ 10 2006-09-29 00:00 Test10 Testing message 10
+!
+
+runandcheck "scan p c n" <<!
+ 4 2006-09-29 00:00 Test4 Testing message 4
+ 5+ 2006-09-29 00:00 Test5 Testing message 5
+ 6 2006-09-29 00:00 Test6 Testing message 6
+!
+
+runandcheck "scan c:3" <<!
+ 5+ 2006-09-29 00:00 Test5 Testing message 5
+ 6 2006-09-29 00:00 Test6 Testing message 6
+ 7 2006-09-29 00:00 Test7 Testing message 7
+!
+
+runandcheck "scan -form scan.nmh" <<!
+ 1 09/29 Test1 Testing message 1
+ 2 09/29 Test2 Testing message 2
+ 3 09/29 Test3 Testing message 3
+ 4 09/29 Test4 Testing message 4
+ 5+ 09/29 Test5 Testing message 5
+ 6 09/29 Test6 Testing message 6
+ 7 09/29 Test7 Testing message 7
+ 8 09/29 Test8 Testing message 8
+ 9 09/29 Test9 Testing message 9
+ 10 09/29 Test10 Testing message 10
+!
+
+runandcheck "scan -form scan.mailx" <<!
+ N 1 Test1 Fri Sep 29 00:00 Testing message 1
+ N 2 Test2 Fri Sep 29 00:00 Testing message 2
+ N 3 Test3 Fri Sep 29 00:00 Testing message 3
+ N 4 Test4 Fri Sep 29 00:00 Testing message 4
+>N 5 Test5 Fri Sep 29 00:00 Testing message 5
+ N 6 Test6 Fri Sep 29 00:00 Testing message 6
+ N 7 Test7 Fri Sep 29 00:00 Testing message 7
+ N 8 Test8 Fri Sep 29 00:00 Testing message 8
+ N 9 Test9 Fri Sep 29 00:00 Testing message 9
+ N 10 Test10 Fri Sep 29 00:00 Testing message 10
+!
-scan -width 80 +inbox > $actual
-diff -u $expected $actual
+runandcheck "scan -form '=%(msg) %{from}' 1-c" <<!
+1 Test1 <test1@example.com>
+2 Test2 <test2@example.com>
+3 Test3 <test3@example.com>
+4 Test4 <test4@example.com>
+5 Test5 <test5@example.com>
+!