diff options
| author | Robert Godfrey <rgodfrey@apache.org> | 2013-07-16 06:58:32 +0000 |
|---|---|---|
| committer | Robert Godfrey <rgodfrey@apache.org> | 2013-07-16 06:58:32 +0000 |
| commit | bab5de247225ac59a24e98311f98d70a22468734 (patch) | |
| tree | 31878a229a22fa585f0e0df613c5038cc37deb68 /qpid/java | |
| parent | 58fb658d72dd0a0d750fdd3f97e607cf3d2e9134 (diff) | |
| download | qpid-python-bab5de247225ac59a24e98311f98d70a22468734.tar.gz | |
QPID-4659 : [Java Broker] reduce unnecessary usage of 0-8 classes in tests
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1503575 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java')
10 files changed, 162 insertions, 174 deletions
diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/AMQPriorityQueueTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/AMQPriorityQueueTest.java index 25d4e4fa2c..693fd16b9f 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/AMQPriorityQueueTest.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/AMQPriorityQueueTest.java @@ -24,12 +24,14 @@ import junit.framework.AssertionFailedError; import org.apache.qpid.AMQException; import org.apache.qpid.framing.AMQShortString; -import org.apache.qpid.framing.BasicContentHeaderProperties; import org.apache.qpid.framing.FieldTable; -import org.apache.qpid.server.protocol.v0_8.AMQMessage; +import org.apache.qpid.server.message.AMQMessageHeader; +import org.apache.qpid.server.message.ServerMessage; import java.util.ArrayList; +import static org.mockito.Mockito.when; + public class AMQPriorityQueueTest extends SimpleAMQQueueTest { @@ -95,16 +97,16 @@ public class AMQPriorityQueueTest extends SimpleAMQQueueTest } - protected AMQMessage createMessage(Long id, byte i) throws AMQException + protected ServerMessage createMessage(Long id, byte i) throws AMQException { - AMQMessage msg = super.createMessage(id); - BasicContentHeaderProperties props = new BasicContentHeaderProperties(); - props.setPriority(i); - msg.getContentHeaderBody().setProperties(props); + + ServerMessage msg = super.createMessage(id); + AMQMessageHeader hdr = msg.getMessageHeader(); + when(hdr.getPriority()).thenReturn(i); return msg; } - protected AMQMessage createMessage(Long id) throws AMQException + protected ServerMessage createMessage(Long id) throws AMQException { return createMessage(id, (byte) 0); } diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/ConflationQueueListTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/ConflationQueueListTest.java index d610ac08ed..6538724a71 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/ConflationQueueListTest.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/ConflationQueueListTest.java @@ -23,10 +23,8 @@ import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; import junit.framework.TestCase; -import org.apache.qpid.server.protocol.v0_8.AMQMessage; +import org.apache.qpid.server.message.MessageReference; import org.apache.qpid.server.message.AMQMessageHeader; -import org.apache.qpid.server.protocol.v0_8.AMQMessageReference; -import org.apache.qpid.server.protocol.v0_8.MessageMetaData; import org.apache.qpid.server.message.ServerMessage; import org.apache.qpid.server.virtualhost.VirtualHost; @@ -56,7 +54,7 @@ public class ConflationQueueListTest extends TestCase public void testAddMessageWithoutConflationKeyValue() { - ServerMessage<MessageMetaData> message = createTestServerMessage(null); + ServerMessage message = createTestServerMessage(null); _list.add(message); int numberOfEntries = countEntries(_list); @@ -65,7 +63,7 @@ public class ConflationQueueListTest extends TestCase public void testAddAndDiscardMessageWithoutConflationKeyValue() { - ServerMessage<MessageMetaData> message = createTestServerMessage(null); + ServerMessage message = createTestServerMessage(null); QueueEntry addedEntry = _list.add(message); addedEntry.discard(); @@ -76,7 +74,7 @@ public class ConflationQueueListTest extends TestCase public void testAddMessageWithConflationKeyValue() { - ServerMessage<MessageMetaData> message = createTestServerMessage(TEST_KEY_VALUE); + ServerMessage message = createTestServerMessage(TEST_KEY_VALUE); _list.add(message); int numberOfEntries = countEntries(_list); @@ -85,7 +83,7 @@ public class ConflationQueueListTest extends TestCase public void testAddAndRemoveMessageWithConflationKeyValue() { - ServerMessage<MessageMetaData> message = createTestServerMessage(TEST_KEY_VALUE); + ServerMessage message = createTestServerMessage(TEST_KEY_VALUE); QueueEntry addedEntry = _list.add(message); addedEntry.discard(); @@ -96,8 +94,8 @@ public class ConflationQueueListTest extends TestCase public void testAddTwoMessagesWithDifferentConflationKeyValue() { - ServerMessage<MessageMetaData> message1 = createTestServerMessage(TEST_KEY_VALUE1); - ServerMessage<MessageMetaData> message2 = createTestServerMessage(TEST_KEY_VALUE2); + ServerMessage message1 = createTestServerMessage(TEST_KEY_VALUE1); + ServerMessage message2 = createTestServerMessage(TEST_KEY_VALUE2); _list.add(message1); _list.add(message2); @@ -108,8 +106,8 @@ public class ConflationQueueListTest extends TestCase public void testAddTwoMessagesWithSameConflationKeyValue() { - ServerMessage<MessageMetaData> message1 = createTestServerMessage(TEST_KEY_VALUE); - ServerMessage<MessageMetaData> message2 = createTestServerMessage(TEST_KEY_VALUE); + ServerMessage message1 = createTestServerMessage(TEST_KEY_VALUE); + ServerMessage message2 = createTestServerMessage(TEST_KEY_VALUE); _list.add(message1); _list.add(message2); @@ -120,8 +118,8 @@ public class ConflationQueueListTest extends TestCase public void testSupersededEntryIsDiscardedOnRelease() { - ServerMessage<MessageMetaData> message1 = createTestServerMessage(TEST_KEY_VALUE); - ServerMessage<MessageMetaData> message2 = createTestServerMessage(TEST_KEY_VALUE); + ServerMessage message1 = createTestServerMessage(TEST_KEY_VALUE); + ServerMessage message2 = createTestServerMessage(TEST_KEY_VALUE); QueueEntry entry1 = _list.add(message1); entry1.acquire(); // simulate an in-progress delivery to consumer @@ -141,7 +139,7 @@ public class ConflationQueueListTest extends TestCase { assertEquals(0, _list.getLatestValuesMap().size()); - ServerMessage<MessageMetaData> message = createTestServerMessage(TEST_KEY_VALUE); + ServerMessage message = createTestServerMessage(TEST_KEY_VALUE); QueueEntry addedEntry = _list.add(message); @@ -159,8 +157,8 @@ public class ConflationQueueListTest extends TestCase assertEquals(0, _list.getLatestValuesMap().size()); - ServerMessage<MessageMetaData> message1 = createTestServerMessage(TEST_KEY_VALUE1); - ServerMessage<MessageMetaData> message2 = createTestServerMessage(TEST_KEY_VALUE2); + ServerMessage message1 = createTestServerMessage(TEST_KEY_VALUE1); + ServerMessage message2 = createTestServerMessage(TEST_KEY_VALUE2); QueueEntry addedEntry1 = _list.add(message1); QueueEntry addedEntry2 = _list.add(message2); @@ -186,16 +184,17 @@ public class ConflationQueueListTest extends TestCase return count; } - private ServerMessage<MessageMetaData> createTestServerMessage(String conflationKeyValue) + private ServerMessage createTestServerMessage(String conflationKeyValue) { - AMQMessage mockMessage = mock(AMQMessage.class); + ServerMessage mockMessage = mock(ServerMessage.class); AMQMessageHeader messageHeader = mock(AMQMessageHeader.class); when(messageHeader.getHeader(CONFLATION_KEY)).thenReturn(conflationKeyValue); when(mockMessage.getMessageHeader()).thenReturn(messageHeader); - AMQMessageReference messageReference = new AMQMessageReference(mockMessage); + MessageReference messageReference = mock(MessageReference.class); when(mockMessage.newReference()).thenReturn(messageReference); + when(messageReference.getMessage()).thenReturn(mockMessage); return mockMessage; } diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockQueueEntry.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockQueueEntry.java index 6db00f4040..c3485f6140 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockQueueEntry.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/MockQueueEntry.java @@ -29,7 +29,7 @@ import org.apache.qpid.server.subscription.Subscription; public class MockQueueEntry implements QueueEntry { - private AMQMessage _message; + private ServerMessage _message; public boolean acquire() { @@ -209,7 +209,7 @@ public class MockQueueEntry implements QueueEntry return 0; } - public void setMessage(AMQMessage msg) + public void setMessage(ServerMessage msg) { _message = msg; } diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/QueueEntryImplTestBase.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/QueueEntryImplTestBase.java index 8f61633d6a..e0b2a90cb0 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/QueueEntryImplTestBase.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/QueueEntryImplTestBase.java @@ -21,6 +21,7 @@ package org.apache.qpid.server.queue; import junit.framework.TestCase; import org.apache.qpid.AMQException; +import org.apache.qpid.server.message.ServerMessage; import org.apache.qpid.server.protocol.v0_8.AMQMessage; import org.apache.qpid.server.queue.QueueEntry.EntryState; import org.apache.qpid.server.subscription.MockSubscription; @@ -28,6 +29,9 @@ import org.apache.qpid.server.subscription.Subscription; import java.lang.reflect.Field; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + /** * Tests for {@link QueueEntryImpl} */ @@ -211,8 +215,9 @@ public abstract class QueueEntryImplTestBase extends TestCase // create test entries for(int i = 0; i < numberOfEntries ; i++) { - AMQMessage message = new MockAMQMessage(i); - QueueEntryImpl entry = (QueueEntryImpl)queueEntryList.add(message); + ServerMessage message = mock(ServerMessage.class); + when(message.getMessageNumber()).thenReturn((long)i); + QueueEntryImpl entry = queueEntryList.add(message); entries[i] = entry; } diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/QueueEntryListTestBase.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/QueueEntryListTestBase.java index 4b40c3b552..25ab115748 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/QueueEntryListTestBase.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/QueueEntryListTestBase.java @@ -22,8 +22,13 @@ package org.apache.qpid.server.queue; import junit.framework.TestCase; import org.apache.qpid.AMQException; +import org.apache.qpid.server.message.AMQMessageHeader; +import org.apache.qpid.server.message.MessageReference; import org.apache.qpid.server.message.ServerMessage; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + /** * Abstract test class for QueueEntryList implementations. */ @@ -72,7 +77,14 @@ public abstract class QueueEntryListTestBase extends TestCase public void testAddGenericMessage() throws AMQException { final QueueEntryList<QueueEntry> list = getTestList(); - list.add(new MockAMQMessage(666)); + final ServerMessage message = mock(ServerMessage.class); + when(message.getMessageNumber()).thenReturn((long)666); + MessageReference ref = mock(MessageReference.class); + AMQMessageHeader hdr = mock(AMQMessageHeader.class); + when(ref.getMessage()).thenReturn(message); + when(message.newReference()).thenReturn(ref); + when(message.getMessageHeader()).thenReturn(hdr); + list.add(message); final QueueEntryIterator<?> iter = list.iterator(); int count = 0; diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleAMQQueueTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleAMQQueueTest.java index 07e72d3535..0faa796f1c 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleAMQQueueTest.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleAMQQueueTest.java @@ -27,30 +27,24 @@ import static org.mockito.Mockito.verifyZeroInteractions; import static org.mockito.Mockito.atLeastOnce; import static org.mockito.Matchers.contains; import static org.mockito.Matchers.eq; +import static org.mockito.Mockito.when; import org.apache.qpid.AMQException; import org.apache.qpid.AMQInternalException; import org.apache.qpid.AMQSecurityException; import org.apache.qpid.exchange.ExchangeDefaults; import org.apache.qpid.framing.AMQShortString; -import org.apache.qpid.framing.BasicContentHeaderProperties; -import org.apache.qpid.framing.ContentHeaderBody; import org.apache.qpid.framing.FieldTable; import org.apache.qpid.framing.abstraction.MessagePublishInfo; import org.apache.qpid.server.exchange.DirectExchange; -import org.apache.qpid.server.protocol.v0_8.AMQMessage; -import org.apache.qpid.server.protocol.v0_8.IncomingMessage; -import org.apache.qpid.server.protocol.v0_8.MessageMetaData; +import org.apache.qpid.server.message.AMQMessageHeader; +import org.apache.qpid.server.message.MessageReference; import org.apache.qpid.server.message.ServerMessage; import org.apache.qpid.server.model.UUIDGenerator; import org.apache.qpid.server.queue.BaseQueue.PostEnqueueAction; import org.apache.qpid.server.queue.SimpleAMQQueue.QueueEntryFilter; -import org.apache.qpid.server.store.StoredMessage; -import org.apache.qpid.server.store.TestableMemoryMessageStore; import org.apache.qpid.server.subscription.MockSubscription; import org.apache.qpid.server.subscription.Subscription; -import org.apache.qpid.server.txn.AutoCommitTransaction; -import org.apache.qpid.server.txn.ServerTransaction; import org.apache.qpid.server.util.BrokerTestHelper; import org.apache.qpid.server.virtualhost.VirtualHost; import org.apache.qpid.test.utils.QpidTestCase; @@ -196,7 +190,7 @@ public class SimpleAMQQueueTest extends QpidTestCase _queue.getActiveConsumerCount()); // Check sending a message ends up with the subscriber - AMQMessage messageA = createMessage(new Long(24)); + ServerMessage messageA = createMessage(new Long(24)); _queue.enqueue(messageA); try { @@ -215,7 +209,7 @@ public class SimpleAMQQueueTest extends QpidTestCase assertFalse("Queue still has active consumer", 1 == _queue.getActiveConsumerCount()); - AMQMessage messageB = createMessage(new Long (25)); + ServerMessage messageB = createMessage(new Long (25)); _queue.enqueue(messageB); assertNull(_subscription.getQueueContext()); @@ -223,7 +217,7 @@ public class SimpleAMQQueueTest extends QpidTestCase public void testEnqueueMessageThenRegisterSubscription() throws AMQException, InterruptedException { - AMQMessage messageA = createMessage(new Long(24)); + ServerMessage messageA = createMessage(new Long(24)); _queue.enqueue(messageA); _queue.registerSubscription(_subscription, false); Thread.sleep(150); @@ -236,8 +230,8 @@ public class SimpleAMQQueueTest extends QpidTestCase */ public void testEnqueueTwoMessagesThenRegisterSubscription() throws Exception { - AMQMessage messageA = createMessage(new Long(24)); - AMQMessage messageB = createMessage(new Long(25)); + ServerMessage messageA = createMessage(new Long(24)); + ServerMessage messageB = createMessage(new Long(25)); _queue.enqueue(messageA); _queue.enqueue(messageB); _queue.registerSubscription(_subscription, false); @@ -263,9 +257,9 @@ public class SimpleAMQQueueTest extends QpidTestCase } }; - AMQMessage messageA = createMessage(new Long(24)); - AMQMessage messageB = createMessage(new Long(25)); - AMQMessage messageC = createMessage(new Long(26)); + ServerMessage messageA = createMessage(new Long(24)); + ServerMessage messageB = createMessage(new Long(25)); + ServerMessage messageC = createMessage(new Long(26)); /* Enqueue three messages */ @@ -313,9 +307,10 @@ public class SimpleAMQQueueTest extends QpidTestCase /* Enqueue one message with expiration set for a short time in the future */ - AMQMessage messageA = createMessage(new Long(24)); + ServerMessage messageA = createMessage(new Long(24)); int messageExpirationOffset = 200; - messageA.setExpiration(System.currentTimeMillis() + messageExpirationOffset); + final long expiration = System.currentTimeMillis() + messageExpirationOffset; + when(messageA.getExpiration()).thenReturn(expiration); _queue.enqueue(messageA, postEnqueueAction); @@ -357,9 +352,9 @@ public class SimpleAMQQueueTest extends QpidTestCase } }; - AMQMessage messageA = createMessage(new Long(24)); - AMQMessage messageB = createMessage(new Long(25)); - AMQMessage messageC = createMessage(new Long(26)); + ServerMessage messageA = createMessage(new Long(24)); + ServerMessage messageB = createMessage(new Long(25)); + ServerMessage messageC = createMessage(new Long(26)); /* Enqueue three messages */ @@ -410,8 +405,8 @@ public class SimpleAMQQueueTest extends QpidTestCase } }; - AMQMessage messageA = createMessage(new Long(24)); - AMQMessage messageB = createMessage(new Long(25)); + ServerMessage messageA = createMessage(new Long(24)); + ServerMessage messageB = createMessage(new Long(25)); /* Enqueue two messages */ @@ -444,7 +439,7 @@ public class SimpleAMQQueueTest extends QpidTestCase _queue.getActiveConsumerCount()); // Check sending a message ends up with the subscriber - AMQMessage messageA = createMessage(new Long(24)); + ServerMessage messageA = createMessage(new Long(24)); _queue.enqueue(messageA); try { @@ -489,7 +484,7 @@ public class SimpleAMQQueueTest extends QpidTestCase _queue = new SimpleAMQQueue(UUIDGenerator.generateRandomUUID(), _qname, false, null, true, false, _virtualHost, Collections.EMPTY_MAP); _queue.setDeleteOnNoConsumers(true); _queue.registerSubscription(_subscription, false); - AMQMessage message = createMessage(new Long(25)); + ServerMessage message = createMessage(new Long(25)); _queue.enqueue(message); _queue.unregisterSubscription(_subscription); assertTrue("Queue was not deleted when subscription was removed", @@ -500,7 +495,7 @@ public class SimpleAMQQueueTest extends QpidTestCase { _queue.registerSubscription(_subscription, false); Long id = new Long(26); - AMQMessage message = createMessage(id); + ServerMessage message = createMessage(id); _queue.enqueue(message); QueueEntry entry = _subscription.getQueueContext().getLastSeenEntry(); entry.setRedelivered(); @@ -512,7 +507,7 @@ public class SimpleAMQQueueTest extends QpidTestCase { // Create message Long messageId = new Long(23); - AMQMessage message = createMessage(messageId); + ServerMessage message = createMessage(messageId); // Put message on queue _queue.enqueue(message); @@ -529,7 +524,7 @@ public class SimpleAMQQueueTest extends QpidTestCase { // Create message Long messageId = new Long(i); - AMQMessage message = createMessage(messageId); + ServerMessage message = createMessage(messageId); // Put message on queue _queue.enqueue(message); } @@ -550,7 +545,7 @@ public class SimpleAMQQueueTest extends QpidTestCase { // Create message Long messageId = new Long(i); - AMQMessage message = createMessage(messageId); + ServerMessage message = createMessage(messageId); // Put message on queue _queue.enqueue(message); } @@ -571,7 +566,7 @@ public class SimpleAMQQueueTest extends QpidTestCase { // Create message Long messageId = new Long(i); - AMQMessage message = createMessage(messageId); + ServerMessage message = createMessage(messageId); // Put message on queue _queue.enqueue(message); } @@ -628,56 +623,6 @@ public class SimpleAMQQueueTest extends QpidTestCase assertEquals("Message ID was wrong", msgID, 10L); } - public void testEnqueueDequeueOfPersistentMessageToNonDurableQueue() throws AMQException - { - // Create IncomingMessage and nondurable queue - final IncomingMessage msg = new IncomingMessage(info); - ContentHeaderBody contentHeaderBody = new ContentHeaderBody(); - contentHeaderBody.setProperties(new BasicContentHeaderProperties()); - ((BasicContentHeaderProperties) contentHeaderBody.getProperties()).setDeliveryMode((byte) 2); - msg.setContentHeaderBody(contentHeaderBody); - - final ArrayList<BaseQueue> qs = new ArrayList<BaseQueue>(); - - // Send persistent message - - qs.add(_queue); - MessageMetaData metaData = msg.headersReceived(System.currentTimeMillis()); - TestableMemoryMessageStore store = (TestableMemoryMessageStore) _virtualHost.getMessageStore(); - StoredMessage handle = store.addMessage(metaData); - msg.setStoredMessage(handle); - - - ServerTransaction txn = new AutoCommitTransaction(store); - - txn.enqueue(qs, msg, new ServerTransaction.Action() - { - public void postCommit() - { - msg.enqueue(qs); - } - - public void onRollback() - { - } - }); - - // Check that it is enqueued - AMQQueue data = store.getMessages().get(1L); - assertNull(data); - - // Dequeue message - MockQueueEntry entry = new MockQueueEntry(); - AMQMessage amqmsg = new AMQMessage(handle); - - entry.setMessage(amqmsg); - _queue.dequeue(entry,null); - - // Check that it is dequeued - data = store.getMessages().get(1L); - assertNull(data); - } - /** * processQueue() is used when asynchronously delivering messages to @@ -784,7 +729,7 @@ public class SimpleAMQQueueTest extends QpidTestCase int expectedId = 0; for (int i = 0; i < messageNumber - 1; i++) { - Long id = ((AMQMessage) entries.get(i).getMessage()).getMessageId(); + Long id = ( entries.get(i).getMessage()).getMessageNumber(); if (i == dequeueMessageIndex) { assertFalse("Message with id " + dequeueMessageIndex @@ -832,7 +777,7 @@ public class SimpleAMQQueueTest extends QpidTestCase int expectedId = 0; for (int i = 0; i < messageNumber - 1; i++) { - Long id = ((AMQMessage) entries.get(i).getMessage()).getMessageId(); + Long id = (entries.get(i).getMessage()).getMessageNumber(); if (i == dequeueMessageIndex) { assertFalse("Message with id " + dequeueMessageIndex @@ -874,8 +819,8 @@ public class SimpleAMQQueueTest extends QpidTestCase assertNotNull("Null is returned from getMessagesOnTheQueue", entries); assertEquals("Expected " + (messageNumber - 2) + " number of messages but recieved " + entries.size(), messageNumber - 2, entries.size()); - assertEquals("Expected first entry with id 2", new Long(2), - ((AMQMessage) entries.get(0).getMessage()).getMessageId()); + assertEquals("Expected first entry with id 2", 2l, + (entries.get(0).getMessage()).getMessageNumber()); } /** @@ -1014,23 +959,23 @@ public class SimpleAMQQueueTest extends QpidTestCase { public boolean isDequeued() { - return (((AMQMessage) message).getMessageId().longValue() % 2 == 0); + return (message.getMessageNumber() % 2 == 0); } public boolean isDispensed() { - return (((AMQMessage) message).getMessageId().longValue() % 2 == 0); + return (message.getMessageNumber() % 2 == 0); } public boolean isAvailable() { - return !(((AMQMessage) message).getMessageId().longValue() % 2 == 0); + return !(message.getMessageNumber() % 2 == 0); } @Override public boolean acquire(Subscription sub) { - if(((AMQMessage) message).getMessageId().longValue() % 2 == 0) + if(message.getMessageNumber() % 2 == 0) { return false; } @@ -1063,10 +1008,10 @@ public class SimpleAMQQueueTest extends QpidTestCase // assert received messages List<QueueEntry> messages = subscription.getMessages(); assertEquals("Only 2 messages should be returned", 2, messages.size()); - assertEquals("ID of first message should be 1", new Long(1), - ((AMQMessage) messages.get(0).getMessage()).getMessageId()); - assertEquals("ID of second message should be 3", new Long(3), - ((AMQMessage) messages.get(1).getMessage()).getMessageId()); + assertEquals("ID of first message should be 1", 1l, + (messages.get(0).getMessage()).getMessageNumber()); + assertEquals("ID of second message should be 3", 3l, + (messages.get(1).getMessage()).getMessageNumber()); } public void testActiveConsumerCount() throws Exception @@ -1177,7 +1122,7 @@ public class SimpleAMQQueueTest extends QpidTestCase assertEquals(messageNumber, entries.size()); for (int i = 0; i < messageNumber; i++) { - assertEquals(new Long(i), ((AMQMessage)entries.get(i).getMessage()).getMessageId()); + assertEquals((long)i, (entries.get(i).getMessage()).getMessageNumber()); } return entries; } @@ -1200,7 +1145,7 @@ public class SimpleAMQQueueTest extends QpidTestCase { // Create message Long messageId = new Long(i); - AMQMessage message = null; + ServerMessage message = null; try { message = createMessage(messageId); @@ -1290,45 +1235,21 @@ public class SimpleAMQQueueTest extends QpidTestCase _arguments = arguments; } - public class TestMessage extends AMQMessage + + protected ServerMessage createMessage(Long id) throws AMQException { - private final long _tag; - private int _count; + ServerMessage message = mock(ServerMessage.class); + when(message.getMessageNumber()).thenReturn(id); - TestMessage(long tag, long messageId, MessagePublishInfo publishBody) - throws AMQException - { - this(tag, messageId, publishBody, new ContentHeaderBody(1, 1, new BasicContentHeaderProperties(), 0)); + MessageReference ref = mock(MessageReference.class); + when(ref.getMessage()).thenReturn(message); - } - TestMessage(long tag, long messageId, MessagePublishInfo publishBody, ContentHeaderBody chb) - throws AMQException - { - super(new MockStoredMessage(messageId, publishBody, chb)); - _tag = tag; - } + AMQMessageHeader hdr = mock(AMQMessageHeader.class); + when(message.getMessageHeader()).thenReturn(hdr); - public boolean incrementReference() - { - _count++; - return true; - } + when(message.newReference()).thenReturn(ref); - public void decrementReference() - { - _count--; - } - - void assertCountEquals(int expected) - { - assertEquals("Wrong count for message with tag " + _tag, expected, _count); - } - } - - protected AMQMessage createMessage(Long id) throws AMQException - { - AMQMessage messageA = new TestMessage(id, id, info); - return messageA; + return message; } class TestSimpleQueueEntryListFactory implements QueueEntryListFactory diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleQueueEntryImplTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleQueueEntryImplTest.java index ac18bbe687..c2c2fc4b98 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleQueueEntryImplTest.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleQueueEntryImplTest.java @@ -23,12 +23,16 @@ package org.apache.qpid.server.queue; import org.apache.qpid.AMQException; import org.apache.qpid.server.message.ServerMessage; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + public class SimpleQueueEntryImplTest extends QueueEntryImplTestBase { private SimpleQueueEntryList queueEntryList = new SimpleQueueEntryList(new MockAMQQueue("test")); public QueueEntryImpl getQueueEntryImpl(int msgId) throws AMQException { - ServerMessage message = new MockAMQMessage(msgId); + ServerMessage message = mock(ServerMessage.class); + when(message.getMessageNumber()).thenReturn((long)msgId); return queueEntryList.add(message); } diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleQueueEntryListTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleQueueEntryListTest.java index 650a033dbc..63b3a7d165 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleQueueEntryListTest.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SimpleQueueEntryListTest.java @@ -21,12 +21,15 @@ package org.apache.qpid.server.queue; import org.apache.qpid.AMQException; -import org.apache.qpid.server.protocol.v0_8.AMQMessage; +import org.apache.qpid.server.message.MessageReference; import org.apache.qpid.server.message.ServerMessage; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + public class SimpleQueueEntryListTest extends QueueEntryListTestBase { private SimpleQueueEntryList _sqel; @@ -41,8 +44,13 @@ public class SimpleQueueEntryListTest extends QueueEntryListTestBase _sqel = new SimpleQueueEntryList(_testQueue); for(int i = 1; i <= 100; i++) { - final ServerMessage msg = new MockAMQMessage(i); - final QueueEntry bleh = _sqel.add(msg); + final ServerMessage message = mock(ServerMessage.class); + when(message.getMessageNumber()).thenReturn((long) i); + MessageReference ref = mock(MessageReference.class); + when(ref.getMessage()).thenReturn(message); + when(message.newReference()).thenReturn(ref); + + final QueueEntry bleh = _sqel.add(message); assertNotNull("QE should not have been null", bleh); } } @@ -92,9 +100,11 @@ public class SimpleQueueEntryListTest extends QueueEntryListTestBase } @Override - public AMQMessage getTestMessageToAdd() throws AMQException + public ServerMessage getTestMessageToAdd() throws AMQException { - return new MockAMQMessage(1l); + ServerMessage msg = mock(ServerMessage.class); + when(msg.getMessageNumber()).thenReturn(1l); + return msg; } public void testScavenge() throws Exception @@ -106,8 +116,12 @@ public class SimpleQueueEntryListTest extends QueueEntryListTestBase //Add messages to generate QueueEntry's for(int i = 1; i <= 100 ; i++) { - AMQMessage msg = new MockAMQMessage(i); - QueueEntry bleh = sqel.add(msg); + ServerMessage message = mock(ServerMessage.class); + when(message.getMessageNumber()).thenReturn((long) i); + MessageReference ref = mock(MessageReference.class); + when(ref.getMessage()).thenReturn(message); + when(message.newReference()).thenReturn(ref); + QueueEntry bleh = sqel.add(message); assertNotNull("QE should not have been null", bleh); entriesMap.put(i,bleh); } @@ -195,7 +209,8 @@ public class SimpleQueueEntryListTest extends QueueEntryListTestBase // create test entries for(int i = 0; i < numberOfEntries; i++) { - AMQMessage message = new MockAMQMessage(i); + ServerMessage message = mock(ServerMessage.class); + when(message.getMessageNumber()).thenReturn((long)i); entries[i] = queueEntryList.add(message); } diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SortedQueueEntryImplTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SortedQueueEntryImplTest.java index 99e05851ca..acd0ccbdeb 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SortedQueueEntryImplTest.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SortedQueueEntryImplTest.java @@ -19,9 +19,15 @@ */ package org.apache.qpid.server.queue; +import java.util.Collections; import org.apache.qpid.AMQException; +import org.apache.qpid.server.message.AMQMessageHeader; import org.apache.qpid.server.message.ServerMessage; +import static org.mockito.Matchers.eq; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + public class SortedQueueEntryImplTest extends QueueEntryImplTestBase { public final static String keys[] = { "CCC", "AAA", "BBB" }; @@ -29,7 +35,13 @@ public class SortedQueueEntryImplTest extends QueueEntryImplTestBase { private SelfValidatingSortedQueueEntryList queueEntryList = new SelfValidatingSortedQueueEntryList(new MockAMQQueue("test"),"KEY"); public QueueEntryImpl getQueueEntryImpl(int msgId) throws AMQException { - final ServerMessage message = new MockAMQMessage(msgId, "KEY", keys[msgId-1]); + final ServerMessage message = mock(ServerMessage.class); + AMQMessageHeader hdr = mock(AMQMessageHeader.class); + when(message.getMessageHeader()).thenReturn(hdr); + when(hdr.getHeader(eq("KEY"))).thenReturn(keys[msgId-1]); + when(hdr.containsHeader(eq("KEY"))).thenReturn(true); + when(hdr.getHeaderNames()).thenReturn(Collections.singleton("KEY")); + return queueEntryList.add(message); } diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SortedQueueEntryListTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SortedQueueEntryListTest.java index 8e0d9522c7..806606dd0f 100644 --- a/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SortedQueueEntryListTest.java +++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/queue/SortedQueueEntryListTest.java @@ -19,12 +19,19 @@ */ package org.apache.qpid.server.queue; +import java.util.Collections; import org.apache.qpid.AMQException; +import org.apache.qpid.server.message.AMQMessageHeader; +import org.apache.qpid.server.message.MessageReference; import org.apache.qpid.server.protocol.v0_8.AMQMessage; import org.apache.qpid.server.message.ServerMessage; import java.util.Arrays; +import static org.mockito.Matchers.eq; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + public class SortedQueueEntryListTest extends QueueEntryListTestBase { private static SelfValidatingSortedQueueEntryList _sqel; @@ -113,7 +120,18 @@ public class SortedQueueEntryListTest extends QueueEntryListTestBase private ServerMessage generateTestMessage(final long id, final String keyValue) throws AMQException { - return new AMQMessage(new MockStoredMessage(id, "KEY", keyValue)); + final ServerMessage message = mock(ServerMessage.class); + AMQMessageHeader hdr = mock(AMQMessageHeader.class); + when(message.getMessageHeader()).thenReturn(hdr); + when(hdr.getHeader(eq("KEY"))).thenReturn(keyValue); + when(hdr.containsHeader(eq("KEY"))).thenReturn(true); + when(hdr.getHeaderNames()).thenReturn(Collections.singleton("KEY")); + MessageReference ref = mock(MessageReference.class); + when(ref.getMessage()).thenReturn(message); + when(message.newReference()).thenReturn(ref); + when(message.getMessageNumber()).thenReturn(id); + + return message; } public void testIterator() @@ -132,12 +150,12 @@ public class SortedQueueEntryListTest extends QueueEntryListTestBase private Object getSortedKeyValue(QueueEntryIterator<?> iter) { - return ((SortedQueueEntryImpl) iter.getNode()).getMessage().getMessageHeader().getHeader("KEY"); + return (iter.getNode()).getMessage().getMessageHeader().getHeader("KEY"); } private Long getMessageId(QueueEntryIterator<?> iter) { - return ((SortedQueueEntryImpl) iter.getNode()).getMessage().getMessageNumber(); + return (iter.getNode()).getMessage().getMessageNumber(); } public void testNonUniqueSortKeys() throws Exception |
