diff --git a/tests/containers/workbenches/workbench_image_test.py b/tests/containers/workbenches/workbench_image_test.py index 8a70646cd..a27f098a3 100644 --- a/tests/containers/workbenches/workbench_image_test.py +++ b/tests/containers/workbenches/workbench_image_test.py @@ -88,7 +88,7 @@ def test_ipv6_only(self, image: str, test_frame): ipv6_address = (container.get_wrapped_container().attrs ["NetworkSettings"]["Networks"][network.name]["GlobalIPv6Address"]) - container._connect(container_host=ipv6_address) + container._connect(container_host=ipv6_address, container_port=container.port) finally: # try to grab logs regardless of whether container started or not stdout, stderr = container.get_logs() @@ -142,6 +142,9 @@ def _connect(self, container_host: str | None = None, container_port: int | None # HTTP 302 (i.e. `except urllib.error.HTTPError as e: assert e.code == 302`) every time cookie_jar = http.cookiejar.CookieJar() opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cookie_jar)) + # host may be an ipv6 address, need to be careful with formatting this + if ":" in host: + host = f"[{host}]" result = opener.open(urllib.request.Request(f"http://{host}:{port}"), timeout=1) except urllib.error.URLError as e: raise e