]> diplodocus.org Git - nmh/blobdiff - test/rcv/test-rcvstore
Tell make that uip/mhical.c depends on sbr/icalparse.h
[nmh] / test / rcv / test-rcvstore
index 9656f373ee93db5a278c2ef17e6a06c45ef17db4..392502099b1bccb1cdc132777494c62ba768f113 100755 (executable)
@@ -19,6 +19,8 @@ setup_test
 # Use proper program, likely not the first one on PATH.
 rcvstore="${MH_LIBEXEC_DIR}/rcvstore"
 
+check_exit '-eq 1' $rcvstore -
+
 expected=$MH_TEST_DIR/$$.expected
 expected_err=$MH_TEST_DIR/$$.expected_err
 actual=$MH_TEST_DIR/$$.actual
@@ -26,6 +28,7 @@ actual_err=$MH_TEST_DIR/$$.actual_err
 
 
 # check -help
+start_test "-help"
 cat >$expected <<EOF
 Usage: rcvstore [+folder] [switches]
   switches are:
@@ -38,10 +41,12 @@ Usage: rcvstore [+folder] [switches]
   -help
 EOF
 
-run_prog $rcvstore -help >$actual 2>&1
-check $expected $actual
+#### Skip nmh intro text.
+run_prog "$rcvstore" -help 2>&1 | sed '/^$/,$d' >"$actual"
+check "$expected" "$actual"
 
 # check -version
+start_test "-version"
 case `$rcvstore -v` in
   rcvstore\ --*) ;;
   *            ) printf '%s: rcvstore -v generated unexpected output\n' "$0" >&2
@@ -49,9 +54,11 @@ case `$rcvstore -v` in
 esac
 
 # check unknown switch
+start_test "unknown switch"
 run_test "$rcvstore -nonexistent" 'rcvstore: -nonexistent unknown'
 
 # check with no switches and zero-length input message
+start_test "with no switches and zero-length input message"
 cat >$expected <<EOF
 rcvstore: empty file
 EOF
@@ -60,6 +67,7 @@ run_prog $rcvstore </dev/null >$actual 2>&1
 check $expected $actual
 
 # check with no switches
+start_test "with no switches"
 cat >$expected <<EOF
 EOF
 run_prog $rcvstore <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
@@ -67,11 +75,13 @@ check $expected $actual 'keep first'
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
 
 # check + of existing folder
+start_test "+ of existing folder"
 run_prog $rcvstore +inbox <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
 check $expected $actual 'keep first'
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
 
 # check + of new folder
+start_test "+ of new folder"
 run_prog $rcvstore +newfolder <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
 check $expected $actual 'keep first'
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/newfolder/1" \
@@ -79,6 +89,7 @@ check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/newfolder/1" \
 rmdir "${MH_TEST_DIR}/Mail/newfolder"
 
 # check -nocreate
+start_test "-nocreate"
 cat >$expected_err <<EOF
 rcvstore: folder ${MH_TEST_DIR}/Mail/newfolder doesn't exist
 EOF
@@ -91,6 +102,7 @@ check $expected $actual 'keep first'
 check $expected_err $actual_err
 
 # check -create
+start_test "-create"
 run_prog $rcvstore +newfolder -nocreate -create <${MH_TEST_DIR}/Mail/inbox/1 \
   >$actual 2>&1
 check $expected $actual 'keep first'
@@ -99,6 +111,7 @@ check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/newfolder/1" \
 rmdir "${MH_TEST_DIR}/Mail/newfolder"
 
 # check addition to unseen sequence
+start_test "addition to unseen sequence"
 printf 'Unseen-Sequence: unseen\n' >> $MH
 run_prog $rcvstore <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
 check $expected $actual 'keep first'
@@ -109,24 +122,28 @@ touch "${MH_TEST_DIR}/Mail/inbox/11"
 rmm 11
 
 # check -nounseen
+start_test "-nounseen"
 run_prog $rcvstore -nounseen <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
 check $expected $actual 'keep first'
 run_test 'mark -sequence unseen -list' 'unseen: '
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
 
 # check -unseen
+start_test "-unseen"
 run_prog $rcvstore -nounseen -unseen <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
 check $expected $actual 'keep first'
 run_test 'mark -sequence unseen -list' 'unseen: 11'
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
 
 # check -sequence
+start_test "-sequence"
 run_prog $rcvstore -sequence newseq <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
 check $expected $actual 'keep first'
 run_test 'mark -sequence newseq -list' 'newseq: 11'
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
 
 # check that default is -nozero
+start_test "that default is -nozero"
 mark -sequence newseq all
 run_prog $rcvstore -sequence newseq <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
 check $expected $actual 'keep first'
@@ -134,6 +151,7 @@ run_test 'mark -sequence newseq -list' 'newseq: 1-11'
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
 
 # check -zero
+start_test "-zero"
 mark -sequence newseq all
 run_prog $rcvstore -sequence newseq -zero \
   <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
@@ -142,6 +160,7 @@ run_test 'mark -sequence newseq -list' 'newseq: 11'
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
 
 # check -nozero
+start_test "-nozero"
 mark -sequence newseq all
 run_prog $rcvstore -seq newseq -zero -nozero \
   <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
@@ -150,12 +169,14 @@ run_test 'mark -sequence newseq -list' 'newseq: 1-11'
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
 
 # check that default is -public
+start_test "that default is -public"
 run_prog $rcvstore -sequence pubseq <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
 check $expected $actual 'keep first'
 run_test 'mark -sequence pubseq -list' 'pubseq: 11'
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
 
 # check -nopublic
+start_test "-nopublic"
 run_prog $rcvstore -sequence privseq -nopublic \
   <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
 check $expected $actual 'keep first'
@@ -163,6 +184,7 @@ run_test 'mark -sequence privseq -nopublic -list' 'privseq (private): 11'
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
 
 # check -public
+start_test "-public"
 run_prog $rcvstore -sequence pubseq -nopublic -public \
   <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
 check $expected $actual 'keep first'
@@ -180,14 +202,13 @@ if [ "`find ${MH_TEST_DIR}/Mail/test-read-perms -perm 600`"x = ''x ]; then
   if [ ${failed:-0} -eq 0 ]; then
     echo "$Test $0 SKIP (cannot remove read permission on plain files)"
     exit 77
-  else
-    exit $failed
   fi
-else
-  rm -f ${MH_TEST_DIR}/Mail/test-read-perms
+  exit $failed
 fi
+rm -f ${MH_TEST_DIR}/Mail/test-read-perms
 
 # check default Msg-Protect
+start_test "default Msg-Protect"
 msgprot=`mhparam msgprot`
 run_prog $rcvstore <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
 check $expected $actual 'keep first'
@@ -196,6 +217,7 @@ run_test "find ${MH_TEST_DIR}/Mail/inbox/11 -perm $msgprot" \
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
 
 # check Msg-Protect profile entry
+start_test "Msg-Protect profile entry"
 msgprot=640
 printf 'Msg-Protect: %s\n' "$msgprot" >>$MH
 run_prog $rcvstore <${MH_TEST_DIR}/Mail/inbox/1 >$actual 2>&1
@@ -205,4 +227,5 @@ run_test "find ${MH_TEST_DIR}/Mail/inbox/11 -perm $msgprot" \
 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11"
 
 
+finish_test
 exit ${failed:-0}