Added test-dp, test-fmtdump, test-prompter, test-rcvstore,
[mmh] / test / rcv / test-rcvpack
1 #!/bin/sh
2 ######################################################
3 #
4 # Test rcvpack
5 #
6 ######################################################
7
8 set -e
9
10 if test -z "${MH_OBJ_DIR}"; then
11     srcdir=`dirname $0`/../..
12     MH_OBJ_DIR=`cd $srcdir && pwd`; export MH_OBJ_DIR
13 fi
14
15 . "$MH_OBJ_DIR/test/common.sh"
16
17 setup_test
18
19 # Use proper program, likely not the first one on PATH.
20 rcvpack="${MH_LIB_DIR}/rcvpack"
21
22 expected=$MH_TEST_DIR/$$.expected
23 expected_err=$MH_TEST_DIR/$$.expected_err
24 actual=$MH_TEST_DIR/$$.actual
25 actual_err=$MH_TEST_DIR/$$.actual_err
26
27
28 # check -help
29 cat >$expected <<EOF
30 Usage: rcvpack [switches] file
31   switches are:
32   -mbox
33   -mmdf
34   -version
35   -help
36 EOF
37
38 $rcvpack -help >$actual 2>&1
39 check $expected $actual
40
41 # check -version
42 case `$rcvpack -v` in
43   rcvpack\ --*) ;;
44   *           ) printf "$0: rcvpack -v generated unexpected output\n" >&2
45                 failed=`expr ${failed:-0} + 1`;;
46 esac
47
48 # check unknown switch
49 run_test "$rcvpack -nonexistent" 'rcvpack: -nonexistent unknown'
50
51 # check with no switches
52 run_test "$rcvpack" 'rcvpack: rcvpack [switches] file'
53
54 # check mbox creation
55 $rcvpack <${MH_TEST_DIR}/Mail/inbox/1 ${MH_TEST_DIR}/Mail/mbox
56 inc -file ${MH_TEST_DIR}/Mail/mbox -silent
57 check "${MH_TEST_DIR}/Mail/inbox/1" "${MH_TEST_DIR}/Mail/inbox/11" 'keep first'
58
59 # check -mbox
60 $rcvpack -mmdf -mbox <${MH_TEST_DIR}/Mail/inbox/1 ${MH_TEST_DIR}/Mail/mbox2
61 check "${MH_TEST_DIR}/Mail/mbox" "${MH_TEST_DIR}/Mail/mbox2" 'keep first'
62
63 # check append to existing mbox file
64 $rcvpack <${MH_TEST_DIR}/Mail/inbox/2 ${MH_TEST_DIR}/Mail/mbox
65 inc -file ${MH_TEST_DIR}/Mail/mbox -silent
66 check "${MH_TEST_DIR}/Mail/inbox/2" "${MH_TEST_DIR}/Mail/inbox/12" 'keep first'
67
68 # check -mmdf
69 $rcvpack -mmdf <${MH_TEST_DIR}/Mail/inbox/3 ${MH_TEST_DIR}/Mail/mmdf
70 inc -file ${MH_TEST_DIR}/Mail/mmdf -silent
71 check "${MH_TEST_DIR}/Mail/inbox/3" "${MH_TEST_DIR}/Mail/inbox/12" 'keep first'
72
73 # check append to existing mmdf file
74 $rcvpack -mmdf <${MH_TEST_DIR}/Mail/inbox/4 ${MH_TEST_DIR}/Mail/mmdf
75 inc -file ${MH_TEST_DIR}/Mail/mmdf -silent
76 check "${MH_TEST_DIR}/Mail/inbox/4" "${MH_TEST_DIR}/Mail/inbox/13" 'keep first'
77
78
79 exit ${failed:-0}