From 92c57e844856bd6c71ee2f726ed2c99a4496636a Mon Sep 17 00:00:00 2001 From: Naoyuki Kanezawa Date: Tue, 9 Sep 2014 03:32:49 +0900 Subject: [PATCH] add a test --- .../socketio/client/ServerConnectionTest.java | 20 +++++++++++++++++++ src/test/resources/server.js | 4 ++++ 2 files changed, 24 insertions(+) diff --git a/src/test/java/com/github/nkzawa/socketio/client/ServerConnectionTest.java b/src/test/java/com/github/nkzawa/socketio/client/ServerConnectionTest.java index a9ed8e6..2387347 100644 --- a/src/test/java/com/github/nkzawa/socketio/client/ServerConnectionTest.java +++ b/src/test/java/com/github/nkzawa/socketio/client/ServerConnectionTest.java @@ -336,4 +336,24 @@ public class ServerConnectionTest extends Connection { assertThat((String)values.take(), is("hi")); socket.close(); } + + @Test(timeout = TIMEOUT) + public void disconnectFromServer() throws URISyntaxException, InterruptedException { + final BlockingQueue values = new LinkedBlockingQueue(); + + socket = client(); + socket.on(Socket.EVENT_CONNECT, new Emitter.Listener() { + @Override + public void call(Object... args) { + socket.emit("requestDisconnect"); + } + }).on(Socket.EVENT_DISCONNECT, new Emitter.Listener() { + @Override + public void call(Object... args) { + values.offer("disconnected"); + } + }); + socket.connect(); + assertThat((String)values.take(), is("disconnected")); + } } diff --git a/src/test/resources/server.js b/src/test/resources/server.js index b733431..d8b4ae2 100644 --- a/src/test/resources/server.js +++ b/src/test/resources/server.js @@ -55,6 +55,10 @@ io.of(nsp).on('connection', function(socket) { io.to(socket.id).emit.apply(socket, ['roomBack'].concat(args)); }); + socket.on('requestDisconnect', function() { + socket.disconnect(); + }); + socket.on('disconnect', function() { console.log('disconnect'); });