You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ta...@apache.org on 2016/09/20 18:32:02 UTC
[1/2] qpid-jms git commit: QPIDJMS-207 Add additional test coverage,
update ConnectionMetaData
Repository: qpid-jms
Updated Branches:
refs/heads/master 1c3ff1cbb -> 4550dac6c
QPIDJMS-207 Add additional test coverage, update ConnectionMetaData
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/fd2bc183
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/fd2bc183
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/fd2bc183
Branch: refs/heads/master
Commit: fd2bc18322b388dd38bb53a526a01ce3d7fcf149
Parents: 1c3ff1c
Author: Timothy Bish <ta...@gmail.com>
Authored: Tue Sep 20 14:14:26 2016 -0400
Committer: Timothy Bish <ta...@gmail.com>
Committed: Tue Sep 20 14:17:14 2016 -0400
----------------------------------------------------------------------
.../apache/qpid/jms/JmsConnectionMetaData.java | 6 +--
.../qpid/jms/JmsConnectionFactoryTest.java | 37 +++++++++++++
.../org/apache/qpid/jms/JmsConnectionTest.java | 31 +++++++++++
.../qpid/jms/consumer/JmsQueueBrowserTest.java | 16 ++++++
.../apache/qpid/jms/session/JmsSessionTest.java | 57 +++++++++++++++++++-
5 files changed, 143 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/fd2bc183/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionMetaData.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionMetaData.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionMetaData.java
index 1fc940d..7fa79f6 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionMetaData.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionMetaData.java
@@ -40,7 +40,7 @@ public final class JmsConnectionMetaData implements ConnectionMetaData {
*/
@Override
public String getJMSVersion() {
- return "1.1";
+ return "2.0";
}
/**
@@ -50,7 +50,7 @@ public final class JmsConnectionMetaData implements ConnectionMetaData {
*/
@Override
public int getJMSMajorVersion() {
- return 1;
+ return 2;
}
/**
@@ -60,7 +60,7 @@ public final class JmsConnectionMetaData implements ConnectionMetaData {
*/
@Override
public int getJMSMinorVersion() {
- return 1;
+ return 0;
}
/**
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/fd2bc183/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionFactoryTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionFactoryTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionFactoryTest.java
index ea8c867..8184acb 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionFactoryTest.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionFactoryTest.java
@@ -36,6 +36,7 @@ import java.util.concurrent.TimeUnit;
import javax.jms.Connection;
import javax.jms.ExceptionListener;
+import javax.jms.JMSContext;
import javax.jms.JMSException;
import org.apache.qpid.jms.policy.JmsDefaultDeserializationPolicy;
@@ -756,4 +757,40 @@ public class JmsConnectionFactoryTest extends QpidJmsTestCase {
assertTrue(connection.getDeserializationPolicy() instanceof SerializationTestSupport.TestJmsDeserializationPolicy);
}
+
+ @Test
+ public void testCreateContext() {
+ JmsConnectionFactory factory = new JmsConnectionFactory("mock://127.0.0.1:5672");
+
+ JMSContext context = factory.createContext();
+ assertNotNull(context);
+ assertEquals(JMSContext.AUTO_ACKNOWLEDGE, context.getSessionMode());
+ }
+
+ @Test
+ public void testCreateContextWithUserAndPassword() {
+ JmsConnectionFactory factory = new JmsConnectionFactory("mock://127.0.0.1:5672");
+
+ JMSContext context = factory.createContext(USER, PASSWORD);
+ assertNotNull(context);
+ assertEquals(JMSContext.AUTO_ACKNOWLEDGE, context.getSessionMode());
+ }
+
+ @Test
+ public void testCreateContextWithUserAndPasswordAndSessionMode() {
+ JmsConnectionFactory factory = new JmsConnectionFactory("mock://127.0.0.1:5672");
+
+ JMSContext context = factory.createContext(USER, PASSWORD, JMSContext.CLIENT_ACKNOWLEDGE);
+ assertNotNull(context);
+ assertEquals(JMSContext.CLIENT_ACKNOWLEDGE, context.getSessionMode());
+ }
+
+ @Test
+ public void testCreateContextWithSessionMode() {
+ JmsConnectionFactory factory = new JmsConnectionFactory("mock://127.0.0.1:5672");
+
+ JMSContext context = factory.createContext(JMSContext.CLIENT_ACKNOWLEDGE);
+ assertNotNull(context);
+ assertEquals(JMSContext.CLIENT_ACKNOWLEDGE, context.getSessionMode());
+ }
}
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/fd2bc183/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionTest.java
index 329b541..412ee73 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionTest.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionTest.java
@@ -27,6 +27,7 @@ import static org.junit.Assert.fail;
import java.io.IOException;
import java.net.URI;
+import javax.jms.ConnectionMetaData;
import javax.jms.ExceptionListener;
import javax.jms.IllegalStateException;
import javax.jms.InvalidClientIDException;
@@ -36,6 +37,7 @@ import javax.jms.TemporaryQueue;
import javax.jms.TemporaryTopic;
import org.apache.qpid.jms.policy.JmsDefaultPrefetchPolicy;
+import org.apache.qpid.jms.provider.ProviderConstants.ACK_TYPE;
import org.apache.qpid.jms.provider.mock.MockProvider;
import org.apache.qpid.jms.provider.mock.MockProviderFactory;
import org.apache.qpid.jms.util.IdGenerator;
@@ -266,6 +268,35 @@ public class JmsConnectionTest {
}
}
+ @Test(timeout=30000)
+ public void testConnectionCreatedSessionRespectsAcknowledgementMode() throws Exception {
+ connection = new JmsConnection("ID:TEST:1", provider, clientIdGenerator);
+ connection.start();
+
+ JmsSession session = (JmsSession) connection.createSession(Session.SESSION_TRANSACTED);
+ try {
+ session.acknowledge(ACK_TYPE.ACCEPTED);
+ fail("Should be in TX mode and not allow explicit ACK.");
+ } catch (IllegalStateException ise) {
+ }
+ }
+
+ @Test(timeout=30000)
+ public void testConnectionMetaData() throws Exception {
+ connection = new JmsConnection("ID:TEST:1", provider, clientIdGenerator);
+
+ ConnectionMetaData metaData = connection.getMetaData();
+
+ assertNotNull(metaData);
+ assertEquals(2, metaData.getJMSMajorVersion());
+ assertEquals(0, metaData.getJMSMinorVersion());
+ assertEquals("2.0", metaData.getJMSVersion());
+ assertNotNull(metaData.getJMSXPropertyNames());
+
+ assertNotNull(metaData.getProviderVersion());
+ assertNotNull(metaData.getJMSProviderName());
+ }
+
//----- Currently these are unimplemented, these will fail after that ----//
@Test(timeout=30000, expected=JMSException.class)
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/fd2bc183/qpid-jms-client/src/test/java/org/apache/qpid/jms/consumer/JmsQueueBrowserTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/consumer/JmsQueueBrowserTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/consumer/JmsQueueBrowserTest.java
index c16a0b7..9dee268 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/consumer/JmsQueueBrowserTest.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/consumer/JmsQueueBrowserTest.java
@@ -17,8 +17,12 @@
package org.apache.qpid.jms.consumer;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNull;
+import java.util.Enumeration;
+
+import javax.jms.Message;
import javax.jms.Queue;
import javax.jms.QueueBrowser;
import javax.jms.Session;
@@ -59,4 +63,16 @@ public class JmsQueueBrowserTest extends JmsConnectionTestSupport {
browser.close();
browser.close(); // Should not throw on multiple close.
}
+
+ @Test(timeout = 30000)
+ public void testHasMoreElementsOnClosedBrowser() throws Exception {
+ browser = session.createBrowser(queue);
+
+ @SuppressWarnings("unchecked")
+ Enumeration<Message> browse = browser.getEnumeration();
+
+ assertFalse(browse.hasMoreElements());
+ browser.close();
+ assertFalse(browse.hasMoreElements());
+ }
}
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/fd2bc183/qpid-jms-client/src/test/java/org/apache/qpid/jms/session/JmsSessionTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/session/JmsSessionTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/session/JmsSessionTest.java
index c4f78d4..6cbc308 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/session/JmsSessionTest.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/session/JmsSessionTest.java
@@ -284,7 +284,7 @@ public class JmsSessionTest extends JmsConnectionTestSupport {
} catch (InvalidDestinationException idex) {}
}
- @Test//(timeout = 10000)
+ @Test(timeout = 10000)
public void testCannotCreateConsumerOnDeletedTemporaryDestination() throws JMSException {
JmsSession session = (JmsSession) connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
TemporaryQueue tempQueue = session.createTemporaryQueue();
@@ -303,4 +303,59 @@ public class JmsSessionTest extends JmsConnectionTestSupport {
fail("Should not be able to send to this temporary destination");
} catch (IllegalStateException ise) {}
}
+
+ @Test(timeout = 10000)
+ public void testSessionRunFailsWhenSessionIsClosed() throws Exception {
+ JmsSession session = (JmsSession) connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+
+ try {
+ session.run();
+ fail("Not implemented");
+ } catch (UnsupportedOperationException usoe) {}
+
+ session.close();
+
+ try {
+ session.run();
+ fail("Session is closed.");
+ } catch (RuntimeException re) {}
+ }
+
+ //----- Not yet implemented, should all be cleared on implementation -----//
+
+ @Test(timeout = 10000)
+ public void testCreateSharedConsumer() throws Exception {
+ JmsSession session = (JmsSession) connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ try {
+ session.createSharedConsumer(session.createTopic("test"), "subscription");
+ fail("Should fail until implemented.");
+ } catch (JMSException ex) {}
+ }
+
+ @Test(timeout = 10000)
+ public void testCreateSharedConsumerWithSelector() throws Exception {
+ JmsSession session = (JmsSession) connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ try {
+ session.createSharedConsumer(session.createTopic("test"), "subscription", "a = b");
+ fail("Should fail until implemented.");
+ } catch (JMSException ex) {}
+ }
+
+ @Test(timeout = 10000)
+ public void testCreateSharedDurableConsumer() throws Exception {
+ JmsSession session = (JmsSession) connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ try {
+ session.createSharedDurableConsumer(session.createTopic("test"), "subscription");
+ fail("Should fail until implemented.");
+ } catch (JMSException ex) {}
+ }
+
+ @Test(timeout = 10000)
+ public void testCreateSharedDurableConsumerWithSelector() throws Exception {
+ JmsSession session = (JmsSession) connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
+ try {
+ session.createSharedDurableConsumer(session.createTopic("test"), "subscription", "a = b");
+ fail("Should fail until implemented.");
+ } catch (JMSException ex) {}
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[2/2] qpid-jms git commit: QPIDJMS-207 Fix MessageProducer
getDeliveryDelay, add test
Posted by ta...@apache.org.
QPIDJMS-207 Fix MessageProducer getDeliveryDelay, add test
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/4550dac6
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/4550dac6
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/4550dac6
Branch: refs/heads/master
Commit: 4550dac6c87b8d721d1c5a22e92848a4af30e4d4
Parents: fd2bc18
Author: Timothy Bish <ta...@gmail.com>
Authored: Tue Sep 20 14:23:53 2016 -0400
Committer: Timothy Bish <ta...@gmail.com>
Committed: Tue Sep 20 14:23:53 2016 -0400
----------------------------------------------------------------------
.../main/java/org/apache/qpid/jms/JmsMessageProducer.java | 2 +-
.../org/apache/qpid/jms/producer/JmsMessageProducerTest.java | 8 ++++++++
2 files changed, 9 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/4550dac6/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsMessageProducer.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsMessageProducer.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsMessageProducer.java
index 6e9c96d..64cdf8b 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsMessageProducer.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsMessageProducer.java
@@ -114,7 +114,7 @@ public class JmsMessageProducer implements AutoCloseable, MessageProducer {
@Override
public long getDeliveryDelay() throws JMSException {
checkClosed();
- return deliveryMode;
+ return deliveryDelay;
}
@Override
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/4550dac6/qpid-jms-client/src/test/java/org/apache/qpid/jms/producer/JmsMessageProducerTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/producer/JmsMessageProducerTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/producer/JmsMessageProducerTest.java
index a2629a9..319ce3f 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/producer/JmsMessageProducerTest.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/producer/JmsMessageProducerTest.java
@@ -133,6 +133,14 @@ public class JmsMessageProducerTest extends JmsConnectionTestSupport {
}
@Test(timeout = 10000)
+ public void testDeliveryDelayConfiguration() throws Exception {
+ MessageProducer producer = session.createProducer(null);
+ assertEquals(Message.DEFAULT_DELIVERY_DELAY, producer.getDeliveryDelay());
+ producer.setDeliveryDelay(2000);
+ assertEquals(2000, producer.getDeliveryDelay());
+ }
+
+ @Test(timeout = 10000)
public void testAnonymousProducerThrowsUOEWhenExplictDestinationNotProvided() throws Exception {
JmsMessageProducer producer = (JmsMessageProducer) session.createProducer(null);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org