test_unreachable-network.py 1.2 KB

123456789101112131415161718192021222324252627282930313233
  1. from time import sleep
  2. import pytest
  3. import requests
  4. def test_default_nginx_welcome_page_should_not_be_served(docker_compose, nginxproxy):
  5. r = nginxproxy.get("http://whatever.nginx-proxy/", allow_redirects=False)
  6. assert "<title>Welcome to nginx!</title>" not in r.text
  7. def test_unknown_virtual_host_is_503(docker_compose, nginxproxy):
  8. r = nginxproxy.get("http://unknown.nginx-proxy/", allow_redirects=False)
  9. assert r.status_code == 503
  10. def test_http_web_a_is_forwarded(docker_compose, nginxproxy):
  11. r = nginxproxy.get("http://webA.nginx-proxy/port", allow_redirects=False)
  12. assert r.status_code == 200
  13. assert "answer from port 81\n" == r.text
  14. def test_http_web_b_gets_an_error(docker_compose, nginxproxy):
  15. r = nginxproxy.get("http://webB.nginx-proxy/", allow_redirects=False)
  16. assert "<title>Welcome to nginx!</title>" not in r.text
  17. with pytest.raises(requests.exceptions.HTTPError):
  18. r.raise_for_status()
  19. def test_reverseproxy_survive_restart(docker_compose):
  20. docker_compose.containers.get("reverseproxy").restart()
  21. sleep(2) # give time for the container to initialize
  22. assert docker_compose.containers.get("reverseproxy").status == "running"