From 32909fa069050599592a34121e4d229e11ff48c3 Mon Sep 17 00:00:00 2001 From: Naoyuki Kanezawa Date: Sun, 17 Aug 2014 07:04:45 +0900 Subject: [PATCH] fix tests --- .../socketio/client/ServerConnectionTest.java | 24 +++++++++++-------- src/test/resources/server.js | 4 ++-- 2 files changed, 16 insertions(+), 12 deletions(-) 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 ae85e72..d599695 100644 --- a/src/test/java/com/github/nkzawa/socketio/client/ServerConnectionTest.java +++ b/src/test/java/com/github/nkzawa/socketio/client/ServerConnectionTest.java @@ -11,6 +11,8 @@ import org.junit.runners.JUnit4; import java.net.URISyntaxException; import java.util.Map; +import java.util.concurrent.BlockingQueue; +import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.Semaphore; import static org.hamcrest.CoreMatchers.*; @@ -269,7 +271,7 @@ public class ServerConnectionTest extends Connection { @Test(timeout = TIMEOUT) public void pollingHeaders() throws URISyntaxException, InterruptedException { - final Semaphore semaphore = new Semaphore(0); + final BlockingQueue values = new LinkedBlockingQueue(); IO.Options opts = createOptions(); opts.transports = new String[] {Polling.NAME}; @@ -290,20 +292,21 @@ public class ServerConnectionTest extends Connection { public void call(Object... args) { @SuppressWarnings("unchecked") Map headers = (Map)args[0]; - assertThat(headers.get("X-SocketIO"), is("hi")); - socket.close(); - semaphore.release(); + String value = headers.get("X-SocketIO"); + values.offer(value != null ? value : ""); } }); } }); socket.open(); - semaphore.acquire(); + + assertThat((String)values.take(), is("hi")); + socket.close(); } @Test(timeout = TIMEOUT) public void websocketHandshakeHeaders() throws URISyntaxException, InterruptedException { - final Semaphore semaphore = new Semaphore(0); + final BlockingQueue values = new LinkedBlockingQueue(); IO.Options opts = createOptions(); opts.transports = new String[] {WebSocket.NAME}; @@ -324,14 +327,15 @@ public class ServerConnectionTest extends Connection { public void call(Object... args) { @SuppressWarnings("unchecked") Map headers = (Map)args[0]; - assertThat(headers.get("X-SocketIO"), is("hi")); - socket.close(); - semaphore.release(); + String value = headers.get("X-SocketIO"); + values.offer(value != null ? value : ""); } }); } }); socket.open(); - semaphore.acquire(); + + assertThat((String)values.take(), is("hi")); + socket.close(); } } diff --git a/src/test/resources/server.js b/src/test/resources/server.js index 06a7ce4..b733431 100644 --- a/src/test/resources/server.js +++ b/src/test/resources/server.js @@ -73,14 +73,14 @@ function before(context, name, fn) { }; } -before(io.eio, 'handleRequest', function(req, res) { +before(io.engine, 'handleRequest', function(req, res) { // echo a header value var value = req.headers['x-socketio']; if (!value) return; res.setHeader('X-SocketIO', value); }); -before(io.eio, 'handleUpgrade', function(req, socket, head) { +before(io.engine, 'handleUpgrade', function(req, socket, head) { // echo a header value for websocket handshake var value = req.headers['x-socketio']; if (!value) return;