X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/a556f418842dfe03ea305962f0a37abd6d340348..9b3fc4790b2473b23c69c0e70710e1e66a038f28:/test/mhparam/test-mhparam diff --git a/test/mhparam/test-mhparam b/test/mhparam/test-mhparam index 66157486..83b8407e 100755 --- a/test/mhparam/test-mhparam +++ b/test/mhparam/test-mhparam @@ -30,37 +30,40 @@ Usage: mhparam [profile-components] [switches] -all -version -help + -(debug) EOF -# The exit status is 1 with -help, so invert it to prevent -# triggering immediate exit due to set -e. -! mhparam -help >$actual 2>&1 -check $expected $actual + +#### Skip nmh intro text. +mhparam -help | sed '/^$/,$d' >"$actual" 2>&1 +check "$expected" "$actual" # check -version -if ! mhparam -v | grep '^mhparam --' >/dev/null; then - echo "$0: mhparam -v generated unexpected output" 1>&2 - failed=`expr ${failed:-0} + 1` -fi +case `mhparam -v` in + mhparam\ --*) ;; + * ) echo "$0: mhparam -v generated unexpected output" 1>&2 + failed=`expr ${failed:-0} + 1`;; +esac # check unknown option run_test 'mhparam -nonexistent' 'mhparam: -nonexistent unknown' # check -all -cp $MH_TEST_DIR/Mail/.mh_profile $expected -# -all adds current folder +cp "$MH" $expected +# -all adds current folder and Version echo 'Current-Folder: '`folder -f` >>$expected -mhparam -all >$actual +echo "Version: nmh-$MH_VERSION" >>$expected +run_prog mhparam -all >$actual check $expected $actual 'keep first' # check -all with a component echo 'mhparam: profile-components ignored with -all' >$expected_err -mhparam -all path >$actual 2>$actual_err +run_prog mhparam -all path >$actual 2>$actual_err check $expected $actual 'keep first' check $expected_err $actual_err # check -all with -components echo 'mhparam: -components ignored with -all' >$expected_err -mhparam -all -components >$actual 2>$actual_err +run_prog mhparam -all -components >$actual 2>$actual_err check $expected $actual check $expected_err $actual_err @@ -68,10 +71,76 @@ check $expected_err $actual_err run_test 'mhparam path' "$MH_TEST_DIR/Mail" # check more than one component, which enables -component -echo 'AliasFile: aliases' >>"$MH_TEST_DIR/Mail/.mh_profile" +echo 'AliasFile: aliases' >>"$MH" run_test 'mhparam path AliasFile' "path: $MH_TEST_DIR/Mail AliasFile: aliases" +# check each component in procs array in uip/mhparam.c +# The tests don't override these, so they're default or configured values. +# Note that cat is hardcoded here because the testsuite uses it for moreproc. +cat >$expected <$actual 2>&1 + +check $expected $actual + +#### This exits with non-zero status, so let run_test squash that: +run_test 'mhparam formatproc rmmproc' '' + +#### Test sbackup separately because it's only passed as a -D compile option. +case `mhparam sbackup` in + ,|\#) ;; + * ) echo mhparam sbackup failed + failed=`expr ${failed:-0} + 1` ;; +esac + # check -component run_test 'mhparam -component Path' "Path: $MH_TEST_DIR/Mail" @@ -93,9 +162,13 @@ mhparam path context nonexistent1 nonexistent2 nonexistent3 >/dev/null run_test "echo $?" 3 set -e -# mhparam -debug (undocumented) +# mhparam -debug # Some of its output depends on configure options, so don't bother to # check for correctness here. mhparam -debug >/dev/null +# check with text file that does not end with newline +printf 'Editor: emacs' >>"$MH" +run_test 'mhparam -nocomponent editor' 'emacs' + exit $failed