import os import testinfra.utils.ansible_runner testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner( os.environ["MOLECULE_INVENTORY_FILE"] ).get_hosts("all") def test_cups_running_and_enabled(host): cups = host.service("cups") assert cups.is_running assert cups.is_enabled def test_cups_socket(host): # Verify the socket is listening for HTTP traffic assert host.socket("tcp://127.0.0.1:631").is_listening def test_cups_conn_error(host): code = int(host.run("curl -s -w '%{http_code}' http://127.0.0.1:631/ -o /dev/null").stdout) body = host.run("curl -sX GET http://127.0.0.1:631/").stdout assert code == 200 assert "OpenPrinting CUPS" in body