From e2a5240813e0a2d6f73d040131f64c21c05c0b42 Mon Sep 17 00:00:00 2001 From: godotg Date: Sun, 10 Sep 2023 15:42:04 +0800 Subject: [PATCH] test[net]: websocket server test --- .../net/core/tcp/client/TcpClientTest.java | 4 +++ .../websocket/client/WebsocketClientTest.java | 26 +++++++++++++++++-- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/net/src/test/java/com/zfoo/net/core/tcp/client/TcpClientTest.java b/net/src/test/java/com/zfoo/net/core/tcp/client/TcpClientTest.java index 55f1f322..f9203a52 100644 --- a/net/src/test/java/com/zfoo/net/core/tcp/client/TcpClientTest.java +++ b/net/src/test/java/com/zfoo/net/core/tcp/client/TcpClientTest.java @@ -49,9 +49,13 @@ public class TcpClientTest { for (int i = 0; i < 1000; i++) { ThreadUtils.sleep(1000); NetContext.getRouter().send(session, request); + + ThreadUtils.sleep(1000); var response = NetContext.getRouter().syncAsk(session, request, TcpHelloResponse.class, null).packet(); logger.info("sync client receive [packet:{}] from server", JsonUtils.object2String(response)); + + NetContext.getRouter().asyncAsk(session, request, TcpHelloResponse.class, null) .whenComplete(new Consumer() { @Override diff --git a/net/src/test/java/com/zfoo/net/core/websocket/client/WebsocketClientTest.java b/net/src/test/java/com/zfoo/net/core/websocket/client/WebsocketClientTest.java index 235e428a..85e0d46f 100644 --- a/net/src/test/java/com/zfoo/net/core/websocket/client/WebsocketClientTest.java +++ b/net/src/test/java/com/zfoo/net/core/websocket/client/WebsocketClientTest.java @@ -17,12 +17,18 @@ import com.zfoo.net.NetContext; import com.zfoo.net.core.HostAndPort; import com.zfoo.net.core.websocket.WebsocketClient; import com.zfoo.net.packet.websocket.WebsocketHelloRequest; +import com.zfoo.net.packet.websocket.WebsocketHelloResponse; +import com.zfoo.protocol.util.JsonUtils; import com.zfoo.protocol.util.ThreadUtils; import io.netty.handler.codec.http.websocketx.WebSocketClientProtocolConfig; import org.junit.Ignore; import org.junit.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.context.support.ClassPathXmlApplicationContext; +import java.util.function.Consumer; + /** * @author godotg * @version 3.0 @@ -30,8 +36,10 @@ import org.springframework.context.support.ClassPathXmlApplicationContext; @Ignore public class WebsocketClientTest { + private static final Logger logger = LoggerFactory.getLogger(WebsocketClientTest.class); + @Test - public void startClient() { + public void startClient() throws Exception { var context = new ClassPathXmlApplicationContext("config.xml"); var webSocketClientProtocolConfig = WebSocketClientProtocolConfig.newBuilder() @@ -45,8 +53,22 @@ public class WebsocketClientTest { request.setMessage("Hello, this is the websocket client!"); for (int i = 0; i < 1000; i++) { - ThreadUtils.sleep(2000); + ThreadUtils.sleep(1000); NetContext.getRouter().send(session, request); + + + ThreadUtils.sleep(1000); + var response = NetContext.getRouter().syncAsk(session, request, WebsocketHelloResponse.class, null).packet(); + logger.info("sync client receive [packet:{}] from server", JsonUtils.object2String(response)); + + + NetContext.getRouter().asyncAsk(session, request, WebsocketHelloResponse.class, null) + .whenComplete(new Consumer() { + @Override + public void accept(WebsocketHelloResponse jsonHelloResponse) { + logger.info("async client receive [packet:{}] from server", JsonUtils.object2String(jsonHelloResponse)); + } + }); } ThreadUtils.sleep(Long.MAX_VALUE);