File: test-post-common.sh

package info (click to toggle)
nmh 1.6-2
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 6,204 kB
  • ctags: 3,851
  • sloc: ansic: 48,922; sh: 16,422; makefile: 559; perl: 509; lex: 402; awk: 74
file content (54 lines) | stat: -rwxr-xr-x 1,191 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/sh
#
# Common routines for the post tests
#

set -e

. "${MH_OBJ_DIR}/test/common.sh"

setup_test

arith_eval 64000 + `id -u` % 1000
localport=$arith_val
testname="${MH_TEST_DIR}/$$"

#
# Set this for the EHLO command
#

echo "clientname: nosuchhost.example.com" >> ${MHMTSCONF}

#
# One "post" test run.  Ok, yeah, we're using "send", but that's just
# because it's easier.
# $1: output filename for fakesmtp, i.e., the sent message
# $2: expected output
# $3: optional switches for send

test_post ()
{ pid=`"${MH_OBJ_DIR}/test/fakesmtp" "$1" $localport`

    # The server doesn't always come up fast enough, so sleep and
    # retry a few times if it fails...
    status=1
    for i in 0 1 2 3 4 5 6 7 8 9; do
        if run_prog send -draft -server 127.0.0.1 -port $localport $3 ; then
            status=0
	    break
        fi
	sleep 1
    done
    [ $status -eq 0 ] || exit 1

    #
    # It's hard to calculate the exact Date: header post is going to
    # use, so we'll just use sed to remove the actual date so we can easily
    # compare it against our "correct" output.
    #

    sed -e 's/^Date:.*/Date:/' "$1" > "$1".nodate
    rm -f "$1"

    check "$1".nodate "$2"
}