* test/runtest, test/tests/inc/test-deb359167,
[mmh] / test / runtest
1 #!/bin/sh
2
3 set -e
4
5 if [ ! -e test-temp-dir ]; then
6    echo "test-temp-dir not found: running setup-test"
7    ./setup-test
8 fi
9
10 export MH_TEST_DIR=`cat test-temp-dir`
11
12 if [ ! -e "$MH_TEST_DIR/bld/Makefile" ]; then
13    echo "temporary directory missing or broken: running setup-test"
14    ./setup-test
15    export MH_TEST_DIR=`cat test-temp-dir`
16 fi
17
18 export MH=$MH_TEST_DIR/Mail/.mh_profile
19 export PATH=$MH_TEST_DIR/bin:$PATH
20
21 export MH_TEST_COMMON=$PWD/common.sh
22
23 # clean old test data
24 rm -rf $MH_TEST_DIR/Mail
25 # setup test data
26 mkdir $MH_TEST_DIR/Mail
27 echo "Path: $MH_TEST_DIR/Mail" > $MH
28 folder -create +inbox > /dev/null
29 # create 10 basic messages
30 for i in `seq 1 10`;
31 do
32     cat > $MH_TEST_DIR/Mail/inbox/$i <<EOF
33 From: Test$i <test$i@example.com>
34 To: Some User <user@example.com>
35 Date: Fri, 29 Sep 2006 00:00:00
36 Subject: Testing message $i
37
38 This is message number $i
39 EOF
40 done
41
42 # now run the test
43 set +e
44 /bin/sh $1
45 return_value=$?
46 set -e
47
48 if [ $return_value -eq 0 ] ; then
49     echo Test $1 PASS
50 elif [ $return_value -eq 120 ]; then
51     # indicates test was skipped (eg needed program not found)
52     # test itself should have printed a message about this,
53     # so print nothing here.
54     :
55 else
56     echo Test $1 FAIL
57 fi