Files
@ ceb51ff23ae3
Branch filter:
Location: majic-ansible-roles/roles/mail_forwarder/molecule/default/tests/test_connectivity_from_relay.py - annotation
ceb51ff23ae3
2.1 KiB
text/x-python
MAR-132: Added support to xmpp_server role for Debian 9 (Stretch):
- Updated tests to include Debian 9 in testing. Existing private keys
are reused where possible (since most of the naming is identical
between the machines with jessie/stretch).
- Updated invocation of sendxmpp in tests as workaround for
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=854210.
- Updated testing of imported keys to accomodate differences between
gpg/gpg2 (used by apt-key in Jessie/Stretch).
- Updated tests to include Debian 9 in testing. Existing private keys
are reused where possible (since most of the naming is identical
between the machines with jessie/stretch).
- Updated invocation of sendxmpp in tests as workaround for
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=854210.
- Updated testing of imported keys to accomodate differences between
gpg/gpg2 (used by apt-key in Jessie/Stretch).
13982172ed2e 13982172ed2e fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 13982172ed2e fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 fb5e4e372902 | import os
import testinfra.utils.ansible_runner
testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner(
os.environ['MOLECULE_INVENTORY_FILE']).get_hosts(['mail-server'])
def test_connectivity_from_relay(host):
"""
Tests connectivity towards mail forwarder servers from relay. Connection
towards parameters-mandatory should fail.
"""
with host.sudo():
ping = host.run('hping3 -S -p 25 -c 1 parameters-mandatory-jessie64')
assert ping.rc != 0
assert "100% packet loss" in ping.stderr
ping = host.run('hping3 -S -p 25 -c 1 parameters-optional-jessie64')
assert ping.rc == 0
ping = host.run('hping3 -S -p 25 -c 1 parameters-no-incoming-jessie64')
assert "100% packet loss" in ping.stderr
assert ping.rc != 0
ping = host.run('hping3 -S -p 25 -c 1 parameters-mandatory-stretch64')
assert ping.rc != 0
assert "100% packet loss" in ping.stderr
ping = host.run('hping3 -S -p 25 -c 1 parameters-optional-stretch64')
assert ping.rc == 0
ping = host.run('hping3 -S -p 25 -c 1 parameters-no-incoming-stretch64')
assert "100% packet loss" in ping.stderr
assert ping.rc != 0
def test_mail_reception_from_relay(host):
"""
Tests if mails can be sent from relay to servers configured to use the
relay.
"""
send = host.run('swaks --suppress-data --to root@parameters-optional-jessie64 --server parameters-optional-jessie64')
assert send.rc == 0
send = host.run('swaks --suppress-data --to root@parameters-optional-stretch64 --server parameters-optional-stretch64')
assert send.rc == 0
def test_open_relay(host):
"""
Tests if mail forwarder behaves as open relay.
"""
no_recipients_accepted = 24
send = host.run('swaks --suppress-data --to root@client1 --server parameters-optional-jessie64')
assert send.rc == no_recipients_accepted
assert "Relay access denied" in send.stdout
send = host.run('swaks --suppress-data --to root@client1 --server parameters-optional-stretch64')
assert send.rc == no_recipients_accepted
assert "Relay access denied" in send.stdout
|