From a5003b3dab04761fc5284f8dfb31fa184bd682f9 Mon Sep 17 00:00:00 2001 From: Jaikiran Pai Date: Wed, 29 Apr 2026 02:11:43 +0000 Subject: [PATCH] 8308878: com/sun/net/httpserver/simpleserver/OutputFilterTest.java fails with assertion errors in IPv6 only environment Reviewed-by: dfuchs --- .../simpleserver/OutputFilterTest.java | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/test/jdk/com/sun/net/httpserver/simpleserver/OutputFilterTest.java b/test/jdk/com/sun/net/httpserver/simpleserver/OutputFilterTest.java index bed4b8e2f3d..6f2eecafc15 100644 --- a/test/jdk/com/sun/net/httpserver/simpleserver/OutputFilterTest.java +++ b/test/jdk/com/sun/net/httpserver/simpleserver/OutputFilterTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021, 2025, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2021, 2026, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -118,6 +118,7 @@ public class OutputFilterTest { var filter = SimpleFileServer.createOutputFilter(baos, VERBOSE); var server = HttpServer.create(LOOPBACK_ADDR, 10, "/", handler, filter); server.start(); + final String serverIPPattern = Pattern.quote(server.getAddress().getAddress().getHostAddress()); try (baos) { var client = HttpClient.newBuilder().proxy(NO_PROXY).build(); var request = HttpRequest.newBuilder(uri(server, "")).build(); @@ -129,8 +130,9 @@ public class OutputFilterTest { server.stop(0); baos.flush(); var filterOutput = baos.toString(UTF_8); - var pattern = Pattern.compile(""" - 127\\.0\\.0\\.1 - - \\[[\\s\\S]+] "GET / HTTP/1\\.1" 200 - + System.err.println("server output:\n" + filterOutput); + var pattern = Pattern.compile(serverIPPattern + " " + """ + - - \\[[\\s\\S]+] "GET / HTTP/1\\.1" 200 - Resource requested: /foo/bar (>[\\s\\S]+:[\\s\\S]+)+ > @@ -170,6 +172,7 @@ public class OutputFilterTest { var filter = SimpleFileServer.createOutputFilter(baos, VERBOSE); var server = HttpServer.create(LOOPBACK_ADDR, 10, "/", handler, filter); server.start(); + final String serverIPPattern = Pattern.quote(server.getAddress().getAddress().getHostAddress()); try (baos) { var client = HttpClient.newBuilder().proxy(NO_PROXY).build(); var request = HttpRequest.newBuilder(uri(server, "")).build(); @@ -181,8 +184,9 @@ public class OutputFilterTest { server.stop(0); baos.flush(); var filterOutput = baos.toString(UTF_8); - var pattern = Pattern.compile(""" - 127\\.0\\.0\\.1 - - \\[[\\s\\S]+] "GET / HTTP/1\\.1" 200 - + System.err.println("server output:\n" + filterOutput); + var pattern = Pattern.compile(serverIPPattern + " " + """ + - - \\[[\\s\\S]+] "GET / HTTP/1\\.1" 200 - (>[\\s\\S]+:[\\s\\S]+)+ > (<[\\s\\S]+:[\\s\\S]+)+ @@ -262,6 +266,7 @@ public class OutputFilterTest { var filter = SimpleFileServer.createOutputFilter(baos, VERBOSE); var server = HttpServer.create(LOOPBACK_ADDR, 0, "/", handler, filter); server.start(); + final String serverIPPattern = Pattern.quote(server.getAddress().getAddress().getHostAddress()); try (baos) { var client = HttpClient.newBuilder().proxy(NO_PROXY).build(); var request = HttpRequest.newBuilder(uri(server, "aFile\u0000.txt")).build(); @@ -272,8 +277,9 @@ public class OutputFilterTest { server.stop(0); baos.flush(); var filterOutput = baos.toString(UTF_8); - var pattern = Pattern.compile(""" - 127\\.0\\.0\\.1 - - \\[[\\s\\S]+] "GET /aFile%00\\.txt HTTP/1\\.1" 404 - + System.err.println("server output:\n" + filterOutput); + var pattern = Pattern.compile(serverIPPattern + " " + """ + - - \\[[\\s\\S]+] "GET /aFile%00\\.txt HTTP/1\\.1" 404 - Resource requested: could not resolve request URI path (>[\\s\\S]+:[\\s\\S]+)+ >