]> diplodocus.org Git - nmh/blobdiff - test/prompter/test-prompter
Update XOAUTH2 documentation.
[nmh] / test / prompter / test-prompter
index 69eb9dd..3427790 100755 (executable)
@@ -16,6 +16,8 @@ fi
 
 setup_test
 
+check_exit '-eq 1' prompter -
+
 expected=$MH_TEST_DIR/$$.expected
 expected_err=$MH_TEST_DIR/$$.expected_err
 actual=$MH_TEST_DIR/$$.actual
@@ -23,6 +25,7 @@ actual_err=$MH_TEST_DIR/$$.actual_err
 
 
 # check -help
+start_test "-help"
 cat >$expected <<EOF
 Usage: prompter [switches] file
   switches are:
@@ -35,10 +38,12 @@ Usage: prompter [switches] file
   -help
 EOF
 
-prompter -help >$actual 2>&1
-check $expected $actual
+#### Skip nmh intro text.
+run_prog prompter -help 2>&1 | sed '/^$/,$d' >"$actual"
+check "$expected" "$actual"
 
 # check -version
+start_test "-version"
 case `prompter -v` in
   prompter\ --*) ;;
   *            ) printf '%s: prompter -v generated unexpected output\n' "$0" >&2
@@ -46,13 +51,16 @@ case `prompter -v` in
 esac
 
 # check unknown switch
+start_test "unknown switch"
 run_test 'prompter -nonexistent' 'prompter: -nonexistent unknown'
 
 
 # check with no switches
+start_test "with no switches"
 run_test 'prompter' 'prompter: usage: prompter [switches] file'
 
 # check with file
+start_test "with file"
 cat >$expected <<EOF
 Resent-From: sender@example.com
 Resent-To: recipient@example.com
@@ -70,11 +78,12 @@ Resent-fcc:
 EOF
 
 printf 'recipient@example.com\ncc@example.com\n+outbox\nmessage body\n' | \
-  prompter $MH_TEST_DIR/prompter-file > /dev/null
+  run_prog prompter $MH_TEST_DIR/prompter-file >/dev/null
 
 check "$expected" "$MH_TEST_DIR/prompter-file" 'keep first'
 
 # check -doteof
+start_test "-doteof"
 cat >$MH_TEST_DIR/prompter-file <<EOF
 Resent-From: sender@example.com
 Resent-To:
@@ -83,11 +92,12 @@ Resent-fcc:
 EOF
 
 printf 'recipient@example.com\ncc@example.com\n+outbox\nmessage body\n.\n' | \
-  prompter -doteof $MH_TEST_DIR/prompter-file > /dev/null
+  run_prog prompter -doteof $MH_TEST_DIR/prompter-file >/dev/null
 
 check "$expected" "$MH_TEST_DIR/prompter-file" 'keep first'
 
 # check -nodoteof
+start_test "-nodoteof"
 cat >$MH_TEST_DIR/prompter-file <<EOF
 Resent-From: sender@example.com
 Resent-To:
@@ -96,11 +106,12 @@ Resent-fcc:
 EOF
 
 printf 'recipient@example.com\ncc@example.com\n+outbox\nmessage body\n' | \
-  prompter -doteof -nodoteof $MH_TEST_DIR/prompter-file > /dev/null
+  run_prog prompter -doteof -nodoteof $MH_TEST_DIR/prompter-file >/dev/null
 
 check "$expected" "$MH_TEST_DIR/prompter-file" 'keep first'
 
 # check -noprepend
+start_test "-noprepend"
 cat >$MH_TEST_DIR/prompter-file <<EOF
 Resent-From: sender@example.com
 Resent-To:
@@ -110,14 +121,15 @@ Resent-fcc:
 message body
 EOF
 
-printf 'appendage\n' >> "$expected"
+printf 'appendage\n' >>"$expected"
 
 printf 'recipient@example.com\ncc@example.com\n+outbox\nappendage\n' | \
-  prompter -noprepend $MH_TEST_DIR/prompter-file > /dev/null
+  run_prog prompter -noprepend $MH_TEST_DIR/prompter-file >/dev/null
 
 check "$expected" "$MH_TEST_DIR/prompter-file"
 
 # check -prepend
+start_test "-prepend"
 cat >$MH_TEST_DIR/prompter-file <<EOF
 Resent-From: sender@example.com
 Resent-To:
@@ -138,11 +150,12 @@ message body
 EOF
 
 printf 'recipient@example.com\ncc@example.com\n+outbox\nprependage\n' | \
-  prompter -noprepend -prepend $MH_TEST_DIR/prompter-file > /dev/null
+  run_prog prompter -noprepend -prepend $MH_TEST_DIR/prompter-file >/dev/null
 
 check "$MH_TEST_DIR/prompter-file" "$expected" 'keep first'
 
 # check -rapid
+start_test "-rapid"
 cat >$expected <<EOF
 Resent-From: sender@example.com
 Resent-To: recipient@example.com
@@ -154,11 +167,12 @@ Resent-fcc: +outbox
 --------
 EOF
 
-prompter -rapid $MH_TEST_DIR/prompter-file > "$actual" < /dev/null
+run_prog prompter -rapid $MH_TEST_DIR/prompter-file >"$actual" </dev/null
 
 check "$expected" "$actual"
 
 # check -norapid
+start_test "-norapid"
 cat >$expected <<EOF
 Resent-From: sender@example.com
 Resent-To: recipient@example.com
@@ -172,11 +186,13 @@ message body
 --------
 EOF
 
-prompter -rapid -norapid $MH_TEST_DIR/prompter-file > "$actual" < /dev/null
+run_prog prompter -rapid -norapid $MH_TEST_DIR/prompter-file \
+  >"$actual" </dev/null
 
 check "$expected" "$actual"
 
 # check -erase and -kill.  We can't test their effects because they
+start_test "-erase and -kill.  We can't test their effects because they"
 # only affect the terminal and this test execution might not be
 # connected to one.  So we can just check that the respective options
 # were set.
@@ -195,11 +211,12 @@ message body
 EOF
 
 printf 'woot woot\n' | \
-  prompter -erase '\15' -kill '\7f' $MH_TEST_DIR/prompter-file > "$actual"
+  run_prog prompter -erase '\15' -kill '\7f' $MH_TEST_DIR/prompter-file >"$actual"
 
 check "$expected" "$actual"
 
 # check -body.  It's undocumented but the default, so make sure that
+start_test "-body.  It's undocumented but the default, so make sure that"
 # it reverses the effect of -nobody.
 cat >$expected <<EOF
 Resent-From: sender@example.com
@@ -215,11 +232,13 @@ message body
 --------
 EOF
 
-prompter -nobody -body $MH_TEST_DIR/prompter-file > "$actual" < /dev/null
+run_prog prompter -nobody -body $MH_TEST_DIR/prompter-file >"$actual" \
+  </dev/null
 
 check "$expected" "$actual"
 
 # check -nobody.  It's undocumented but looks like it removes the body.
+start_test "-nobody.  It's undocumented but looks like it removes the body."
 cat >$expected <<EOF
 Resent-From: sender@example.com
 Resent-To: recipient@example.com
@@ -227,9 +246,10 @@ Resent-cc: cc@example.com
 Resent-fcc: +outbox
 EOF
 
-prompter -nobody $MH_TEST_DIR/prompter-file > /dev/null
+run_prog prompter -nobody $MH_TEST_DIR/prompter-file >/dev/null
 
 check "$expected" "$MH_TEST_DIR/prompter-file"
 
 
+finish_test
 exit ${failed:-0}