summaryrefslogtreecommitdiff
path: root/M4-RCs/qpid/java/systests/src/main/java/org/apache/qpid/test/client/DupsOkTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'M4-RCs/qpid/java/systests/src/main/java/org/apache/qpid/test/client/DupsOkTest.java')
-rw-r--r--M4-RCs/qpid/java/systests/src/main/java/org/apache/qpid/test/client/DupsOkTest.java164
1 files changed, 0 insertions, 164 deletions
diff --git a/M4-RCs/qpid/java/systests/src/main/java/org/apache/qpid/test/client/DupsOkTest.java b/M4-RCs/qpid/java/systests/src/main/java/org/apache/qpid/test/client/DupsOkTest.java
deleted file mode 100644
index d1bcaa1bb8..0000000000
--- a/M4-RCs/qpid/java/systests/src/main/java/org/apache/qpid/test/client/DupsOkTest.java
+++ /dev/null
@@ -1,164 +0,0 @@
-package org.apache.qpid.test.client;
-
-import org.apache.qpid.test.utils.QpidTestCase;
-import org.apache.qpid.client.AMQDestination;
-import org.apache.qpid.client.AMQSession;
-
-import javax.jms.Connection;
-import javax.jms.JMSException;
-import javax.jms.Message;
-import javax.jms.MessageConsumer;
-import javax.jms.MessageListener;
-import javax.jms.MessageProducer;
-import javax.jms.Queue;
-import javax.jms.Session;
-import javax.jms.TextMessage;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-
-/*
-*
-* Licensed to the Apache Software Foundation (ASF) under one
-* or more contributor license agreements. See the NOTICE file
-* distributed with this work for additional information
-* regarding copyright ownership. The ASF licenses this file
-* to you under the Apache License, Version 2.0 (the
-* "License"); you may not use this file except in compliance
-* with the License. You may obtain a copy of the License at
-*
-* http://www.apache.org/licenses/LICENSE-2.0
-*
-* Unless required by applicable law or agreed to in writing,
-* software distributed under the License is distributed on an
-* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-* KIND, either express or implied. See the License for the
-* specific language governing permissions and limitations
-* under the License.
-*
-*/
-
-public class DupsOkTest extends QpidTestCase
-{
-
- private Queue _queue;
- // Question why do we need to send so many messages?
- private static final int MSG_COUNT = 4999;
- private CountDownLatch _awaitCompletion = new CountDownLatch(1);
-
- public void setUp() throws Exception
- {
- super.setUp();
-
- _queue = (Queue) getInitialContext().lookup("queue");
-
-
- //Declare the queue
- Connection consumerConnection = getConnection();
- consumerConnection.createSession(false,Session.AUTO_ACKNOWLEDGE).createConsumer(_queue).close();
-
- //Create Producer put some messages on the queue
- Connection producerConnection = getConnection();
-
- producerConnection.start();
-
- Session producerSession = producerConnection.createSession(false, Session.AUTO_ACKNOWLEDGE);
-
- MessageProducer producer = producerSession.createProducer(_queue);
-
- for (int count = 1; count <= MSG_COUNT; count++)
- {
- Message msg = producerSession.createTextMessage("Message " + count);
- msg.setIntProperty("count", count);
- producer.send(msg);
- }
-
- producerConnection.close();
- }
-
- /**
- * This test sends x messages and receives them with an async consumer.
- * Waits for all messages to be received or for 60 s
- * and checks whether the queue is empty.
- *
- * @throws Exception
- */
- public void testDupsOK() throws Exception
- {
- //Create Client
- Connection clientConnection = getConnection();
-
- final Session clientSession = clientConnection.createSession(false, Session.DUPS_OK_ACKNOWLEDGE);
-
- MessageConsumer consumer = clientSession.createConsumer(_queue);
-
- assertEquals("The queue should have msgs at start", MSG_COUNT, ((AMQSession) clientSession).getQueueDepth((AMQDestination) _queue));
-
- clientConnection.start();
-
- consumer.setMessageListener(new MessageListener()
- {
- int _msgCount = 0;
-
- public void onMessage(Message message)
- {
- _msgCount++;
- if (message == null)
- {
- fail("Should not get null messages");
- }
-
- if (message instanceof TextMessage)
- {
- try
- {
- if (message.getIntProperty("count") == MSG_COUNT)
- {
- try
- {
- if(_msgCount != MSG_COUNT)
- {
- assertEquals("Wrong number of messages seen.", MSG_COUNT, _msgCount);
- }
- }
- finally
- {
- //This is the last message so release test.
- _awaitCompletion.countDown();
- }
- }
- }
- catch (JMSException e)
- {
- fail("Unable to get int property 'count'");
- }
- }
- else
- {
- fail("Got wrong message type");
- }
- }
- });
-
- try
- {
- if (!_awaitCompletion.await(120, TimeUnit.SECONDS))
- {
- fail("Test did not complete in 120 seconds");
- }
- }
- catch (InterruptedException e)
- {
- fail("Unable to wait for test completion");
- throw e;
- }
-
- //Close consumer to give broker time to process in bound Acks. As The main thread will be released while
- // before the dispatcher has sent the ack back to the broker.
- consumer.close();
-
- assertEquals("The queue should have 0 msgs left", 0, ((AMQSession) clientSession).getQueueDepth((AMQDestination) _queue));
-
- clientConnection.close();
- }
-
-}