You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by jb...@apache.org on 2020/03/16 14:26:16 UTC
[activemq-artemis] branch master updated: NO-JIRA some tests for
auto-create & FQQN w/JMS
This is an automated email from the ASF dual-hosted git repository.
jbertram pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git
The following commit(s) were added to refs/heads/master by this push:
new 31f00fd NO-JIRA some tests for auto-create & FQQN w/JMS
31f00fd is described below
commit 31f00fda362d91f1b0050f2610a14455783d1fe6
Author: Justin Bertram <jb...@apache.org>
AuthorDate: Fri Mar 13 15:17:29 2020 -0500
NO-JIRA some tests for auto-create & FQQN w/JMS
---
.../client/AutoCreateJmsDestinationTest.java | 90 ++++++++++++++++++++++
1 file changed, 90 insertions(+)
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateJmsDestinationTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateJmsDestinationTest.java
index 1eafdb4..e5bd199 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateJmsDestinationTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/client/AutoCreateJmsDestinationTest.java
@@ -49,7 +49,9 @@ import org.apache.activemq.artemis.jms.client.ActiveMQTopic;
import org.apache.activemq.artemis.spi.core.security.ActiveMQJAASSecurityManager;
import org.apache.activemq.artemis.tests.integration.IntegrationTestLogger;
import org.apache.activemq.artemis.tests.util.JMSTestBase;
+import org.apache.activemq.artemis.tests.util.RandomUtil;
import org.apache.activemq.artemis.tests.util.Wait;
+import org.apache.activemq.artemis.utils.CompositeAddress;
import org.apache.activemq.artemis.utils.UUIDGenerator;
import org.junit.After;
import org.junit.Assert;
@@ -100,6 +102,41 @@ public class AutoCreateJmsDestinationTest extends JMSTestBase {
}
@Test
+ public void testAutoCreateOnSendToFQQN() throws Exception {
+ Connection connection = cf.createConnection();
+ Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ String queueName = RandomUtil.randomString();
+ String addressName = RandomUtil.randomString();
+
+ javax.jms.Queue queue = ActiveMQJMSClient.createQueue(CompositeAddress.toFullyQualified(addressName, queueName));
+
+ MessageProducer producer = session.createProducer(queue);
+
+ final int numMessages = 100;
+
+ for (int i = 0; i < numMessages; i++) {
+ TextMessage mess = session.createTextMessage("msg" + i);
+ producer.send(mess);
+ }
+
+ producer.close();
+
+ MessageConsumer messageConsumer = session.createConsumer(queue);
+ connection.start();
+
+ for (int i = 0; i < numMessages; i++) {
+ Message m = messageConsumer.receive(5000);
+ Assert.assertNotNull(m);
+ }
+
+ // make sure the JMX control was created for the address and queue
+ assertNotNull(server.getManagementService().getResource(ADDRESS + addressName));
+ assertNotNull(server.getManagementService().getResource(QUEUE + queueName));
+
+ connection.close();
+ }
+
+ @Test
public void testAutoCreateOnSendToQueueAnonymousProducer() throws Exception {
Connection connection = cf.createConnection();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
@@ -129,6 +166,37 @@ public class AutoCreateJmsDestinationTest extends JMSTestBase {
}
@Test
+ public void testAutoCreateOnSendToFQQNAnonymousProducer() throws Exception {
+ Connection connection = cf.createConnection();
+ Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ String queueName = RandomUtil.randomString();
+ String addressName = RandomUtil.randomString();
+
+ javax.jms.Queue queue = ActiveMQJMSClient.createQueue(CompositeAddress.toFullyQualified(addressName, queueName));
+
+ MessageProducer producer = session.createProducer(null);
+
+ final int numMessages = 100;
+
+ for (int i = 0; i < numMessages; i++) {
+ TextMessage mess = session.createTextMessage("msg" + i);
+ producer.send(queue, mess);
+ }
+
+ producer.close();
+
+ MessageConsumer messageConsumer = session.createConsumer(queue);
+ connection.start();
+
+ for (int i = 0; i < numMessages; i++) {
+ Message m = messageConsumer.receive(5000);
+ Assert.assertNotNull(m);
+ }
+
+ connection.close();
+ }
+
+ @Test
public void testAutoCreateOnSendToQueueSecurity() throws Exception {
((ActiveMQJAASSecurityManager) server.getSecurityManager()).getConfiguration().addUser("guest", "guest");
((ActiveMQJAASSecurityManager) server.getSecurityManager()).getConfiguration().setDefaultUser("guest");
@@ -188,6 +256,28 @@ public class AutoCreateJmsDestinationTest extends JMSTestBase {
}
@Test
+ public void testAutoCreateOnConsumeFromFQQN() throws Exception {
+ Connection connection = null;
+ connection = cf.createConnection();
+ Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ String queueName = RandomUtil.randomString();
+ String addressName = RandomUtil.randomString();
+
+ javax.jms.Queue queue = ActiveMQJMSClient.createQueue(CompositeAddress.toFullyQualified(addressName, queueName));
+
+ MessageConsumer messageConsumer = session.createConsumer(queue);
+ connection.start();
+
+ Message m = messageConsumer.receive(500);
+ Assert.assertNull(m);
+
+ Queue q = (Queue) server.getPostOffice().getBinding(new SimpleString(queueName)).getBindable();
+ Assert.assertEquals(0, q.getMessageCount());
+ Assert.assertEquals(0, q.getMessagesAdded());
+ connection.close();
+ }
+
+ @Test
public void testAutoCreateOnSubscribeToTopic() throws Exception {
Connection connection = cf.createConnection();
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);