@Test public void closeTest_2() throws IOException, URISyntaxException, InterruptedException { AtomicReference<String> messageHolder = new AtomicReference<>(); handler = new WebSocketHandler() { @Override public void onDisconnect(WebSocketListener listener) { Assert.assertTrue(messageHolder.compareAndSet(null, "closed")); } }; SimpleWebSocketClient client = new SimpleWebSocketClient("ws://localhost:" + getPort()); client.connectIfNot(); client.in.close(); Thread.sleep(10); Assert.assertEquals("closed", messageHolder.get()); }
@Test public void echoTest() throws IOException, URISyntaxException, InterruptedException { handler = new WebSocketHandler() { @Override public void onMessage(WebSocketListener listener, Message message) { listener.sendMessage(message); } }; AtomicReference<String> messageHolder = new AtomicReference<>(); SimpleWebSocketClient client = new SimpleWebSocketClient("ws://localhost:" + getPort()) { @Override public void onMessage(Message message) { messageHolder.set(message.asString()); } }; client.send("foo bar"); client.waitForMessage(); Assert.assertEquals("foo bar", messageHolder.get()); }
@Test public void pingTest() throws IOException, URISyntaxException, InterruptedException { handler = new WebSocketHandler(); SimpleWebSocketClient client = new SimpleWebSocketClient("ws://localhost:" + getPort()); Assert.assertTrue(client.ping() >= 0); }
SimpleWebSocketClient client = new SimpleWebSocketClient("ws://localhost:" + getPort()) { @Override public void onMessage(Message message) {
@Test public void limitTest() throws IOException, URISyntaxException, InterruptedException { handler = new WebSocketHandler() { @Override public void onMessage(WebSocketListener listener, Message message) { listener.sendMessage(message); } }; SimpleWebSocketClient client = new SimpleWebSocketClient("ws://localhost:" + getPort()) { @Override public void onMessage(Message message) { throw new IllegalArgumentException(); } }; byte[] data; data = new byte[1024 * 1024]; ThreadLocalRandom.current().nextBytes(data); try { client.send(data); client.waitForMessage(); Assert.assertTrue(false); } catch (SocketException e) { Assert.assertEquals("Connection reset", e.getMessage()); } }
SimpleWebSocketClient client = new SimpleWebSocketClient("ws://localhost:" + getPort()) { @Override public void onMessage(Message message) {
SimpleWebSocketClient client = new SimpleWebSocketClient("ws://localhost:" + getPort()) { @Override public void onMessage(Message message) {
SimpleWebSocketClient client = new SimpleWebSocketClient("ws://localhost:" + getPort()) { @Override public void onMessage(Message message) {
@Test public void testFrames() throws IOException, URISyntaxException, InterruptedException { handler = new WebSocketHandler() { @Override public void onMessage(WebSocketListener listener, Message message) { listener.sendMessage(message); } }; AtomicReference<String> messageHolder = new AtomicReference<>(); SimpleWebSocketClient client = new SimpleWebSocketClient("ws://localhost:" + getPort()) { @Override public void onMessage(Message message) { messageHolder.set(message.asString()); } }; Message message = new Message().append("foo").append(" ").append("bar"); client.send(message); client.waitForMessage(); Assert.assertEquals("foo bar", messageHolder.get()); }
SimpleWebSocketClient client = new SimpleWebSocketClient("ws://localhost:" + getPort()) { @Override public void onMessage(Message message) {