import os import pytest import testinfra.utils.ansible_runner testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner( os.environ['MOLECULE_INVENTORY_FILE']).get_hosts('client1') ansible_runner = testinfra.utils.ansible_runner.AnsibleRunner( os.environ['MOLECULE_INVENTORY_FILE']) @pytest.mark.parametrize("server", sorted( set(ansible_runner.get_hosts('all')) - set(ansible_runner.get_hosts('helper')))) def test_connectivity_from_client(host, server): """ Tests connectivity towards mail forwarder servers from client (non-relay). Connectivity should fail for both. """ with host.sudo(): ping = host.run('hping3 -S -p 25 -c 1 %s', server) assert ping.rc != 0 assert "100% packet loss" in ping.stderr