#
# 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 ()
{ "${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 send -draft -server 127.0.0.1 -port $localport >/dev/null 2>&1; then
+ for i in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20; do
+ if send -draft -server 127.0.0.1 -port $localport $3
+ then
status=0
break
fi
- sleep 1
+ sleep 2
done
- [ $status -eq 0 ] || exit 1
+ if [ $status -ne 0 ]; then
+ printf '%s: send failed, was fakesmtp given enough time to start?\n' \
+ "$0" >&2
+ exit 1
+ fi
wait ${pid}