From 82ab286291ca1d4d90d5881739cba70145ebaafe Mon Sep 17 00:00:00 2001 From: Martin Schulze Date: Fri, 16 Aug 2019 19:20:54 +0200 Subject: [PATCH] Extract mail_undef_spam_subject into own test file --- Makefile | 8 ----- test/mail_undef_spam_subject.bats | 50 +++++++++++++++++++++++++++++++ test/tests.bats | 13 -------- 3 files changed, 50 insertions(+), 21 deletions(-) create mode 100644 test/mail_undef_spam_subject.bats diff --git a/Makefile b/Makefile index 13ced9f4..13a9c4c6 100644 --- a/Makefile +++ b/Makefile @@ -214,13 +214,6 @@ run: -e DMS_DEBUG=0 \ -h mail.my-domain.com -t $(NAME) sleep 30 - docker run -d --name mail_undef_spam_subject \ - -v "`pwd`/test/config":/tmp/docker-mailserver \ - -v "`pwd`/test/test-files":/tmp/docker-mailserver-test:ro \ - -e ENABLE_SPAMASSASSIN=1 \ - -e SA_SPAM_SUBJECT="undef" \ - -h mail.my-domain.com -t $(NAME) - sleep 15 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 @@ -290,7 +283,6 @@ clean: mail_with_ldap \ mail_with_imap \ mail_lmtp_ip \ - mail_undef_spam_subject \ mail_postscreen \ mail_override_hostname \ mail_domainname \ diff --git a/test/mail_undef_spam_subject.bats b/test/mail_undef_spam_subject.bats new file mode 100644 index 00000000..5798f2bb --- /dev/null +++ b/test/mail_undef_spam_subject.bats @@ -0,0 +1,50 @@ +load 'test_helper/common' + +function setup() { + docker run -d --name mail_undef_spam_subject \ + -v "`pwd`/test/config":/tmp/docker-mailserver \ + -v "`pwd`/test/test-files":/tmp/docker-mailserver-test:ro \ + -e ENABLE_SPAMASSASSIN=1 \ + -e SA_SPAM_SUBJECT="undef" \ + -h mail.my-domain.com -t ${NAME} + CONTAINER=$(docker run -d \ + -v "`pwd`/test/config":/tmp/docker-mailserver \ + -v "`pwd`/test/test-files":/tmp/docker-mailserver-test:ro \ + -v "`pwd`/test/onedir":/var/mail-state \ + -e ENABLE_CLAMAV=1 \ + -e SPOOF_PROTECTION=1 \ + -e ENABLE_SPAMASSASSIN=1 \ + -e REPORT_RECIPIENT=user1@localhost.localdomain \ + -e REPORT_SENDER=report1@mail.my-domain.com \ + -e SA_TAG=-5.0 \ + -e SA_TAG2=2.0 \ + -e SA_KILL=3.0 \ + -e SA_SPAM_SUBJECT="SPAM: " \ + -e VIRUSMAILS_DELETE_DELAY=7 \ + -e ENABLE_SRS=1 \ + -e SASL_PASSWD="external-domain.com username:password" \ + -e ENABLE_MANAGESIEVE=1 \ + --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_undef_spam_subject + wait_for_finished_setup_in_container "$CONTAINER" +} + +function teardown() { + docker rm -f mail_undef_spam_subject "$CONTAINER" +} + +@test "checking spamassassin: docker env variables are set correctly (custom)" { + run docker exec "$CONTAINER" /bin/sh -c "grep '\$sa_tag_level_deflt' /etc/amavis/conf.d/20-debian_defaults | grep '= -5.0'" + assert_success + run docker exec "$CONTAINER" /bin/sh -c "grep '\$sa_tag2_level_deflt' /etc/amavis/conf.d/20-debian_defaults | grep '= 2.0'" + assert_success + run docker exec "$CONTAINER" /bin/sh -c "grep '\$sa_kill_level_deflt' /etc/amavis/conf.d/20-debian_defaults | grep '= 3.0'" + assert_success + run docker exec "$CONTAINER" /bin/sh -c "grep '\$sa_spam_subject_tag' /etc/amavis/conf.d/20-debian_defaults | grep '= .SPAM: .'" + assert_success + run docker exec mail_undef_spam_subject /bin/sh -c "grep '\$sa_spam_subject_tag' /etc/amavis/conf.d/20-debian_defaults | grep '= undef'" + assert_success +} \ No newline at end of file diff --git a/test/tests.bats b/test/tests.bats index 4dc31a94..3facd129 100644 --- a/test/tests.bats +++ b/test/tests.bats @@ -433,19 +433,6 @@ function count_processed_changes() { assert_success } -@test "checking spamassassin: docker env variables are set correctly (custom)" { - run docker exec mail /bin/sh -c "grep '\$sa_tag_level_deflt' /etc/amavis/conf.d/20-debian_defaults | grep '= -5.0'" - assert_success - run docker exec mail /bin/sh -c "grep '\$sa_tag2_level_deflt' /etc/amavis/conf.d/20-debian_defaults | grep '= 2.0'" - assert_success - run docker exec mail /bin/sh -c "grep '\$sa_kill_level_deflt' /etc/amavis/conf.d/20-debian_defaults | grep '= 3.0'" - assert_success - run docker exec mail /bin/sh -c "grep '\$sa_spam_subject_tag' /etc/amavis/conf.d/20-debian_defaults | grep '= .SPAM: .'" - assert_success - run docker exec mail_undef_spam_subject /bin/sh -c "grep '\$sa_spam_subject_tag' /etc/amavis/conf.d/20-debian_defaults | grep '= undef'" - assert_success -} - @test "checking spamassassin: all registered domains should see spam headers" { run docker exec mail /bin/sh -c "grep -ir 'X-Spam-' /var/mail/localhost.localdomain/user1/new" assert_success