mirror of
https://github.com/docker-mailserver/docker-mailserver.git
synced 2024-01-19 02:48:50 +00:00
Extract mail with relay tests into own file
This commit is contained in:
parent
db160bd977
commit
fcddf578d2
15
Makefile
15
Makefile
|
@ -232,18 +232,6 @@ run:
|
||||||
-e SA_SPAM_SUBJECT="undef" \
|
-e SA_SPAM_SUBJECT="undef" \
|
||||||
-h mail.my-domain.com -t $(NAME)
|
-h mail.my-domain.com -t $(NAME)
|
||||||
sleep 15
|
sleep 15
|
||||||
docker run -d --name mail_with_relays \
|
|
||||||
-v "`pwd`/test/config/relay-hosts":/tmp/docker-mailserver \
|
|
||||||
-v "`pwd`/test/test-files":/tmp/docker-mailserver-test:ro \
|
|
||||||
-e RELAY_HOST=default.relay.com \
|
|
||||||
-e RELAY_PORT=2525 \
|
|
||||||
-e RELAY_USER=smtp_user \
|
|
||||||
-e RELAY_PASSWORD=smtp_password \
|
|
||||||
--cap-add=SYS_PTRACE \
|
|
||||||
-e PERMIT_DOCKER=host \
|
|
||||||
-e DMS_DEBUG=0 \
|
|
||||||
-h mail.my-domain.com -t $(NAME)
|
|
||||||
sleep 15
|
|
||||||
|
|
||||||
generate-accounts-after-run:
|
generate-accounts-after-run:
|
||||||
docker run --rm -e MAIL_USER=added@localhost.localdomain -e MAIL_PASS=mypassword -t $(NAME) /bin/sh -c 'echo "$$MAIL_USER|$$(doveadm pw -s SHA512-CRYPT -u $$MAIL_USER -p $$MAIL_PASS)"' >> test/config/postfix-accounts.cf
|
docker run --rm -e MAIL_USER=added@localhost.localdomain -e MAIL_PASS=mypassword -t $(NAME) /bin/sh -c 'echo "$$MAIL_USER|$$(doveadm pw -s SHA512-CRYPT -u $$MAIL_USER -p $$MAIL_PASS)"' >> test/config/postfix-accounts.cf
|
||||||
|
@ -318,8 +306,7 @@ clean:
|
||||||
mail_postscreen \
|
mail_postscreen \
|
||||||
mail_override_hostname \
|
mail_override_hostname \
|
||||||
mail_domainname \
|
mail_domainname \
|
||||||
mail_srs_domainname \
|
mail_srs_domainname
|
||||||
mail_with_relays
|
|
||||||
|
|
||||||
@if [ -d config.bak ]; then\
|
@if [ -d config.bak ]; then\
|
||||||
rm -rf config ;\
|
rm -rf config ;\
|
||||||
|
|
49
test/mail_with_relays.bats
Normal file
49
test/mail_with_relays.bats
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
load 'test_helper/common'
|
||||||
|
|
||||||
|
function setup() {
|
||||||
|
if [ "$BATS_TEST_NUMBER" -eq 1 ]; then
|
||||||
|
docker run -d --name mail_with_relays \
|
||||||
|
-v "`pwd`/test/config/relay-hosts":/tmp/docker-mailserver \
|
||||||
|
-v "`pwd`/test/test-files":/tmp/docker-mailserver-test:ro \
|
||||||
|
-e RELAY_HOST=default.relay.com \
|
||||||
|
-e RELAY_PORT=2525 \
|
||||||
|
-e RELAY_USER=smtp_user \
|
||||||
|
-e RELAY_PASSWORD=smtp_password \
|
||||||
|
--cap-add=SYS_PTRACE \
|
||||||
|
-e PERMIT_DOCKER=host \
|
||||||
|
-e DMS_DEBUG=0 \
|
||||||
|
-h mail.my-domain.com -t ${NAME}
|
||||||
|
wait_for_finished_setup_in_container mail_with_relays
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function teardown() {
|
||||||
|
if [ "$BATS_TEST_NUMBER" -eq ${#BATS_TEST_NAMES[@]} ]; then
|
||||||
|
docker rm -f mail_with_relays
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "checking relay hosts: default mapping is added from env vars" {
|
||||||
|
run docker exec mail_with_relays /bin/sh -c 'cat /etc/postfix/relayhost_map | grep -e "^@domainone.tld\s\+\[default.relay.com\]:2525" | wc -l | grep 1'
|
||||||
|
assert_success
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "checking relay hosts: custom mapping is added from file" {
|
||||||
|
run docker exec mail_with_relays /bin/sh -c 'cat /etc/postfix/relayhost_map | grep -e "^@domaintwo.tld\s\+\[other.relay.com\]:587" | wc -l | grep 1'
|
||||||
|
assert_success
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "checking relay hosts: ignored domain is not added" {
|
||||||
|
run docker exec mail_with_relays /bin/sh -c 'cat /etc/postfix/relayhost_map | grep -e "^@domainthree.tld\s\+\[any.relay.com\]:25" | wc -l | grep 0'
|
||||||
|
assert_success
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "checking relay hosts: auth entry is added" {
|
||||||
|
run docker exec mail_with_relays /bin/sh -c 'cat /etc/postfix/sasl_passwd | grep -e "^@domaintwo.tld\s\+smtp_user_2:smtp_password_2" | wc -l | grep 1'
|
||||||
|
assert_success
|
||||||
|
}
|
||||||
|
|
||||||
|
@test "checking relay hosts: default auth entry is added" {
|
||||||
|
run docker exec mail_with_relays /bin/sh -c 'cat /etc/postfix/sasl_passwd | grep -e "^\[default.relay.com\]:2525\s\+smtp_user:smtp_password" | wc -l | grep 1'
|
||||||
|
assert_success
|
||||||
|
}
|
|
@ -1,4 +1,5 @@
|
||||||
|
load 'test_helper/bats-support/load'
|
||||||
|
load 'test_helper/bats-assert/load'
|
||||||
|
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -1815,37 +1816,6 @@ function count_processed_changes() {
|
||||||
assert_success
|
assert_success
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#
|
|
||||||
# relay hosts
|
|
||||||
#
|
|
||||||
|
|
||||||
@test "checking relay hosts: default mapping is added from env vars" {
|
|
||||||
run docker exec mail_with_relays /bin/sh -c 'cat /etc/postfix/relayhost_map | grep -e "^@domainone.tld\s\+\[default.relay.com\]:2525" | wc -l | grep 1'
|
|
||||||
assert_success
|
|
||||||
}
|
|
||||||
|
|
||||||
@test "checking relay hosts: custom mapping is added from file" {
|
|
||||||
run docker exec mail_with_relays /bin/sh -c 'cat /etc/postfix/relayhost_map | grep -e "^@domaintwo.tld\s\+\[other.relay.com\]:587" | wc -l | grep 1'
|
|
||||||
assert_success
|
|
||||||
}
|
|
||||||
|
|
||||||
@test "checking relay hosts: ignored domain is not added" {
|
|
||||||
run docker exec mail_with_relays /bin/sh -c 'cat /etc/postfix/relayhost_map | grep -e "^@domainthree.tld\s\+\[any.relay.com\]:25" | wc -l | grep 0'
|
|
||||||
assert_success
|
|
||||||
}
|
|
||||||
|
|
||||||
@test "checking relay hosts: auth entry is added" {
|
|
||||||
run docker exec mail_with_relays /bin/sh -c 'cat /etc/postfix/sasl_passwd | grep -e "^@domaintwo.tld\s\+smtp_user_2:smtp_password_2" | wc -l | grep 1'
|
|
||||||
assert_success
|
|
||||||
}
|
|
||||||
|
|
||||||
@test "checking relay hosts: default auth entry is added" {
|
|
||||||
run docker exec mail_with_relays /bin/sh -c 'cat /etc/postfix/sasl_passwd | grep -e "^\[default.relay.com\]:2525\s\+smtp_user:smtp_password" | wc -l | grep 1'
|
|
||||||
assert_success
|
|
||||||
}
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# root mail delivery
|
# root mail delivery
|
||||||
#
|
#
|
||||||
|
|
Loading…
Reference in a new issue