setup_test
# Use proper program, likely not the first one on PATH.
-dp="${MH_LIB_DIR}/dp"
+dp="${MH_LIBEXEC_DIR}/dp"
+
+check_exit '-eq 1' $dp -
+check_exit '-eq 1' $dp -format foo -form
+check_exit '-eq 1' $dp -form foo -format
+check_exit '-eq 1' $dp -width
+x=tendixzehn
+l=$x$x$x$x$x
+c=$l$l
+check_exit '-eq 1' $dp `echo $c | sed 's/./ &/g'` 101
+COLUMNS=1 check_exit '-eq 0' $dp foo
+check_exit '-eq 0' $dp -width 0 foo
expected="$MH_TEST_DIR/$$.expected"
expected_err="$MH_TEST_DIR/$$.expected_err"
-help
EOF
-$dp -help >"$actual" 2>&1
+#### Skip nmh intro text.
+run_prog "$dp" -help | sed '/^$/,$d' >"$actual" 2>&1
check "$expected" "$actual"
# check -version
Sun, 01 Jul 2012 00:00:00
EOF
-$dp 'Sun Jul 1 2012' > "$actual" 2>&1
+run_prog $dp 'Sun Jul 1 2012' > "$actual" 2>&1
check "$expected" "$actual"
# check with two valid dates
Mon, 02 Jul 2012 00:00:00
EOF
-$dp 'Sun Jul 1 2012' 'Mon Jul 2 2012' > "$actual" 2>&1
+run_prog $dp 'Sun Jul 1 2012' 'Mon Jul 2 2012' > "$actual" 2>&1
check "$expected" "$actual"
# check with invalid date
cat >"$expected_err" <<EOF
EOF
-$dp 'not a date' > "$actual" 2> "$actual_err"
+run_prog $dp 'not a date' > "$actual" 2> "$actual_err"
check "$expected" "$actual"
check "$expected_err" "$actual_err"
Sun
EOF
-$dp -form "$form" 'Jul 1 2012' >$actual 2>&1
+run_prog $dp -form "$form" 'Jul 1 2012' >$actual 2>&1
check $expected $actual
rm -f "$form"
Sun
EOF
-$dp -format '%(day{text})' 'Jul 1 2012' >$actual 2>&1
+run_prog $dp -format '%(day{text})' 'Jul 1 2012' >$actual 2>&1
check $expected $actual
# check -width
cat >"$expected" <<EOF
-Sun, 01 Jul 2012
+Sun, 01 Jul 2012
EOF
-$dp -width 17 'Sun Jul 1 2012' > "$actual" 2>&1
+run_prog $dp -width 17 'Sun Jul 1 2012' > "$actual" 2>&1
check "$expected" "$actual"