]> diplodocus.org Git - nmh/blobdiff - test/format/test-fmtdump
mh-mkstemp.man: Detail exit status as 255 rather than -1.
[nmh] / test / format / test-fmtdump
index b10374c1d49cb88088778640287315e126e1ec58..f919b0a3a4115ee1f6ac271340da29f4e2c859cc 100755 (executable)
@@ -19,6 +19,8 @@ setup_test
 # Use proper program, likely not the first one on PATH.
 fmtdump="${MH_LIBEXEC_DIR}/fmtdump"
 
 # Use proper program, likely not the first one on PATH.
 fmtdump="${MH_LIBEXEC_DIR}/fmtdump"
 
+check_exit '-eq 1' "$fmtdump" - # gcov
+
 expected=$MH_TEST_DIR/$$.expected
 expected_err=$MH_TEST_DIR/$$.expected_err
 actual=$MH_TEST_DIR/$$.actual
 expected=$MH_TEST_DIR/$$.expected
 expected_err=$MH_TEST_DIR/$$.expected_err
 actual=$MH_TEST_DIR/$$.actual
@@ -35,8 +37,9 @@ Usage: fmtdump [switches]
   -help
 EOF
 
   -help
 EOF
 
-$fmtdump -help >$actual 2>&1
-check $expected $actual
+#### Skip nmh intro text.
+"$fmtdump" -help | sed '/^$/,$d' >"$actual" 2>&1
+check "$expected" "$actual"
 
 # check -version
 case `$fmtdump -v` in
 
 # check -version
 case `$fmtdump -v` in
@@ -107,10 +110,69 @@ L10:      CHAR '\n'
 EOF
 
 run_prog $fmtdump >$actual 2>&1
 EOF
 
 run_prog $fmtdump >$actual 2>&1
-check $expected $actual 'keep first'
+check $expected $actual
 
 # check -form
 
 # check -form
-run_prog $fmtdump -form "$MH_TEST_DIR/Mail/scan.default" >$actual 2>&1
+cat >$expected <<EOF
+       LV_DAT, value dat[0]
+       NUMF, width 4, fill ' '
+       LV_DAT, value dat[1]
+       IF_V_NE 0 continue else goto L0
+       CHAR '+'
+       GOTO L1
+L0:    CHAR ' '
+L1:    LS_COMP, comp "replied"
+       IF_S continue else goto L2
+       CHAR '-'
+       GOTO L3
+L2:    LS_COMP, comp "encrypted"
+       IF_S continue else goto L4
+       CHAR 'E'
+L3:    GOTO L5
+L4:    CHAR ' '
+L5:    PARSEDATE, c_name "date", c_type <DATE>
+       LV_MON, c_name "date", c_type <DATE>
+       NUMF, width 2, fill '0'
+       CHAR '/'
+       PARSEDATE, c_name "date", c_type <DATE>
+       LV_MDAY, c_name "date", c_type <DATE>
+       NUMF, width 2, fill '0'
+       LS_COMP, comp "date", c_type <DATE>
+       IF_S continue else goto L6
+       CHAR ' '
+       GOTO L7
+L6:    CHAR '*'
+L7:    MYMBOX, c_name "from", c_type <ADDR>
+       LV_COMPFLAG, comp "from", c_type <ADDR>
+       IF_V_NE 0 continue else goto L8
+       LS_COMP, comp "to", c_type <ADDR>
+       IF_S continue else goto L8
+       LIT "To:"
+       PARSEADDR, c_name "to", c_type <ADDR>
+       LS_FRIENDLY, c_name "to", c_type <ADDR>
+       FT_LS_DECODE
+       
+       STRF, width 14, fill ' '
+L8:    IF_V_EQ 0 continue else goto L9
+       PARSEADDR, c_name "from", c_type <ADDR>
+       LS_FRIENDLY, c_name "from", c_type <ADDR>
+       FT_LS_DECODE
+       
+       STRF, width 17, fill ' '
+L9:    LIT "  "
+       LS_COMP, comp "subject"
+       FT_LS_DECODE
+       STR
+       LS_COMP, comp "body"
+       IF_S continue else goto L10
+       LIT "<<"
+       COMP, comp "body"
+       LIT ">>"
+L10:   CHAR '\n'
+       DONE
+EOF
+
+run_prog $fmtdump -form "$MH_INST_DIR${nmhetcdir}/scan.default" >$actual 2>&1
 check $expected $actual
 
 # check -format
 check $expected $actual
 
 # check -format