From 2538a91201ac85e3b184c329bfc7987a152b3636 Mon Sep 17 00:00:00 2001 From: Simone Bordet Date: Wed, 7 Dec 2022 16:20:22 +0100 Subject: [PATCH] Fixes flaky FCGI test HttpClientTest.testPOSTWithContentTracksProgress(). The content must be consumed by the server, otherwise: * the server Handler exits * the implementation tries to consume the content on its way to complete * the request content cannot be consumed, so the connection is closed * the server closing the connection causes an EOFException on the client Signed-off-by: Simone Bordet --- .../org/eclipse/jetty/fcgi/server/HttpClientTest.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java index 442ccba3831..b5ddc0ecea9 100644 --- a/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java +++ b/jetty-fcgi/fcgi-server/src/test/java/org/eclipse/jetty/fcgi/server/HttpClientTest.java @@ -14,6 +14,7 @@ package org.eclipse.jetty.fcgi.server; import java.io.IOException; +import java.io.OutputStream; import java.net.URI; import java.net.URLEncoder; import java.nio.ByteBuffer; @@ -351,7 +352,15 @@ public class HttpClientTest extends AbstractHttpClientServerTest @Test public void testPOSTWithContentTracksProgress() throws Exception { - start(new EmptyServerHandler()); + start(new AbstractHandler() + { + @Override + public void handle(String target, org.eclipse.jetty.server.Request baseRequest, HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException + { + baseRequest.setHandled(true); + IO.copy(baseRequest.getInputStream(), OutputStream.nullOutputStream()); + } + }); AtomicInteger progress = new AtomicInteger(); ContentResponse response = client.POST(scheme + "://localhost:" + connector.getLocalPort())