diff --git a/src/test/java/org/dna/mqtt/moquette/server/MQTTHandlerTest.java b/src/test/java/org/dna/mqtt/moquette/server/MQTTHandlerTest.java index da4d4a7a..a223eb62 100644 --- a/src/test/java/org/dna/mqtt/moquette/server/MQTTHandlerTest.java +++ b/src/test/java/org/dna/mqtt/moquette/server/MQTTHandlerTest.java @@ -6,6 +6,7 @@ import org.apache.mina.core.filterchain.IoFilterAdapter; import org.apache.mina.core.session.DummySession; import org.apache.mina.core.session.IoSession; import org.dna.mqtt.moquette.proto.messages.ConnectMessage; +import org.junit.Before; import org.junit.Test; import static org.junit.Assert.*; @@ -15,29 +16,39 @@ import static org.junit.Assert.*; */ public class MQTTHandlerTest { - @Test - public void testHandleConnect_BadProtocol() { - MQTTHandler h = new MQTTHandler(); - ConnectMessage connMsg = new ConnectMessage(); - connMsg.setProcotolVersion((byte) 0x02); - - IoSession session = new DummySession(); - session.getFilterChain().addFirst("MessageCatcher", new IoFilterAdapter() { + byte m_returnCode; + + IoSession m_session; + + @Before + public void setUp() { + m_session = new DummySession(); + m_session.getFilterChain().addFirst("MessageCatcher", new IoFilterAdapter() { @Override public void filterWrite(NextFilter nextFilter, IoSession session, WriteRequest writeRequest) throws Exception { try { ConnAckMessage buf = (ConnAckMessage) writeRequest.getMessage(); - assertEquals(ConnAckMessage.UNNACEPTABLE_PROTOCOL_VERSION, buf.getReturnCode()); + m_returnCode = buf.getReturnCode(); } catch (Exception ex) { - fail("Wrong return code"); + throw new AssertionError("Wrong return code"); } } }); + } + + @Test + public void testHandleConnect_BadProtocol() { + MQTTHandler h = new MQTTHandler(); + ConnectMessage connMsg = new ConnectMessage(); + connMsg.setProcotolVersion((byte) 0x02); //Exercise - h.handleConnect(session, connMsg); + h.handleConnect(m_session, connMsg); + + //Verify + assertEquals(ConnAckMessage.UNNACEPTABLE_PROTOCOL_VERSION, m_returnCode); } @@ -48,25 +59,10 @@ public class MQTTHandlerTest { connMsg.setProcotolVersion((byte) 0x03); connMsg.setClientID("extremely_long_clientID_grtaer_than_23"); - IoSession session = new DummySession(); - session.getFilterChain().addFirst("MessageCatcher", new IoFilterAdapter() { - - @Override - public void filterWrite(NextFilter nextFilter, IoSession session, - WriteRequest writeRequest) throws Exception { - try { - ConnAckMessage buf = (ConnAckMessage) writeRequest.getMessage(); - assertEquals(ConnAckMessage.IDENTIFIER_REJECTED, buf.getReturnCode()); - } catch (Exception ex) { - fail("Wrong return code"); - } - } - }); - //Exercise - h.handleConnect(session, connMsg); + h.handleConnect(m_session, connMsg); + + //Verify + assertEquals(ConnAckMessage.IDENTIFIER_REJECTED, m_returnCode); } - - - }