1
0
mirror of https://github.com/nginx-proxy/nginx-proxy synced 2025-02-05 05:41:39 +01:00
nginx-proxy/test/test_vhost-in-multiple-networks/test_vhost-in-multiple-networks.py
2024-12-27 16:16:55 +01:00

32 lines
1.2 KiB
Python

import logging
from time import sleep
import pytest
def test_forwards_to_web1(docker_compose, nginxproxy):
r = nginxproxy.get("http://web1.nginx-proxy.example/port")
assert r.status_code == 200
assert r.text == "answer from port 81\n"
def test_nginx_config_remains_the_same_after_restart(docker_compose, nginxproxy):
"""
Restarts the Web container and returns nginx-proxy config after restart
"""
def get_conf_after_web_container_restart() -> bytes:
web_containers = docker_compose.containers.list(filters={"ancestor": "web:latest"})
assert len(web_containers) == 1
web_containers[0].restart()
sleep(3)
return nginxproxy.get_conf()
config_before_restart = nginxproxy.get_conf()
for i in range(1, 8):
logging.info(f"Checking for the {i}-st time that config is the same")
config_after_restart = get_conf_after_web_container_restart()
if config_before_restart != config_after_restart:
logging.debug(f"{config_before_restart!r} \n\n {config_after_restart!r}")
pytest.fail("nginx-proxy config before and after restart of a web container does not match", pytrace=False)