Files @ 01f4b619cfa6
Branch filter:

Location: majic-ansible-roles/roles/mail_server/tests/test_client1.py

branko
MAR-27: Update mail_forwarder role/tests:

- Install swaks on mail-server instance for testing SMTP.
- Install procmail via mail_forwarder role (needed to be explicit for Debian
Stretch).
- Introduce small sleep when mails are sent to localhost for delivery to remote
hosts before checking the logs in order to allow Postfix to process the
queue.
import testinfra.utils.ansible_runner

testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner(
    '.molecule/ansible_inventory').get_hosts('client1')


def test_open_relay(Command):
    """
    Tests if mail server behaves as open relay.
    """

    no_recipients_accepted = 24

    send = Command('swaks --suppress-data --to root@client1 --server parameters-mandatory')
    assert send.rc == no_recipients_accepted
    assert "Relay access denied" in send.stdout


def test_allowed_relay(Command):
    """
    Tests if mail server allows relaying from configured IPs/networks.
    """

    send = Command('swaks --suppress-data --to root@client1 --server parameters-optional')
    assert send.rc == 0
    assert "Ok: queued as" in send.stdout