diff options
| author | Rajith Muditha Attapattu <rajith@apache.org> | 2010-06-25 13:51:32 +0000 |
|---|---|---|
| committer | Rajith Muditha Attapattu <rajith@apache.org> | 2010-06-25 13:51:32 +0000 |
| commit | 0b4c056ec423a260d18b8c6c8120bd8d72fa1396 (patch) | |
| tree | 85abdca2725f78bff720cf310f6b059cdc186cab /java/systests/src | |
| parent | e68d359866d03ccd574ce715be50a68c57acecf0 (diff) | |
| download | qpid-python-0b4c056ec423a260d18b8c6c8120bd8d72fa1396.tar.gz | |
QPID-2696
Modified the PropertiesFileInitialContextFactory to allow the new addressing strings to be specified in the jndi properties file.
Downgraded some "info" log messages in AMQDestination to "debug".
Added a test cases to cover the issue reported in the JIRA.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@957942 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/systests/src')
| -rw-r--r-- | java/systests/src/main/java/org/apache/qpid/test/client/destination/AddressBasedDestinationTest.java | 49 |
1 files changed, 48 insertions, 1 deletions
diff --git a/java/systests/src/main/java/org/apache/qpid/test/client/destination/AddressBasedDestinationTest.java b/java/systests/src/main/java/org/apache/qpid/test/client/destination/AddressBasedDestinationTest.java index d61388b927..d9754def3a 100644 --- a/java/systests/src/main/java/org/apache/qpid/test/client/destination/AddressBasedDestinationTest.java +++ b/java/systests/src/main/java/org/apache/qpid/test/client/destination/AddressBasedDestinationTest.java @@ -23,19 +23,24 @@ package org.apache.qpid.test.client.destination; import java.util.Collections; import java.util.HashMap; +import java.util.Hashtable; import java.util.Map; import javax.jms.Connection; +import javax.jms.Destination; import javax.jms.JMSException; import javax.jms.Message; import javax.jms.MessageConsumer; import javax.jms.MessageProducer; import javax.jms.Session; +import javax.jms.TextMessage; +import javax.naming.Context; import org.apache.qpid.client.AMQAnyDestination; import org.apache.qpid.client.AMQDestination; import org.apache.qpid.client.AMQSession_0_10; import org.apache.qpid.client.messaging.address.Node.ExchangeNode; import org.apache.qpid.client.messaging.address.Node.QueueNode; +import org.apache.qpid.jndi.PropertiesFileInitialContextFactory; import org.apache.qpid.messaging.Address; import org.apache.qpid.test.utils.QpidBrokerTestCase; import org.slf4j.Logger; @@ -79,7 +84,7 @@ public class AddressBasedDestinationTest extends QpidBrokerTestCase AMQDestination dest = new AMQAnyDestination(addr1); try { - cons = jmsSession.createConsumer(dest); + cons = jmsSession.createConsumer(dest); } catch(JMSException e) { @@ -398,6 +403,48 @@ public class AddressBasedDestinationTest extends QpidBrokerTestCase } } + public void testLoadingFromPropertiesFile() throws Exception + { + Hashtable<String,String> map = new Hashtable<String,String>(); + map.put("destination.myQueue1", "ADDR:my-queue/hello; {create: always, node: " + + "{x-declare: {auto-delete: true,'qpid.max_size': 1000}}}"); + + map.put("destination.myQueue2", "ADDR:my-queue2; { create: receiver }"); + + map.put("destination.myQueue3", "BURL:direct://amq.direct/my-queue3?routingkey='test'"); + + PropertiesFileInitialContextFactory props = new PropertiesFileInitialContextFactory(); + Context ctx = props.getInitialContext(map); + + AMQDestination dest1 = (AMQDestination)ctx.lookup("myQueue1"); + AMQDestination dest2 = (AMQDestination)ctx.lookup("myQueue2"); + AMQDestination dest3 = (AMQDestination)ctx.lookup("myQueue3"); + + Session jmsSession = _connection.createSession(false,Session.CLIENT_ACKNOWLEDGE); + MessageConsumer cons1 = jmsSession.createConsumer(dest1); + MessageConsumer cons2 = jmsSession.createConsumer(dest2); + MessageConsumer cons3 = jmsSession.createConsumer(dest3); + + assertTrue("Destination1 was not created as expected",( + (AMQSession_0_10)jmsSession).isQueueExist(dest1,(QueueNode)dest1.getSourceNode(), true)); + + assertTrue("Destination1 was not bound as expected",( + (AMQSession_0_10)jmsSession).isQueueBound("", + dest1.getAddressName(),dest1.getAddressName(), null)); + + assertTrue("Destination2 was not created as expected",( + (AMQSession_0_10)jmsSession).isQueueExist(dest2,(QueueNode)dest2.getSourceNode(), true)); + + assertTrue("Destination2 was not bound as expected",( + (AMQSession_0_10)jmsSession).isQueueBound("", + dest2.getAddressName(),dest2.getAddressName(), null)); + + MessageProducer producer = jmsSession.createProducer(dest3); + producer.send(jmsSession.createTextMessage("Hello")); + TextMessage msg = (TextMessage)cons3.receive(1000); + assertEquals("Destination3 was not created as expected.",msg.getText(),"Hello"); + } + /*public void testBindQueueForXMLExchange() throws Exception { if (!isCppBroker()) |
