DUBBO-424 Heartbeat response不应该在业务线程处理
diff --git a/dubbo-remoting/dubbo-remoting-netty/src/test/java/com/alibaba/dubbo/remoting/exchange/support/header/HeartbeatHandlerTest.java b/dubbo-remoting/dubbo-remoting-netty/src/test/java/com/alibaba/dubbo/remoting/exchange/support/header/HeartbeatHandlerTest.java
index d1ca8cb..3376826 100644
--- a/dubbo-remoting/dubbo-remoting-netty/src/test/java/com/alibaba/dubbo/remoting/exchange/support/header/HeartbeatHandlerTest.java
+++ b/dubbo-remoting/dubbo-remoting-netty/src/test/java/com/alibaba/dubbo/remoting/exchange/support/header/HeartbeatHandlerTest.java
@@ -44,10 +44,12 @@
public void after() throws Exception {
if (client != null) {
client.close();
+ client = null;
}
if (server != null) {
server.close();
+ server = null;
}
}
@@ -68,6 +70,22 @@
}
@Test
+ public void testHeartbeat() throws Exception {
+ URL serverURL = URL.valueOf("header://localhost:55555");
+ serverURL = serverURL.addParameter(Constants.HEARTBEAT_KEY, 1000);
+ TestHeartbeatHandler handler = new TestHeartbeatHandler();
+ server = Exchangers.bind(serverURL, handler);
+ System.out.println("Server bind successfully");
+
+ client = Exchangers.connect(serverURL);
+ Thread.sleep(10000);
+ System.err.println("++++++++++++++ disconnect count " + handler.disconnectCount);
+ System.err.println("++++++++++++++ connect count " + handler.connectCount);
+ Assert.assertTrue(handler.disconnectCount == 0);
+ Assert.assertTrue(handler.connectCount == 1);
+ }
+
+ @Test
public void testClientHeartbeat() throws Exception {
FakeChannelHandlers.setTestingChannelHandlers();
URL serverURL = URL.valueOf("header://localhost:55555");