X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=test%2Fruntest;h=9f35adea472642eadc302d06122ceb3c13f0cc12;hp=d970b183656ad2ea6d148b7a95b4a04bd0768a06;hb=063706a481ecba111064eedce97856e5eac9dca6;hpb=031871c2ede845956070da603e8494690f7beb70 diff --git a/test/runtest b/test/runtest index d970b18..9f35ade 100755 --- a/test/runtest +++ b/test/runtest @@ -1,15 +1,71 @@ #!/bin/sh -export MH=`cat test-temp-dir`/mh_profile +set -e + +export MH_TEST_COMMON="$PWD/common.sh" + +if [ ! -f test-temp-dir ]; then + echo "test-temp-dir not found: running setup-test" + ./setup-test +fi + export MH_TEST_DIR=`cat test-temp-dir` -export PATH=$MH_TEST_DIR/bin:$PATH -/bin/sh $1 +if [ ! -f "$MH_TEST_DIR/build/Makefile" ]; then + echo "temporary directory missing or broken: running setup-test" + ./setup-test + export MH_TEST_DIR=`cat test-temp-dir` +fi + +unset MMHP MMHC +export PATH="$MH_TEST_DIR/bin:$PATH" +export MMH="$MH_TEST_DIR/.mmh" +MAILDIR="$MH_TEST_DIR/Mail" + +# clean old test data +rm -rf "$MAILDIR" "$MMH" + +# setup mmh +mkdir "$MAILDIR" "$MMH" +cat >"$MMH/profile" <<-! + Path: $MAILDIR + Inbox: +inbox +! +folder -create `mhparam inbox` >/dev/null +folder -create `mhparam trashfolder` >/dev/null +folder -create `mhparam draftfolder` >/dev/null + +# create 10 basic messages +for i in `seq 1 10`; +do + cat >"$MAILDIR/inbox/$i" <<-! + From: Test$i + To: Some User + Date: Fri, 29 Sep 2006 00:00:00 + Subject: Testing message $i + + This is message number $i + ! +done +folder +inbox >/dev/null +# now run the test +set +e +export SHELL="${SHELL:-/bin/sh}" +/bin/sh "$1" return_value=$? +set -e if [ $return_value -eq 0 ] ; then - echo Test $1 PASS + printf "Test %-60s\tPASS\n" "$1" + exit 0 +elif [ $return_value -eq 120 ]; then + # indicates test was skipped (eg needed program not found) + # test itself should have printed a message about this, + # so print nothing here. + printf "Test %-60s\tSKIP\n" "$1" + exit 2 else - echo Test $1 FAIL + printf "Test %-60s\tFAIL\n" "$1" + exit 1 fi