#!/bin/bash set -e . "$(dirname "$0")/../util/lib.sh" init generate_certs_for testserver add_user user@testserver secretpassword mkdir -p .logs .mbox chasquid -v=2 --logfile=.logs/chasquid.log --config_dir=config & wait_until_ready 1025 FAILED=0 for i in *.cmy; do if ! chamuyero "$i" > ".logs/$i.log" 2>&1 ; then echo "test $i failed, see .logs/$i.log" echo echo "last lines of the log:" tail -n 10 ".logs/$i.log" | sed 's/^/ /g' echo FAILED=1 continue fi # Some tests do email delivery, this allows us to verify the results. if [ -f "$i.verify" ]; then wait_for_file .mail/user@testserver cp .mail/user@testserver ".mbox/$i.mbox" if ! mail_diff "$i.verify" .mail/user@testserver \ > ".mbox/$i.diff" ; then echo "test $i failed, because it had a mail diff" echo echo "mail diff:" sed 's/^/ /g' ".mbox/$i.diff" echo FAILED=1 fi fi done if [ $FAILED == 1 ]; then fail "got at least one error" fi success