Add extra test cases to fully cover equals. Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/1626a3ec Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/1626a3ec Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/1626a3ec
Branch: refs/heads/master Commit: 1626a3ec29c49f4681cc17e09e28eda994e8235d Parents: 343a075 Author: Timothy Bish <tabish...@gmail.com> Authored: Thu Oct 9 17:29:43 2014 -0400 Committer: Timothy Bish <tabish...@gmail.com> Committed: Thu Oct 9 17:29:43 2014 -0400 ---------------------------------------------------------------------- .../message/JmsInboundMessageDispatchTest.java | 37 ++++++++++++++++++++ 1 file changed, 37 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/1626a3ec/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsInboundMessageDispatchTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsInboundMessageDispatchTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsInboundMessageDispatchTest.java index f40f3b2..d80f4f1 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsInboundMessageDispatchTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/message/JmsInboundMessageDispatchTest.java @@ -32,6 +32,43 @@ import org.junit.Test; public class JmsInboundMessageDispatchTest { @Test + public void testEqualsWithNullAndOtherTypes() { + JmsInboundMessageDispatch envelope = new JmsInboundMessageDispatch(1); + assertFalse(envelope.equals(null)); + assertFalse(envelope.equals("")); + } + + @Test + public void testEqualAndHashCodeWithNotInitializedAndInitializedEnvelopes() { + JmsSessionId sessionId = new JmsSessionId("con", 1); + + long sequence = 1; + JmsInboundMessageDispatch envelope1 = new JmsInboundMessageDispatch(sequence); + + JmsInboundMessageDispatch envelope2 = new JmsInboundMessageDispatch(sequence); + JmsConsumerId consumerId2 = new JmsConsumerId(sessionId, 2); + envelope2.setConsumerId(consumerId2); + envelope2.setMessageId("myMessageId"); + + assertFalse("objects should not be equal", envelope1.equals(envelope2)); + assertFalse("objects should still not be equal", envelope2.equals(envelope1)); + + // Not strictly a requirement, but expected in this case + assertNotEquals("hashCodes should not be the same", envelope1.hashCode(), envelope2.hashCode()); + + envelope2.setMessageId(null); + assertFalse("objects should not be equal", envelope1.equals(envelope2)); + assertFalse("objects should still not be equal", envelope2.equals(envelope1)); + + // Not strictly a requirement, but expected in this case + assertNotEquals("hashCodes should not be the same", envelope1.hashCode(), envelope2.hashCode()); + + envelope2.setConsumerId(null); + assertTrue("objects should be equal", envelope1.equals(envelope2)); + assertTrue("objects should still be equal", envelope2.equals(envelope1)); + } + + @Test public void testEqualAndHashCodeWithSameSequenceOnly() { int sequence = 1; JmsInboundMessageDispatch envelope1 = new JmsInboundMessageDispatch(sequence); --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org