You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ta...@apache.org on 2015/07/28 22:56:18 UTC
[2/4] activemq-cpp git commit:
https://issues.apache.org/jira/browse/AMQCPP-579
https://issues.apache.org/jira/browse/AMQCPP-579
fix test case
Project: http://git-wip-us.apache.org/repos/asf/activemq-cpp/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-cpp/commit/e04676c1
Tree: http://git-wip-us.apache.org/repos/asf/activemq-cpp/tree/e04676c1
Diff: http://git-wip-us.apache.org/repos/asf/activemq-cpp/diff/e04676c1
Branch: refs/heads/master
Commit: e04676c18653101d63cd93012f2e5c0f0110d044
Parents: 6b190a9
Author: Timothy Bish <ta...@gmail.com>
Authored: Tue Jul 28 16:46:55 2015 -0400
Committer: Timothy Bish <ta...@gmail.com>
Committed: Tue Jul 28 16:46:55 2015 -0400
----------------------------------------------------------------------
.../activemq/test/MessagePriorityTest.cpp | 45 ++++++++++++--------
1 file changed, 27 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/activemq-cpp/blob/e04676c1/activemq-cpp/src/test-integration/activemq/test/MessagePriorityTest.cpp
----------------------------------------------------------------------
diff --git a/activemq-cpp/src/test-integration/activemq/test/MessagePriorityTest.cpp b/activemq-cpp/src/test-integration/activemq/test/MessagePriorityTest.cpp
index ffb2c04..3eec006 100644
--- a/activemq-cpp/src/test-integration/activemq/test/MessagePriorityTest.cpp
+++ b/activemq-cpp/src/test-integration/activemq/test/MessagePriorityTest.cpp
@@ -19,6 +19,8 @@
#include <activemq/util/CMSListener.h>
#include <activemq/exceptions/ActiveMQException.h>
+#include <activemq/core/ActiveMQConnectionFactory.h>
+#include <activemq/core/ActiveMQConnection.h>
#include <decaf/lang/Thread.h>
#include <decaf/util/UUID.h>
@@ -27,6 +29,7 @@
using namespace std;
using namespace cms;
using namespace activemq;
+using namespace activemq::core;
using namespace activemq::test;
using namespace activemq::util;
using namespace activemq::exceptions;
@@ -52,7 +55,7 @@ namespace {
public:
- ProducerThread( Session* session, Destination* destination, int num, int priority ) :
+ ProducerThread(Session* session, Destination* destination, int num, int priority) :
session(session), destination(destination), num(num), priority(priority) {
}
@@ -60,13 +63,13 @@ namespace {
virtual void run() {
- Pointer<MessageProducer> producer( session->createProducer( destination ) );
- producer->setDeliveryMode( cms::DeliveryMode::NON_PERSISTENT );
- producer->setPriority( priority );
+ Pointer<MessageProducer> producer(session->createProducer(destination));
+ producer->setDeliveryMode(cms::DeliveryMode::NON_PERSISTENT);
+ producer->setPriority(priority);
- for( int i = 0; i < num; ++i ) {
- Pointer<TextMessage> message( session->createTextMessage( "Test Message") );
- producer->send( message.get() );
+ for (int i = 0; i < num; ++i) {
+ Pointer<TextMessage> message(session->createTextMessage("Test Message"));
+ producer->send(message.get());
}
}
};
@@ -85,15 +88,21 @@ void MessagePriorityTest::testMessagePrioritySendReceive() {
static const int MSG_COUNT = 25;
- // Create CMS Object for Comms
- cms::Session* session( cmsProvider->getSession() );
+ Pointer<ActiveMQConnectionFactory> connectionFactory(
+ new ActiveMQConnectionFactory(getBrokerURL()));
- cms::MessageConsumer* consumer = cmsProvider->getConsumer();
+ connectionFactory->setMessagePrioritySupported(true);
- Destination* destination = cmsProvider->getDestination();
+ Pointer<Connection> connection(connectionFactory->createConnection());
+ Pointer<Session> session(connection->createSession(Session::AUTO_ACKNOWLEDGE));
+ Pointer<Queue> destination(session->createTemporaryQueue());
+ Pointer<MessageProducer> producer(session->createProducer(destination.get()));
+ Pointer<MessageConsumer> consumer(session->createConsumer(destination.get()));
- ProducerThread thread1( session, destination, MSG_COUNT, 9 );
- ProducerThread thread2( session, destination, MSG_COUNT, 1 );
+ connection->start();
+
+ ProducerThread thread1(session.get(), destination.get(), MSG_COUNT, 9);
+ ProducerThread thread2(session.get(), destination.get(), MSG_COUNT, 1);
thread1.start();
thread2.start();
@@ -101,11 +110,11 @@ void MessagePriorityTest::testMessagePrioritySendReceive() {
thread1.join();
thread2.join();
- Thread::sleep( 3000 );
+ Thread::sleep(3000);
- for( int i = 0; i < MSG_COUNT * 2; ++i ) {
- Pointer<cms::Message> message( consumer->receive( 2000 ) );
- CPPUNIT_ASSERT( message != NULL );
- CPPUNIT_ASSERT( message->getCMSPriority() == ( i < MSG_COUNT ? 9 : 1 ) );
+ for (int i = 0; i < MSG_COUNT * 2; ++i) {
+ Pointer<cms::Message> message(consumer->receive(2000));
+ CPPUNIT_ASSERT(message != NULL);
+ CPPUNIT_ASSERT(message->getCMSPriority() == (i < MSG_COUNT ? 9 : 1));
}
}