public void testCreateReferencesNonDurable() { ServerMessage msg = new ServerMessageImpl(); msg.setDurable(false); Queue queue1 = EasyMock.createStrictMock(Queue.class); Queue queue2 = EasyMock.createStrictMock(Queue.class); Queue queue3 = EasyMock.createStrictMock(Queue.class); EasyMock.replay(queue1, queue2, queue3); MessageReference ref1 = msg.createReference(queue1); MessageReference ref2 = msg.createReference(queue2); MessageReference ref3 = msg.createReference(queue3); assertEquals(msg, ref1.getMessage()); assertEquals(msg, ref2.getMessage()); assertEquals(msg, ref3.getMessage()); assertEquals(queue1, ref1.getQueue()); assertEquals(queue2, ref2.getQueue()); assertEquals(queue3, ref3.getQueue()); EasyMock.verify(queue1, queue2, queue3); assertEquals(0, msg.getDurableRefCount()); }
public void testCreateReferencesDurable() { ServerMessage msg = new ServerMessageImpl(); msg.setDurable(true); Queue queue1 = EasyMock.createStrictMock(Queue.class); Queue queue2 = EasyMock.createStrictMock(Queue.class); Queue queue3 = EasyMock.createStrictMock(Queue.class); EasyMock.expect(queue1.isDurable()).andReturn(true); EasyMock.expect(queue2.isDurable()).andReturn(true); EasyMock.expect(queue3.isDurable()).andReturn(false); EasyMock.replay(queue1, queue2, queue3); MessageReference ref1 = msg.createReference(queue1); MessageReference ref2 = msg.createReference(queue2); MessageReference ref3 = msg.createReference(queue3); assertEquals(msg, ref1.getMessage()); assertEquals(msg, ref2.getMessage()); assertEquals(msg, ref3.getMessage()); assertEquals(queue1, ref1.getQueue()); assertEquals(queue2, ref2.getQueue()); assertEquals(queue3, ref3.getQueue()); EasyMock.verify(queue1, queue2, queue3); assertEquals(2, msg.getDurableRefCount()); msg.incrementReference(true); assertEquals(3, msg.getDurableRefCount()); msg.incrementReference(true); assertEquals(4, msg.getDurableRefCount()); msg.decrementDurableRefCount(); assertEquals(3, msg.getDurableRefCount()); msg.decrementDurableRefCount(); assertEquals(2, msg.getDurableRefCount()); msg.decrementDurableRefCount(); msg.decrementDurableRefCount(); assertEquals(0, msg.getDurableRefCount()); }