diff options
| author | Rajith Muditha Attapattu <rajith@apache.org> | 2013-05-09 14:19:18 +0000 |
|---|---|---|
| committer | Rajith Muditha Attapattu <rajith@apache.org> | 2013-05-09 14:19:18 +0000 |
| commit | 438323043a46489c85d849a0ac0f47e8bf2efb60 (patch) | |
| tree | e187fd9c08c02af66cc302a2fab8aa8571a7678a /qpid/java/client/src/test | |
| parent | 33112e20aee3941ad36e3e2350e80ad78f9ba6d2 (diff) | |
| download | qpid-python-438323043a46489c85d849a0ac0f47e8bf2efb60.tar.gz | |
QPID-3838 If stric-jms flag is used qpid.subject is prefixed with "JMS_"
to ensure we are in compliance with the JMS spec. Without this fix we
fail the JEE TCK.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1480656 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/client/src/test')
| -rw-r--r-- | qpid/java/client/src/test/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10Test.java | 39 |
1 files changed, 36 insertions, 3 deletions
diff --git a/qpid/java/client/src/test/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10Test.java b/qpid/java/client/src/test/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10Test.java index 8c66a75764..5fff6b6b35 100644 --- a/qpid/java/client/src/test/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10Test.java +++ b/qpid/java/client/src/test/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10Test.java @@ -20,16 +20,18 @@ */ package org.apache.qpid.client.message; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.Map; + import javax.jms.Destination; +import org.apache.qpid.client.AMQDestination; import org.apache.qpid.test.utils.QpidTestCase; import org.apache.qpid.transport.DeliveryProperties; import org.apache.qpid.transport.MessageProperties; import org.apache.qpid.transport.ReplyTo; -import java.util.HashMap; -import java.util.Map; - public class AMQMessageDelegate_0_10Test extends QpidTestCase { @@ -105,4 +107,35 @@ public class AMQMessageDelegate_0_10Test extends QpidTestCase assertEquals("Min short value not retrieved successfully", Short.MIN_VALUE, delegate.getShortProperty(MIN_SHORT)); } + // See QPID_3838 + public void testJMSComplainceForQpidProviderProperties() throws Exception + { + MessageProperties msgProps = new MessageProperties(); + Map<String, Object> appHeaders = new HashMap<String, Object>(); + appHeaders.put(QpidMessageProperties.QPID_SUBJECT, "Hello"); + msgProps.setApplicationHeaders(appHeaders); + + System.setProperty("strict-jms", "true"); + try + { + AMQMessageDelegate_0_10 delegate = new AMQMessageDelegate_0_10(AMQDestination.DestSyntax.ADDR,msgProps,new DeliveryProperties(),1L); + + boolean propFound = false; + for (Enumeration props = delegate.getPropertyNames(); props.hasMoreElements();) + { + String key = (String)props.nextElement(); + System.out.println("PropName : " + key); + if (key.equals("JMS_" + QpidMessageProperties.QPID_SUBJECT)) + { + propFound = true; + } + } + assertTrue("qpid.subject was not prefixed with 'JMS_' as expected",propFound); + assertEquals("qpid.subject should still return the correct value","Hello",delegate.getStringProperty(QpidMessageProperties.QPID_SUBJECT)); + } + finally + { + System.setProperty("strict-jms", "false"); + } + } } |
