diff --git a/codec-http2/src/test/java/io/netty/handler/codec/http2/DataCompressionHttp2Test.java b/codec-http2/src/test/java/io/netty/handler/codec/http2/DataCompressionHttp2Test.java index b197db308c..c88a1208b6 100644 --- a/codec-http2/src/test/java/io/netty/handler/codec/http2/DataCompressionHttp2Test.java +++ b/codec-http2/src/test/java/io/netty/handler/codec/http2/DataCompressionHttp2Test.java @@ -81,6 +81,7 @@ public class DataCompressionHttp2Test { private Bootstrap cb; private Channel serverChannel; private Channel clientChannel; + private volatile Channel serverConnectedChannel; private CountDownLatch serverLatch; private Http2Connection serverConnection; private Http2Connection clientConnection; @@ -127,6 +128,11 @@ public class DataCompressionHttp2Test { serverChannel.close().sync(); serverChannel = null; } + final Channel serverConnectedChannel = this.serverConnectedChannel; + if (serverConnectedChannel != null) { + serverConnectedChannel.close().sync(); + this.serverConnectedChannel = null; + } Future serverGroup = sb.config().group().shutdownGracefully(0, 0, MILLISECONDS); Future serverChildGroup = sb.config().childGroup().shutdownGracefully(0, 0, MILLISECONDS); Future clientGroup = cb.config().group().shutdownGracefully(0, 0, MILLISECONDS); @@ -297,6 +303,7 @@ public class DataCompressionHttp2Test { sb.childHandler(new ChannelInitializer() { @Override protected void initChannel(Channel ch) throws Exception { + serverConnectedChannel = ch; ChannelPipeline p = ch.pipeline(); Http2FrameWriter frameWriter = new DefaultHttp2FrameWriter(); serverConnection.remote().flowController( diff --git a/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2CodecTest.java b/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2CodecTest.java index 404aef9f48..64936feeb1 100644 --- a/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2CodecTest.java +++ b/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2CodecTest.java @@ -93,11 +93,18 @@ public class Http2CodecTest { @After public void tearDown() throws Exception { - clientChannel.close().sync(); - serverChannel.close().sync(); + if (clientChannel != null) { + clientChannel.close().sync(); + clientChannel = null; + } + if (serverChannel != null) { + serverChannel.close().sync(); + serverChannel = null; + } + final Channel serverConnectedChannel = this.serverConnectedChannel; if (serverConnectedChannel != null) { serverConnectedChannel.close().sync(); - serverConnectedChannel = null; + this.serverConnectedChannel = null; } } diff --git a/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2ConnectionRoundtripTest.java b/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2ConnectionRoundtripTest.java index 2cdbf989b9..d20b5b92c4 100644 --- a/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2ConnectionRoundtripTest.java +++ b/codec-http2/src/test/java/io/netty/handler/codec/http2/Http2ConnectionRoundtripTest.java @@ -118,9 +118,10 @@ public class Http2ConnectionRoundtripTest { serverChannel.close().sync(); serverChannel = null; } + final Channel serverConnectedChannel = this.serverConnectedChannel; if (serverConnectedChannel != null) { serverConnectedChannel.close().sync(); - serverConnectedChannel = null; + this.serverConnectedChannel = null; } Future serverGroup = sb.config().group().shutdownGracefully(0, 0, MILLISECONDS); Future serverChildGroup = sb.config().childGroup().shutdownGracefully(0, 0, MILLISECONDS); diff --git a/codec-http2/src/test/java/io/netty/handler/codec/http2/HttpToHttp2ConnectionHandlerTest.java b/codec-http2/src/test/java/io/netty/handler/codec/http2/HttpToHttp2ConnectionHandlerTest.java index 8683a515b7..8b54c6f1d9 100644 --- a/codec-http2/src/test/java/io/netty/handler/codec/http2/HttpToHttp2ConnectionHandlerTest.java +++ b/codec-http2/src/test/java/io/netty/handler/codec/http2/HttpToHttp2ConnectionHandlerTest.java @@ -113,9 +113,10 @@ public class HttpToHttp2ConnectionHandlerTest { serverChannel.close().sync(); serverChannel = null; } + final Channel serverConnectedChannel = this.serverConnectedChannel; if (serverConnectedChannel != null) { serverConnectedChannel.close().sync(); - serverConnectedChannel = null; + this.serverConnectedChannel = null; } Future serverGroup = sb.config().group().shutdownGracefully(0, 0, MILLISECONDS); Future serverChildGroup = sb.config().childGroup().shutdownGracefully(0, 0, MILLISECONDS); diff --git a/codec-http2/src/test/java/io/netty/handler/codec/http2/InboundHttp2ToHttpAdapterTest.java b/codec-http2/src/test/java/io/netty/handler/codec/http2/InboundHttp2ToHttpAdapterTest.java index b366280c0d..c03b48a424 100644 --- a/codec-http2/src/test/java/io/netty/handler/codec/http2/InboundHttp2ToHttpAdapterTest.java +++ b/codec-http2/src/test/java/io/netty/handler/codec/http2/InboundHttp2ToHttpAdapterTest.java @@ -119,9 +119,10 @@ public class InboundHttp2ToHttpAdapterTest { serverChannel.close().sync(); serverChannel = null; } + final Channel serverConnectedChannel = this.serverConnectedChannel; if (serverConnectedChannel != null) { serverConnectedChannel.close().sync(); - serverConnectedChannel = null; + this.serverConnectedChannel = null; } Future serverGroup = sb.config().group().shutdownGracefully(0, 0, MILLISECONDS); Future serverChildGroup = sb.config().childGroup().shutdownGracefully(0, 0, MILLISECONDS);