diff --git a/src/main/java/io/vertx/core/http/impl/Http1xConnectionBase.java b/src/main/java/io/vertx/core/http/impl/Http1xConnectionBase.java index ea0aeb721..0dfd170f2 100644 --- a/src/main/java/io/vertx/core/http/impl/Http1xConnectionBase.java +++ b/src/main/java/io/vertx/core/http/impl/Http1xConnectionBase.java @@ -19,7 +19,7 @@ import io.netty.channel.ChannelHandlerContext; import io.netty.channel.ChannelPromise; import io.netty.channel.FileRegion; import io.netty.handler.codec.http.HttpContent; -import io.netty.handler.codec.http.HttpMessage; +import io.netty.handler.codec.http.HttpObject; import io.netty.handler.codec.http.websocketx.BinaryWebSocketFrame; import io.netty.handler.codec.http.websocketx.CloseWebSocketFrame; import io.netty.handler.codec.http.websocketx.ContinuationWebSocketFrame; @@ -240,7 +240,7 @@ abstract class Http1xConnectionBase> extends Conn @Override protected void reportsBytesWritten(Object msg) { - if (msg instanceof HttpMessage) { + if (msg instanceof HttpObject) { bytesWritten += getBytes(msg); } else if (msg instanceof WebSocketFrame) { // Only report WebSocket messages since HttpMessage are reported by streams diff --git a/src/test/java/io/vertx/core/http/Http2ServerTest.java b/src/test/java/io/vertx/core/http/Http2ServerTest.java index 3537d3ec5..2f44a21c0 100644 --- a/src/test/java/io/vertx/core/http/Http2ServerTest.java +++ b/src/test/java/io/vertx/core/http/Http2ServerTest.java @@ -250,7 +250,8 @@ public class Http2ServerTest extends Http2TestBase { waitFor(2); Context ctx = vertx.getOrCreateContext(); server.connectionHandler(conn -> { - assertOnIOContext(ctx); + assertTrue(Context.isOnEventLoopThread()); + assertSameEventLoop(vertx.getOrCreateContext(), ctx); complete(); }); server.requestHandler(req -> fail()); diff --git a/src/test/java/io/vertx/core/spi/metrics/MetricsContextTest.java b/src/test/java/io/vertx/core/spi/metrics/MetricsContextTest.java index 8bc3fb7cc..5ec42ad58 100644 --- a/src/test/java/io/vertx/core/spi/metrics/MetricsContextTest.java +++ b/src/test/java/io/vertx/core/spi/metrics/MetricsContextTest.java @@ -82,6 +82,7 @@ public class MetricsContextTest extends VertxTestBase { } private void testHttpServerRequest(Function contextFactory) throws Exception { + waitFor(2); AtomicReference expectedThread = new AtomicReference<>(); AtomicReference expectedContext = new AtomicReference<>(); AtomicBoolean requestBeginCalled = new AtomicBoolean(); @@ -151,8 +152,8 @@ public class MetricsContextTest extends VertxTestBase { }); awaitLatch(latch); HttpClient client = vertx.createHttpClient(); - client.put(8080, "localhost", "/", onSuccess(resp -> { - resp.request().connection().closeHandler(v -> { + client.connectionHandler(conn -> { + conn.closeHandler(v -> { vertx.close(v4 -> { assertTrue(requestBeginCalled.get()); assertTrue(responseEndCalled.get()); @@ -161,9 +162,12 @@ public class MetricsContextTest extends VertxTestBase { assertTrue(socketConnectedCalled.get()); assertTrue(socketDisconnectedCalled.get()); assertTrue(closeCalled.get()); - testComplete(); + complete(); }); }); + }); + client.put(8080, "localhost", "/", onSuccess(resp -> { + complete(); })).exceptionHandler(err -> { fail(err.getMessage()); }).setChunked(true).end(Buffer.buffer("hello"));