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/10/21 15:48:17 UTC
[2/5] qpid-jms git commit: QPIDJMS-215 Perform Message encoding at
send time
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/657747b7/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageBuilderTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageBuilderTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageBuilderTest.java
deleted file mode 100644
index eee5f8e..0000000
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageBuilderTest.java
+++ /dev/null
@@ -1,737 +0,0 @@
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.qpid.jms.provider.amqp.message;
-
-import static org.apache.qpid.jms.provider.amqp.message.AmqpMessageSupport.encodeMessage;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
-import java.io.IOException;
-import java.nio.charset.Charset;
-import java.nio.charset.StandardCharsets;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.UUID;
-
-import org.apache.qpid.jms.message.JmsBytesMessage;
-import org.apache.qpid.jms.message.JmsMessage;
-import org.apache.qpid.jms.message.JmsObjectMessage;
-import org.apache.qpid.jms.message.JmsStreamMessage;
-import org.apache.qpid.jms.message.JmsTextMessage;
-import org.apache.qpid.jms.message.facade.JmsMessageFacade;
-import org.apache.qpid.jms.meta.JmsConsumerId;
-import org.apache.qpid.jms.meta.JmsConsumerInfo;
-import org.apache.qpid.jms.provider.amqp.AmqpConsumer;
-import org.apache.qpid.jms.test.QpidJmsTestCase;
-import org.apache.qpid.proton.Proton;
-import org.apache.qpid.proton.amqp.Binary;
-import org.apache.qpid.proton.amqp.Symbol;
-import org.apache.qpid.proton.amqp.messaging.AmqpSequence;
-import org.apache.qpid.proton.amqp.messaging.AmqpValue;
-import org.apache.qpid.proton.amqp.messaging.Data;
-import org.apache.qpid.proton.amqp.messaging.MessageAnnotations;
-import org.apache.qpid.proton.message.Message;
-import org.junit.Before;
-import org.junit.Test;
-import org.mockito.Mockito;
-
-public class AmqpJmsMessageBuilderTest extends QpidJmsTestCase {
- private AmqpConsumer mockConsumer;
-
- @Before
- @Override
- public void setUp() throws Exception {
- super.setUp();
-
- JmsConsumerId consumerId = new JmsConsumerId("ID:MOCK:1", 1, 1);
- mockConsumer = Mockito.mock(AmqpConsumer.class);
- Mockito.when(mockConsumer.getResourceInfo()).thenReturn(new JmsConsumerInfo(consumerId));
- }
-
- @Test
- public void testCreate() {
- new AmqpJmsMessageBuilder();
- }
-
- // =============== With The Message Type Annotation =========
- // ==========================================================
-
- /**
- * Test that a message with the {@value AmqpMessageSupport#JMS_MSG_TYPE}
- * annotation set to {@value AmqpMessageSupport#JMS_MESSAGE} is
- * treated as a generic {@link JmsMessage} with {@link AmqpJmsMessageFacade}
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test(expected = IOException.class)
- public void testCreateMessageFromUnknownMessageTypeAnnotationValueThrows() throws Exception {
- Message message = Proton.message();
-
- Map<Symbol, Object> map = new HashMap<Symbol, Object>();
- map.put(Symbol.valueOf(AmqpMessageSupport.JMS_MSG_TYPE), (byte) -1);
-
- MessageAnnotations messageAnnotations = new MessageAnnotations(map);
- message.setMessageAnnotations(messageAnnotations);
-
- AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- }
-
- /**
- * Test that a message with the {@value AmqpMessageSupport#JMS_MSG_TYPE}
- * annotation set to {@value AmqpMessageSupport#JMS_MESSAGE} is
- * treated as a generic {@link JmsMessage} with {@link AmqpJmsMessageFacade}
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateGenericMessageFromMessageTypeAnnotation() throws Exception {
- Message message = Proton.message();
-
- Map<Symbol, Object> map = new HashMap<Symbol, Object>();
- map.put(Symbol.valueOf(AmqpMessageSupport.JMS_MSG_TYPE), AmqpMessageSupport.JMS_MESSAGE);
-
- MessageAnnotations messageAnnotations = new MessageAnnotations(map);
- message.setMessageAnnotations(messageAnnotations);
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that a message with the {@value AmqpMessageSupport#JMS_MSG_TYPE}
- * annotation set to {@value AmqpMessageSupport#JMS_BYTES_MESSAGE} is
- * treated as a {@link JmsBytesMessage} with {@link AmqpJmsBytesMessageFacade}
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateBytesMessageFromMessageTypeAnnotation() throws Exception {
- Message message = Proton.message();
-
- Map<Symbol, Object> map = new HashMap<Symbol, Object>();
- map.put(Symbol.valueOf(AmqpMessageSupport.JMS_MSG_TYPE), AmqpMessageSupport.JMS_BYTES_MESSAGE);
-
- MessageAnnotations messageAnnotations = new MessageAnnotations(map);
- message.setMessageAnnotations(messageAnnotations);
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsBytesMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsBytesMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that a message with the {@value AmqpMessageSupport#JMS_MSG_TYPE}
- * annotation set to {@value AmqpMessageSupport#JMS_BYTES_MESSAGE} is
- * treated as a {@link JmsTextMessage} with {@link AmqpJmsTextMessageFacade}
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateTextMessageFromMessageTypeAnnotation() throws Exception {
- Message message = Proton.message();
-
- Map<Symbol, Object> map = new HashMap<Symbol, Object>();
- map.put(Symbol.valueOf(AmqpMessageSupport.JMS_MSG_TYPE), AmqpMessageSupport.JMS_TEXT_MESSAGE);
-
- MessageAnnotations messageAnnotations = new MessageAnnotations(map);
- message.setMessageAnnotations(messageAnnotations);
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsTextMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsTextMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that a message with the {@value AmqpMessageSupport#JMS_MSG_TYPE}
- * annotation set to {@value AmqpMessageSupport#JMS_OBJECT_MESSAGE} and
- * content-type set to {@value AmqpMessageSupport#OCTET_STREAM_CONTENT_TYPE} is
- * treated as a {@link JmsObjectMessage} with {@link AmqpJmsObjectMessageFacade}
- * containing a {@link AmqpSerializedObjectDelegate}.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateObjectMessageFromMessageTypeAnnotation() throws Exception {
- createObjectMessageFromMessageTypeAnnotationTestImpl(true);
- }
-
- /**
- * Test that a message with the {@value AmqpMessageSupport#JMS_MSG_TYPE}
- * annotation set to {@value AmqpMessageSupport#JMS_OBJECT_MESSAGE} and
- * content-type not set is treated as a {@link JmsObjectMessage} with
- * {@link AmqpJmsObjectMessageFacade} containing a {@link AmqpTypedObjectDelegate}.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateObjectMessageFromMessageTypeAnnotationAnd() throws Exception {
- createObjectMessageFromMessageTypeAnnotationTestImpl(false);
- }
-
- private void createObjectMessageFromMessageTypeAnnotationTestImpl(boolean setJavaSerializedContentType) throws Exception {
- Message message = Proton.message();
-
- Map<Symbol, Object> map = new HashMap<Symbol, Object>();
- map.put(Symbol.valueOf(AmqpMessageSupport.JMS_MSG_TYPE), AmqpMessageSupport.JMS_OBJECT_MESSAGE);
-
- MessageAnnotations messageAnnotations = new MessageAnnotations(map);
- message.setMessageAnnotations(messageAnnotations);
-
- if (setJavaSerializedContentType) {
- message.setContentType(AmqpMessageSupport.SERIALIZED_JAVA_OBJECT_CONTENT_TYPE);
- }
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsObjectMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsObjectMessageFacade.class, facade.getClass());
-
- AmqpObjectTypeDelegate delegate = ((AmqpJmsObjectMessageFacade) facade).getDelegate();
- if (setJavaSerializedContentType) {
- assertTrue("Unexpected delegate type: " + delegate, delegate instanceof AmqpSerializedObjectDelegate);
- } else {
- assertTrue("Unexpected delegate type: " + delegate, delegate instanceof AmqpTypedObjectDelegate);
- }
- }
-
- /**
- * Test that a message with the {@value AmqpMessageSupport#JMS_MSG_TYPE}
- * annotation set to {@value AmqpMessageSupport#JMS_STREAM_MESSAGE} is
- * treated as a {@link JmsStreamMessage} with {@link AmqpJmsStreamMessageFacade}
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateStreamMessageFromMessageTypeAnnotation() throws Exception {
-
- Message message = Proton.message();
-
- Map<Symbol, Object> map = new HashMap<Symbol, Object>();
- map.put(Symbol.valueOf(AmqpMessageSupport.JMS_MSG_TYPE), AmqpMessageSupport.JMS_STREAM_MESSAGE);
-
- MessageAnnotations messageAnnotations = new MessageAnnotations(map);
- message.setMessageAnnotations(messageAnnotations);
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsStreamMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsStreamMessageFacade.class, facade.getClass());
- }
-
- // =============== Without The Message Type Annotation =========
- // =============================================================
-
- // --------- No Body Section ---------
-
- /**
- * Test that a message with no body section, but with the content type set to
- * {@value AmqpMessageSupport#OCTET_STREAM_CONTENT_TYPE} results in a BytesMessage
- * when not otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateBytesMessageFromNoBodySectionAndContentType() throws Exception {
- Message message = Proton.message();
- message.setContentType(AmqpMessageSupport.OCTET_STREAM_CONTENT_TYPE);
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsBytesMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsBytesMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that a message with no body section, and no content-type results in a BytesMessage
- * when not otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateBytesMessageFromNoBodySectionAndNoContentType() throws Exception {
- Message message = Proton.message();
-
- assertNull(message.getContentType());
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsBytesMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsBytesMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that a message with no body section, but with the content type set to
- * {@value AmqpMessageSupport#SERIALIZED_JAVA_OBJECT_CONTENT_TYPE} results in an ObjectMessage
- * when not otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateObjectMessageFromNoBodySectionAndContentType() throws Exception {
- Message message = Proton.message();
- message.setContentType(AmqpMessageSupport.SERIALIZED_JAVA_OBJECT_CONTENT_TYPE);
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsObjectMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsObjectMessageFacade.class, facade.getClass());
-
- AmqpObjectTypeDelegate delegate = ((AmqpJmsObjectMessageFacade) facade).getDelegate();
- assertTrue("Unexpected delegate type: " + delegate, delegate instanceof AmqpSerializedObjectDelegate);
- }
-
- @Test
- public void testCreateTextMessageFromNoBodySectionAndContentType() throws Exception {
- Message message = Proton.message();
- message.setContentType("text/plain");
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsTextMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsTextMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that a message with no body section, and with the content type set to
- * an unknown value results in a plain Message when not otherwise annotated to
- * indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- public void testCreateGenericMessageFromNoBodySectionAndUnknownContentType() throws Exception {
- Message message = Proton.message();
- message.setContentType("unknown-content-type");
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsMessageFacade.class, facade.getClass());
- }
-
- // --------- Data Body Section ---------
-
- /**
- * Test that a data body containing nothing, but with the content type set to
- * {@value AmqpMessageSupport#OCTET_STREAM_CONTENT_TYPE} results in a BytesMessage when not
- * otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateBytesMessageFromDataWithEmptyBinaryAndContentType() throws Exception {
- Message message = Proton.message();
- Binary binary = new Binary(new byte[0]);
- message.setBody(new Data(binary));
- message.setContentType(AmqpMessageSupport.OCTET_STREAM_CONTENT_TYPE);
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsBytesMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsBytesMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that a message with an empty data body section, and with the content type
- * set to an unknown value results in a BytesMessage when not otherwise annotated
- * to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- public void testCreateBytesMessageFromDataWithUnknownContentType() throws Exception {
- Message message = Proton.message();
- Binary binary = new Binary(new byte[0]);
- message.setBody(new Data(binary));
- message.setContentType("unknown-content-type");
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsBytesMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsBytesMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that a receiving a data body containing nothing and no content type being set
- * results in a BytesMessage when not otherwise annotated to indicate the type of
- * JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateBytesMessageFromDataWithEmptyBinaryAndNoContentType() throws Exception {
- Message message = Proton.message();
- Binary binary = new Binary(new byte[0]);
- message.setBody(new Data(binary));
-
- assertNull(message.getContentType());
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsBytesMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsBytesMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that receiving a data body containing nothing, but with the content type set to
- * {@value AmqpMessageSupport#SERIALIZED_JAVA_OBJECT_CONTENT_TYPE} results in an ObjectMessage
- * when not otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateObjectMessageFromDataWithContentTypeAndEmptyBinary() throws Exception {
- Message message = Proton.message();
- Binary binary = new Binary(new byte[0]);
- message.setBody(new Data(binary));
- message.setContentType(AmqpMessageSupport.SERIALIZED_JAVA_OBJECT_CONTENT_TYPE);
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsObjectMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsObjectMessageFacade.class, facade.getClass());
-
- AmqpObjectTypeDelegate delegate = ((AmqpJmsObjectMessageFacade) facade).getDelegate();
- assertTrue("Unexpected delegate type: " + delegate, delegate instanceof AmqpSerializedObjectDelegate);
- }
-
- /**
- * Test that receiving a Data body section with the content type set to
- * 'text/plain' results in a TextMessage when not otherwise annotated to
- * indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateTextMessageFromDataWithContentTypeTextPlain() throws Exception {
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/plain;charset=iso-8859-1", StandardCharsets.ISO_8859_1);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/plain;charset=us-ascii", StandardCharsets.US_ASCII);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/plain;charset=utf-8", StandardCharsets.UTF_8);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/plain", StandardCharsets.UTF_8);
- }
-
- @Test
- public void testCreateTextMessageFromDataWithContentTypeTextJson() throws Exception {
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/json;charset=iso-8859-1", StandardCharsets.ISO_8859_1);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/json;charset=us-ascii", StandardCharsets.US_ASCII);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/json;charset=utf-8", StandardCharsets.UTF_8);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/json", StandardCharsets.UTF_8);
- }
-
- @Test
- public void testCreateTextMessageFromDataWithContentTypeTextHtml() throws Exception {
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/html;charset=iso-8859-1", StandardCharsets.ISO_8859_1);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/html;charset=us-ascii", StandardCharsets.US_ASCII);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/html;charset=utf-8", StandardCharsets.UTF_8);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/html", StandardCharsets.UTF_8);
- }
-
- @Test
- public void testCreateTextMessageFromDataWithContentTypeTextFoo() throws Exception {
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/foo;charset=iso-8859-1", StandardCharsets.ISO_8859_1);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/foo;charset=us-ascii", StandardCharsets.US_ASCII);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/foo;charset=utf-8", StandardCharsets.UTF_8);
- doCreateTextMessageFromDataWithContentTypeTestImpl("text/foo", StandardCharsets.UTF_8);
- }
-
- @Test
- public void testCreateTextMessageFromDataWithContentTypeApplicationJson() throws Exception {
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/json;charset=iso-8859-1", StandardCharsets.ISO_8859_1);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/json;charset=us-ascii", StandardCharsets.US_ASCII);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/json;charset=utf-8", StandardCharsets.UTF_8);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/json", StandardCharsets.UTF_8);
- }
-
- @Test
- public void testCreateTextMessageFromDataWithContentTypeApplicationJsonVariant() throws Exception {
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/something+json;charset=iso-8859-1", StandardCharsets.ISO_8859_1);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/something+json;charset=us-ascii", StandardCharsets.US_ASCII);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/something+json;charset=utf-8", StandardCharsets.UTF_8);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/something+json", StandardCharsets.UTF_8);
- }
-
- @Test
- public void testCreateTextMessageFromDataWithContentTypeApplicationJavascript() throws Exception {
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/javascript;charset=iso-8859-1", StandardCharsets.ISO_8859_1);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/javascript;charset=us-ascii", StandardCharsets.US_ASCII);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/javascript;charset=utf-8", StandardCharsets.UTF_8);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/javascript", StandardCharsets.UTF_8);
- }
-
- @Test
- public void testCreateTextMessageFromDataWithContentTypeApplicationEcmascript() throws Exception {
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/ecmascript;charset=iso-8859-1", StandardCharsets.ISO_8859_1);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/ecmascript;charset=us-ascii", StandardCharsets.US_ASCII);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/ecmascript;charset=utf-8", StandardCharsets.UTF_8);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/ecmascript", StandardCharsets.UTF_8);
- }
-
- @Test
- public void testCreateTextMessageFromDataWithContentTypeApplicationXml() throws Exception {
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/xml;charset=iso-8859-1", StandardCharsets.ISO_8859_1);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/xml;charset=us-ascii", StandardCharsets.US_ASCII);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/xml;charset=utf-8", StandardCharsets.UTF_8);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/xml", StandardCharsets.UTF_8);
- }
-
- @Test
- public void testCreateTextMessageFromDataWithContentTypeApplicationXmlVariant() throws Exception {
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/something+xml;charset=iso-8859-1", StandardCharsets.ISO_8859_1);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/something+xml;charset=us-ascii", StandardCharsets.US_ASCII);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/something+xml;charset=utf-8", StandardCharsets.UTF_8);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/something+xml", StandardCharsets.UTF_8);
- }
-
- @Test
- public void testCreateTextMessageFromDataWithContentTypeApplicationXmlDtd() throws Exception {
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/xml-dtd;charset=iso-8859-1", StandardCharsets.ISO_8859_1);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/xml-dtd;charset=us-ascii", StandardCharsets.US_ASCII);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/xml-dtd;charset=utf-8", StandardCharsets.UTF_8);
- doCreateTextMessageFromDataWithContentTypeTestImpl("application/xml-dtd", StandardCharsets.UTF_8);
- }
-
- private void doCreateTextMessageFromDataWithContentTypeTestImpl(String contentType, Charset expectedCharset) throws IOException {
- Message message = Proton.message();
- Binary binary = new Binary(new byte[0]);
- message.setBody(new Data(binary));
- message.setContentType(contentType);
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsTextMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsTextMessageFacade.class, facade.getClass());
-
- AmqpJmsTextMessageFacade textFacade = (AmqpJmsTextMessageFacade) facade;
- assertEquals("Unexpected character set", expectedCharset, textFacade.getCharset());
- }
-
- // --------- AmqpValue Body Section ---------
-
- /**
- * Test that an amqp-value body containing a string results in a TextMessage
- * when not otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateTextMessageFromAmqpValueWithString() throws Exception {
- Message message = Proton.message();
- message.setBody(new AmqpValue("content"));
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsTextMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsTextMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that an amqp-value body containing a null results in an TextMessage
- * when not otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateTextMessageFromAmqpValueWithNull() throws Exception {
- Message message = Proton.message();
- message.setBody(new AmqpValue(null));
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsTextMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsTextMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that an amqp-value body containing a map results in an ObjectMessage
- * when not otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateAmqpObjectMessageFromAmqpValueWithMap() throws Exception {
- Message message = Proton.message();
- Map<String, String> map = new HashMap<String,String>();
- message.setBody(new AmqpValue(map));
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsObjectMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsObjectMessageFacade.class, facade.getClass());
-
- AmqpObjectTypeDelegate delegate = ((AmqpJmsObjectMessageFacade) facade).getDelegate();
- assertTrue("Unexpected delegate type: " + delegate, delegate instanceof AmqpTypedObjectDelegate);
- }
-
- /**
- * Test that an amqp-value body containing a list results in an ObjectMessage
- * when not otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateAmqpObjectMessageFromAmqpValueWithList() throws Exception {
- Message message = Proton.message();
- List<String> list = new ArrayList<String>();
- message.setBody(new AmqpValue(list));
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsObjectMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsObjectMessageFacade.class, facade.getClass());
-
- AmqpObjectTypeDelegate delegate = ((AmqpJmsObjectMessageFacade) facade).getDelegate();
- assertTrue("Unexpected delegate type: " + delegate, delegate instanceof AmqpTypedObjectDelegate);
- }
-
- /**
- * Test that an amqp-value body containing a binary value results in BytesMessage
- * when not otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateAmqpBytesMessageFromAmqpValueWithBinary() throws Exception {
- Message message = Proton.message();
- Binary binary = new Binary(new byte[0]);
- message.setBody(new AmqpValue(binary));
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsBytesMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsBytesMessageFacade.class, facade.getClass());
- }
-
- /**
- * Test that an amqp-value body containing a value which can't be categorised results in
- * an ObjectMessage when not otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateObjectMessageFromAmqpValueWithUncategorisedContent() throws Exception {
- Message message = Proton.message();
- message.setBody(new AmqpValue(UUID.randomUUID()));
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsObjectMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsObjectMessageFacade.class, facade.getClass());
-
- AmqpObjectTypeDelegate delegate = ((AmqpJmsObjectMessageFacade) facade).getDelegate();
- assertTrue("Unexpected delegate type: " + delegate, delegate instanceof AmqpTypedObjectDelegate);
- }
-
- // --------- AmqpSequence Body Section ---------
-
- /**
- * Test that an amqp-sequence body containing a binary value results in an ObjectMessage
- * when not otherwise annotated to indicate the type of JMS message it is.
- *
- * @throws Exception if an error occurs during the test.
- */
- @Test
- public void testCreateObjectMessageMessageFromAmqpSequence() throws Exception
- {
- Message message = Proton.message();
- List<String> list = new ArrayList<String>();
- message.setBody(new AmqpSequence(list));
-
- JmsMessage jmsMessage = AmqpJmsMessageBuilder.createJmsMessage(mockConsumer, encodeMessage(message));
- assertNotNull("Message should not be null", jmsMessage);
- assertEquals("Unexpected message class type", JmsObjectMessage.class, jmsMessage.getClass());
-
- JmsMessageFacade facade = jmsMessage.getFacade();
- assertNotNull("Facade should not be null", facade);
- assertEquals("Unexpected facade class type", AmqpJmsObjectMessageFacade.class, facade.getClass());
-
- AmqpObjectTypeDelegate delegate = ((AmqpJmsObjectMessageFacade) facade).getDelegate();
- assertTrue("Unexpected delegate type: " + delegate, delegate instanceof AmqpTypedObjectDelegate);
- }
-}
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/657747b7/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacadeTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacadeTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacadeTest.java
index bd50a67..544b70f 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacadeTest.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacadeTest.java
@@ -97,18 +97,17 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
public void testNewMessageHasUnderlyingHeaderSectionWithDurableTrue() {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
- Message underlying = amqpMessageFacade.getAmqpMessage();
- assertNotNull("Expected message to have Header section", underlying.getHeader());
- assertTrue("Durable not as expected", underlying.getHeader().getDurable());
+ assertNotNull("Expected message to have Header section", amqpMessageFacade.getHeader());
+ assertTrue("Durable not as expected", amqpMessageFacade.getHeader().getDurable());
}
@Test
public void testNewMessageHasUnderlyingHeaderSectionWithNoTtlSet() {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
+ amqpMessageFacade.setHeader(new Header());
- Message underlying = amqpMessageFacade.getAmqpMessage();
- assertNotNull("Expected message to have Header section", underlying.getHeader());
- assertNull("Ttl field should not be set", underlying.getHeader().getTtl());
+ assertNotNull("Expected message to have Header section", amqpMessageFacade.getHeader());
+ assertNull("Ttl field should not be set", amqpMessageFacade.getHeader().getTtl());
}
@Test
@@ -147,7 +146,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
assertTrue("Should have a ttl override", amqpMessageFacade.hasAmqpTimeToLiveOverride());
assertEquals(ttl, amqpMessageFacade.getAmqpTimeToLiveOverride());
// check value on underlying TTL field is NOT set
- assertNull("TTL field on underlying message should NOT be set", amqpMessageFacade.getAmqpMessage().getHeader().getTtl());
+ assertNull("TTL field on underlying message should NOT be set", amqpMessageFacade.getHeader().getTtl());
}
@Test
@@ -164,7 +163,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
// check value on underlying TTL field is NOT set
assertEquals("TTL has not been cleared", 0, message.getTtl());
- assertNull("TTL field on underlying message should NOT be set", amqpMessageFacade.getAmqpMessage().getHeader().getTtl());
+ assertNull("TTL field on underlying message should NOT be set", amqpMessageFacade.getHeader().getTtl());
}
@Test
@@ -182,7 +181,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
// check value on underlying TTL field is NOT set
assertEquals("TTL has not been overriden", newTtl, message.getTtl());
- assertEquals("TTL field on underlying message should be set", UnsignedInteger.valueOf(newTtl), amqpMessageFacade.getAmqpMessage().getHeader().getTtl());
+ assertEquals("TTL field on underlying message should be set", UnsignedInteger.valueOf(newTtl), amqpMessageFacade.getHeader().getTtl());
}
@Test
@@ -197,7 +196,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.onSend(producerTtl);
// check value on underlying TTL field is set to the override
- assertEquals("TTL has not been overriden", overrideTtl, message.getTtl());
+ assertEquals("TTL has not been overriden", overrideTtl, amqpMessageFacade.getHeader().getTtl().intValue());
}
// --- delivery count ---
@@ -247,12 +246,12 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
@Test
public void testGetDeliveryCountForReceivedMessageWithHeaderWithDeliveryCount() {
Message message = Proton.message();
- AmqpJmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message);
-
Header header = new Header();
header.setDeliveryCount(new UnsignedInteger(1));
message.setHeader(header);
+ AmqpJmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message);
+
// JMS delivery count starts at one.
assertEquals("expected delivery count value not found", 2, amqpMessageFacade.getDeliveryCount());
@@ -278,12 +277,12 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
@Test
public void testSetRedeliveredWhenAlreadyRedeliveredDoesNotChangeDeliveryCount() {
Message message = Proton.message();
- AmqpJmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message);
-
Header header = new Header();
header.setDeliveryCount(new UnsignedInteger(1));
message.setHeader(header);
+ AmqpJmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message);
+
// Redelivered state inferred from delivery count
assertTrue(amqpMessageFacade.isRedelivered());
assertEquals(1, amqpMessageFacade.getRedeliveryCount());;
@@ -296,12 +295,12 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
@Test
public void testSetRedeliveredFalseClearsDeliveryCount() {
Message message = Proton.message();
- AmqpJmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message);
-
Header header = new Header();
header.setDeliveryCount(new UnsignedInteger(1));
message.setHeader(header);
+ AmqpJmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message);
+
// Redelivered state inferred from delivery count
assertTrue(amqpMessageFacade.isRedelivered());
assertEquals(1, amqpMessageFacade.getRedeliveryCount());;
@@ -424,9 +423,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setPriority(priority);
assertEquals("expected priority value not found", priority, amqpMessageFacade.getPriority());
-
- Message underlying = amqpMessageFacade.getAmqpMessage();
- assertEquals("expected priority value not found", priority, underlying.getPriority());
+ assertEquals("expected priority value not found", priority, amqpMessageFacade.getHeader().getPriority().intValue());
}
/**
@@ -439,9 +436,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setPriority(-1);
assertEquals("expected priority value not found", 0, amqpMessageFacade.getPriority());
-
- Message underlying = amqpMessageFacade.getAmqpMessage();
- assertEquals("expected priority value not found", 0, underlying.getPriority());
+ assertEquals("expected priority value not found", 0, amqpMessageFacade.getHeader().getPriority().intValue());
}
/**
@@ -454,9 +449,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setPriority(11);
assertEquals("expected priority value not found", 9, amqpMessageFacade.getPriority());
-
- Message underlying = amqpMessageFacade.getAmqpMessage();
- assertEquals("expected priority value not found", 9, underlying.getPriority());
+ assertEquals("expected priority value not found", 9, amqpMessageFacade.getHeader().getPriority().intValue());
}
/**
@@ -497,8 +490,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
assertEquals("expected priority value not returned", Message.DEFAULT_PRIORITY, amqpMessageFacade.getPriority());
//check the underlying header field was actually cleared rather than set to Message.DEFAULT_PRIORITY
- Message underlying = amqpMessageFacade.getAmqpMessage();
- assertNull("underlying header priority field was not cleared", underlying.getHeader().getPriority());
+ assertNull("underlying header priority field was not cleared", amqpMessageFacade.getHeader().getPriority());
}
// ====== AMQP Properties Section =======
@@ -507,9 +499,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
@Test
public void testNewMessageHasNoUnderlyingPropertiesSection() {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
-
- Message underlying = amqpMessageFacade.getAmqpMessage();
- assertNull(underlying.getProperties());
+ assertNull(amqpMessageFacade.getProperties());
}
// --- group-id field ---
@@ -534,7 +524,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setGroupId(null);
- assertNull("properties section was created", amqpMessageFacade.getAmqpMessage().getProperties());
+ assertNull("properties section was created", amqpMessageFacade.getProperties());
}
/**
@@ -551,8 +541,8 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setGroupId(groupId);
- assertNotNull("properties section was not created", amqpMessageFacade.getAmqpMessage().getProperties());
- assertEquals("value was not set for GroupId as expected", groupId, amqpMessageFacade.getAmqpMessage().getProperties().getGroupId());
+ assertNotNull("properties section was not created", amqpMessageFacade.getProperties());
+ assertEquals("value was not set for GroupId as expected", groupId, amqpMessageFacade.getProperties().getGroupId());
assertEquals("value was not set for GroupId as expected", groupId, amqpMessageFacade.getGroupId());
}
@@ -570,7 +560,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setGroupId(groupId);
amqpMessageFacade.setGroupId(null);
- assertNull("value was not cleared for GroupId as expected", amqpMessageFacade.getAmqpMessage().getProperties().getGroupId());
+ assertNull("value was not cleared for GroupId as expected", amqpMessageFacade.getProperties().getGroupId());
assertNull("value was not cleared for GroupId as expected", amqpMessageFacade.getGroupId());
}
@@ -613,7 +603,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setReplyToGroupId(null);
- assertNull("properties section was created", amqpMessageFacade.getAmqpMessage().getProperties());
+ assertNull("properties section was created", amqpMessageFacade.getProperties());
}
/**
@@ -665,12 +655,10 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
- Message underlyingMessage = amqpMessageFacade.getAmqpMessage();
-
amqpMessageFacade.setReplyToGroupId(replyToGroupId);
- assertNotNull("expected ReplyToGroupId on message was not found", underlyingMessage.getReplyToGroupId());
- assertEquals("expected ReplyToGroupId on message was not found", replyToGroupId, underlyingMessage.getReplyToGroupId());
+ assertNotNull("expected ReplyToGroupId on message was not found", amqpMessageFacade.getProperties().getReplyToGroupId());
+ assertEquals("expected ReplyToGroupId on message was not found", replyToGroupId, amqpMessageFacade.getProperties().getReplyToGroupId());
}
/**
@@ -699,7 +687,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
int groupSequence = 5;
amqpMessageFacade.setGroupSequence(groupSequence);
- assertEquals("underlying message should have groupSequence field value", groupSequence, amqpMessageFacade.getAmqpMessage().getProperties().getGroupSequence().longValue());
+ assertEquals("underlying message should have groupSequence field value", groupSequence, amqpMessageFacade.getProperties().getGroupSequence().longValue());
assertEquals("GroupSequence not as expected", groupSequence, amqpMessageFacade.getGroupSequence());
}
@@ -717,7 +705,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
UnsignedInteger mapped = UnsignedInteger.valueOf(MAX_UINT - delta);
amqpMessageFacade.setGroupSequence(-1 - delta);
- assertEquals("underlying message should have no groupSequence field value",mapped, amqpMessageFacade.getAmqpMessage().getProperties().getGroupSequence());
+ assertEquals("underlying message should have no groupSequence field value",mapped, amqpMessageFacade.getProperties().getGroupSequence());
assertEquals("GroupSequence not as expected", -1 - delta, amqpMessageFacade.getGroupSequence());
}
@@ -766,7 +754,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setGroupSequence(0);
- assertNull("underlying message should still have no properties setion", amqpMessageFacade.getAmqpMessage().getProperties());
+ assertNull("underlying message should still have no properties setion", amqpMessageFacade.getProperties());
assertEquals("GroupSequence should be 0", 0, amqpMessageFacade.getGroupSequence());
}
@@ -782,13 +770,12 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
- Message underlyingMessage = amqpMessageFacade.getAmqpMessage();
- assertNull(underlyingMessage.getAddress());
+ assertNull(amqpMessageFacade.getProperties());
amqpMessageFacade.setDestination(dest);
- assertNotNull(underlyingMessage.getAddress());
- assertEquals(testToAddress, underlyingMessage.getAddress());
+ assertNotNull(amqpMessageFacade.getProperties().getTo());
+ assertEquals(testToAddress, amqpMessageFacade.getProperties().getTo());
assertEquals(dest, amqpMessageFacade.getDestination());
}
@@ -822,13 +809,12 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
- Message underlyingMessage = amqpMessageFacade.getAmqpMessage();
- assertNull(underlyingMessage.getReplyTo());
+ assertNull(amqpMessageFacade.getProperties());
amqpMessageFacade.setReplyTo(dest);
- assertNotNull(underlyingMessage.getReplyTo());
- assertEquals(testReplyToAddress, underlyingMessage.getReplyTo());
+ assertNotNull(amqpMessageFacade.getProperties().getReplyTo());
+ assertEquals(testReplyToAddress, amqpMessageFacade.getProperties().getReplyTo());
assertEquals(dest, amqpMessageFacade.getReplyTo());
}
@@ -871,10 +857,8 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
amqpMessageFacade.setCorrelationId(testCorrelationId);
- Message amqpMessage = amqpMessageFacade.getAmqpMessage();
- assertEquals("correlationId value on underlying AMQP message not as expected", testCorrelationId, amqpMessage.getCorrelationId());
+ assertEquals("correlationId value on underlying AMQP message not as expected", testCorrelationId, amqpMessageFacade.getProperties().getCorrelationId());
assertEquals("Expected correlationId not returned", testCorrelationId, amqpMessageFacade.getCorrelationId());
-
}
/**
@@ -889,8 +873,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
amqpMessageFacade.setCorrelationId(testCorrelationId);
- Message amqpMessage = amqpMessageFacade.getAmqpMessage();
- assertEquals("correlationId value on underlying AMQP message not as expected", testCorrelationId, amqpMessage.getCorrelationId());
+ assertEquals("correlationId value on underlying AMQP message not as expected", testCorrelationId, amqpMessageFacade.getProperties().getCorrelationId());
assertEquals("Expected correlationId not returned from facade", testCorrelationId, amqpMessageFacade.getCorrelationId());
}
@@ -906,7 +889,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setCorrelationId("cid");
amqpMessageFacade.setCorrelationId(null);
- assertNull("Unexpected correlationId value on underlying AMQP message", amqpMessageFacade.getAmqpMessage().getCorrelationId());
+ assertNull("Unexpected correlationId value on underlying AMQP message", amqpMessageFacade.getCorrelationId());
assertNull("Expected correlationId bytes to be null", amqpMessageFacade.getCorrelationId());
}
@@ -944,7 +927,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
amqpMessageFacade.setCorrelationId(converted);
- assertEquals("Unexpected correlationId value on underlying AMQP message", testCorrelationId, amqpMessageFacade.getAmqpMessage().getCorrelationId());
+ assertEquals("Unexpected correlationId value on underlying AMQP message", testCorrelationId, amqpMessageFacade.getProperties().getCorrelationId());
assertEquals("Expected correlationId not returned", converted, amqpMessageFacade.getCorrelationId());
}
@@ -972,7 +955,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
amqpMessageFacade.setCorrelationId(converted);
- assertEquals("Unexpected correlationId value on underlying AMQP message", testCorrelationId, amqpMessageFacade.getAmqpMessage().getCorrelationId());
+ assertEquals("Unexpected correlationId value on underlying AMQP message", testCorrelationId, amqpMessageFacade.getProperties().getCorrelationId());
assertEquals("Expected correlationId not returned", converted, amqpMessageFacade.getCorrelationId());
}
@@ -1004,7 +987,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
amqpMessageFacade.setCorrelationId(converted);
- assertEquals("Unexpected correlationId value on underlying AMQP message", testCorrelationId, amqpMessageFacade.getAmqpMessage().getCorrelationId());
+ assertEquals("Unexpected correlationId value on underlying AMQP message", testCorrelationId, amqpMessageFacade.getProperties().getCorrelationId());
assertEquals("Expected correlationId not returned", converted, amqpMessageFacade.getCorrelationId());
}
@@ -1021,7 +1004,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
amqpMessageFacade.setCorrelationIdBytes(bytes);
- assertEquals("Unexpected correlationId value on underlying AMQP message", testCorrelationId, amqpMessageFacade.getAmqpMessage().getCorrelationId());
+ assertEquals("Unexpected correlationId value on underlying AMQP message", testCorrelationId, amqpMessageFacade.getProperties().getCorrelationId());
assertArrayEquals("Expected correlationId bytes not returned", bytes, amqpMessageFacade.getCorrelationIdBytes());
}
@@ -1039,7 +1022,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setCorrelationIdBytes(bytes);
amqpMessageFacade.setCorrelationIdBytes(null);
- assertNull("Unexpected correlationId value on underlying AMQP message", amqpMessageFacade.getAmqpMessage().getCorrelationId());
+ assertNull("Unexpected correlationId value on underlying AMQP message", amqpMessageFacade.getCorrelationId());
assertNull("Expected correlationId bytes to be null", amqpMessageFacade.getCorrelationIdBytes());
}
@@ -1069,7 +1052,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
AmqpJmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message);
- assertEquals("Unexpected correlationId value on underlying AMQP message", testCorrelationId, amqpMessageFacade.getAmqpMessage().getCorrelationId());
+ assertEquals("Unexpected correlationId value on underlying AMQP message", testCorrelationId, amqpMessageFacade.getProperties().getCorrelationId());
assertArrayEquals("Expected correlationId bytes not returned", bytes, amqpMessageFacade.getCorrelationIdBytes());
}
@@ -1140,7 +1123,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setMessageId(testMessageId);
- assertEquals("underlying messageId value not as expected", testMessageId, amqpMessageFacade.getAmqpMessage().getMessageId());
+ assertEquals("underlying messageId value not as expected", testMessageId, amqpMessageFacade.getMessageId());
}
/**
@@ -1157,11 +1140,11 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setMessageId(testMessageId);
- assertNotNull("messageId should not be null", amqpMessageFacade.getAmqpMessage().getMessageId());
+ assertNotNull("messageId should not be null", amqpMessageFacade.getMessageId());
amqpMessageFacade.setMessageId(null);
- assertNull("Expected messageId to be null", amqpMessageFacade.getAmqpMessage().getMessageId());
+ assertNull("Expected messageId to be null", amqpMessageFacade.getMessageId());
assertNull("ID was not null", amqpMessageFacade.getMessageId());
}
@@ -1256,13 +1239,13 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
public void testSetCreationTimeOnNewNewMessage() {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
- assertNull("Expected null Properties section", amqpMessageFacade.getAmqpMessage().getProperties());
+ assertNull("Expected null Properties section", amqpMessageFacade.getProperties());
long expected = 1;
amqpMessageFacade.setTimestamp(expected);
assertEquals("Unexpected timestamp value", expected, amqpMessageFacade.getTimestamp());
- assertEquals("Expected creation-time field to be set on new Properties section", new Date(expected), amqpMessageFacade.getAmqpMessage().getProperties().getCreationTime());
+ assertEquals("Expected creation-time field to be set on new Properties section", new Date(expected), amqpMessageFacade.getProperties().getCreationTime());
}
@Test
@@ -1280,7 +1263,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setTimestamp(timestamp);
- assertEquals("Expected creation-time field to be set", timestamp.longValue(), amqpMessageFacade.getAmqpMessage().getProperties().getCreationTime().getTime());
+ assertEquals("Expected creation-time field to be set", timestamp.longValue(), amqpMessageFacade.getProperties().getCreationTime().getTime());
assertEquals("Expected timestamp", timestamp.longValue(), amqpMessageFacade.getTimestamp());
}
@@ -1290,7 +1273,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setTimestamp(0);
- assertNull("underlying message should have no properties section", amqpMessageFacade.getAmqpMessage().getProperties());
+ assertNull("underlying message should have no properties section", amqpMessageFacade.getProperties());
assertEquals("Timestamp should not be set", 0, amqpMessageFacade.getTimestamp());
}
@@ -1303,7 +1286,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setTimestamp(0);
- assertNull("Expected creation-time to be null", amqpMessageFacade.getAmqpMessage().getProperties().getCreationTime());
+ assertNull("Expected creation-time to be null", amqpMessageFacade.getProperties().getCreationTime());
assertEquals("Expected no timestamp", 0, amqpMessageFacade.getTimestamp());
}
@@ -1324,7 +1307,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setExpiration(timestamp);
- assertEquals("Expected absolute-expiry-time to be set", timestamp.longValue(), amqpMessageFacade.getAmqpMessage().getProperties().getAbsoluteExpiryTime().getTime());
+ assertEquals("Expected absolute-expiry-time to be set", timestamp.longValue(), amqpMessageFacade.getProperties().getAbsoluteExpiryTime().getTime());
assertEquals("Expected expiration to be set", timestamp.longValue(), amqpMessageFacade.getExpiration());
}
@@ -1332,11 +1315,11 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
public void testSetExpirationZeroOnNewMessageDoesNotCreatePropertiesSection() {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();
- assertNull("Expected properties section not to exist", amqpMessageFacade.getAmqpMessage().getProperties());
+ assertNull("Expected properties section not to exist", amqpMessageFacade.getProperties());
amqpMessageFacade.setExpiration(0);
- assertNull("Expected properties section still not to exist", amqpMessageFacade.getAmqpMessage().getProperties());
+ assertNull("Expected properties section still not to exist", amqpMessageFacade.getProperties());
}
@Test
@@ -1348,7 +1331,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setExpiration(0);
- assertNull("Expected absolute-expiry-time to be null", amqpMessageFacade.getAmqpMessage().getProperties().getAbsoluteExpiryTime());
+ assertNull("Expected absolute-expiry-time to be null", amqpMessageFacade.getProperties().getAbsoluteExpiryTime());
assertEquals("Expected no expiration", 0, amqpMessageFacade.getExpiration());
}
@@ -1393,8 +1376,8 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setUserId(userIdString);
- assertNotNull("properties section was not created", amqpMessageFacade.getAmqpMessage().getProperties());
- assertTrue("bytes were not set as expected for userid", Arrays.equals(bytes, amqpMessageFacade.getAmqpMessage().getProperties().getUserId().getArray()));
+ assertNotNull("properties section was not created", amqpMessageFacade.getProperties());
+ assertTrue("bytes were not set as expected for userid", Arrays.equals(bytes, amqpMessageFacade.getProperties().getUserId().getArray()));
assertEquals("userid not as expected", userIdString, amqpMessageFacade.getUserId());
}
@@ -1411,8 +1394,8 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setUserId(userIdString);
amqpMessageFacade.setUserId(null);
- assertNotNull("properties section was not created", amqpMessageFacade.getAmqpMessage().getProperties());
- assertNull("bytes were not cleared as expected for userid", amqpMessageFacade.getAmqpMessage().getProperties().getUserId());
+ assertNotNull("properties section was not created", amqpMessageFacade.getProperties());
+ assertNull("bytes were not cleared as expected for userid", amqpMessageFacade.getProperties().getUserId());
assertNull("userid not as expected", amqpMessageFacade.getUserId());
}
@@ -1422,7 +1405,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setUserId(null);
- assertNull("underlying message should still have no properties setion", amqpMessageFacade.getAmqpMessage().getProperties());
+ assertNull("underlying message should still have no properties setion", amqpMessageFacade.getProperties());
assertEquals("UserId should be null", null, amqpMessageFacade.getUserId());
}
@@ -1469,8 +1452,8 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setUserIdBytes(bytes);
- assertNotNull("properties section was not created", amqpMessageFacade.getAmqpMessage().getProperties());
- assertTrue("bytes were not set as expected for userid", Arrays.equals(bytes, amqpMessageFacade.getAmqpMessage().getProperties().getUserId().getArray()));
+ assertNotNull("properties section was not created", amqpMessageFacade.getProperties());
+ assertTrue("bytes were not set as expected for userid", Arrays.equals(bytes, amqpMessageFacade.getProperties().getUserId().getArray()));
assertArrayEquals("userid bytes not as expected", bytes, amqpMessageFacade.getUserIdBytes());
}
@@ -1489,8 +1472,8 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setUserIdBytes(bytes);
amqpMessageFacade.setUserId(null);
- assertNotNull("properties section was not created", amqpMessageFacade.getAmqpMessage().getProperties());
- assertNull("bytes were not cleared as expected for userid", amqpMessageFacade.getAmqpMessage().getProperties().getUserId());
+ assertNotNull("properties section was not created", amqpMessageFacade.getProperties());
+ assertNull("bytes were not cleared as expected for userid", amqpMessageFacade.getProperties().getUserId());
assertNull("userid bytes not as expected", amqpMessageFacade.getUserIdBytes());
}
@@ -1500,7 +1483,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setUserIdBytes(null);
- assertNull("underlying message should still have no properties setion", amqpMessageFacade.getAmqpMessage().getProperties());
+ assertNull("underlying message should still have no properties setion", amqpMessageFacade.getProperties());
assertEquals("UserId should be null", null, amqpMessageFacade.getUserIdBytes());
}
@@ -1511,20 +1494,18 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
public void testNewMessageHasUnderlyingMessageAnnotationsSectionWithTypeAnnotation() {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();;
- Message underlying = amqpMessageFacade.getAmqpMessage();
- assertNotNull(underlying.getMessageAnnotations());
+ assertNotNull(amqpMessageFacade.getMessageAnnotations());
Symbol annotationKey = AmqpMessageSupport.getSymbol(AmqpMessageSupport.JMS_MSG_TYPE);
- assertEquals(AmqpMessageSupport.JMS_MESSAGE, underlying.getMessageAnnotations().getValue().get(annotationKey));
+ assertEquals(AmqpMessageSupport.JMS_MESSAGE, amqpMessageFacade.getMessageAnnotations().getValue().get(annotationKey));
}
@Test
public void testNewMessageDoesNotHaveUnderlyingMessageAnnotationsSectionWithDeliveryTime() {
AmqpJmsMessageFacade amqpMessageFacade = createNewMessageFacade();;
- Message underlying = amqpMessageFacade.getAmqpMessage();
- assertNotNull(underlying.getMessageAnnotations());
+ assertNotNull(amqpMessageFacade.getMessageAnnotations());
Symbol annotationKey = AmqpMessageSupport.getSymbol(AmqpMessageSupport.JMS_DELIVERY_TIME);
- assertNull(underlying.getMessageAnnotations().getValue().get(annotationKey));
+ assertNull(amqpMessageFacade.getMessageAnnotations().getValue().get(annotationKey));
}
@Test
@@ -1594,7 +1575,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
// check setting first annotation
amqpMessageFacade.setMessageAnnotation(symbolKeyName, value);
- MessageAnnotations underlyingAnnotations = amqpMessageFacade.getAmqpMessage().getMessageAnnotations();
+ MessageAnnotations underlyingAnnotations = amqpMessageFacade.getMessageAnnotations();
assertNotNull(underlyingAnnotations);
assertTrue(underlyingAnnotations.getValue().containsKey(Symbol.valueOf(symbolKeyName)));
@@ -1643,8 +1624,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.clearMessageAnnotations();
- Message underlying = amqpMessageFacade.getAmqpMessage();
- assertNull(underlying.getMessageAnnotations());
+ assertNull(amqpMessageFacade.getMessageAnnotations());
}
@Test
@@ -1662,8 +1642,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.clearMessageAnnotations();
- Message underlying = amqpMessageFacade.getAmqpMessage();
- assertNull(underlying.getMessageAnnotations());
+ assertNull(amqpMessageFacade.getMessageAnnotations());
}
// ====== Type =======
@@ -1681,7 +1660,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setType(jmsType);
assertEquals("Subject should be set to the provded JMSType string", jmsType,
- amqpMessageFacade.getAmqpMessage().getSubject());
+ amqpMessageFacade.getProperties().getSubject());
}
@Test
@@ -1691,9 +1670,9 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
amqpMessageFacade.setType(jmsType);
assertEquals("Subject should be set to the provded JMSType string", jmsType,
- amqpMessageFacade.getAmqpMessage().getSubject());
+ amqpMessageFacade.getProperties().getSubject());
amqpMessageFacade.setType(null);
- assertNull("Subject should be clear", amqpMessageFacade.getAmqpMessage().getSubject());
+ assertNull("Subject should be clear", amqpMessageFacade.getProperties().getSubject());
}
/**
@@ -1838,7 +1817,7 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
assertEquals(TEST_VALUE_STRING_A, amqpMessageFacade.getProperty(TEST_PROP_A));
@SuppressWarnings("unchecked")
- Map<String, Object> underlyingApplicationProps = amqpMessageFacade.getAmqpMessage().getApplicationProperties().getValue();
+ Map<String, Object> underlyingApplicationProps = amqpMessageFacade.getApplicationProperties().getValue();
assertTrue(underlyingApplicationProps.containsKey(TEST_PROP_A));
assertEquals(TEST_VALUE_STRING_A, underlyingApplicationProps.get(TEST_PROP_A));
}
@@ -1947,9 +1926,10 @@ public class AmqpJmsMessageFacadeTest extends AmqpJmsMessageTypesTestCase {
@Test
public void testClearBodyRemoveMessageBody() {
- Message message = Mockito.mock(Message.class);
- JmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message);
+ Message message = Message.Factory.create();
+ AmqpJmsMessageFacade amqpMessageFacade = createReceivedMessageFacade(createMockAmqpConsumer(), message);
+ amqpMessageFacade = Mockito.spy(amqpMessageFacade);
amqpMessageFacade.clearBody();
- Mockito.verify(message).setBody(null);
+ Mockito.verify(amqpMessageFacade).setBody(null);
}
}
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/657747b7/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageTypesTestCase.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageTypesTestCase.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageTypesTestCase.java
index 48a78f6..813cc82 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageTypesTestCase.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageTypesTestCase.java
@@ -16,10 +16,6 @@
*/
package org.apache.qpid.jms.provider.amqp.message;
-import static org.apache.qpid.jms.provider.amqp.message.AmqpMessageSupport.encodeMessage;
-
-import java.nio.charset.StandardCharsets;
-
import org.apache.qpid.jms.JmsDestination;
import org.apache.qpid.jms.JmsTopic;
import org.apache.qpid.jms.meta.JmsConnectionId;
@@ -47,51 +43,86 @@ public class AmqpJmsMessageTypesTestCase extends QpidJmsTestCase {
//---------- Test Support Methods ----------------------------------------//
protected AmqpJmsMessageFacade createNewMessageFacade() {
- return new AmqpJmsMessageFacade(createMockAmqpConnection());
+ AmqpJmsMessageFacade facade = new AmqpJmsMessageFacade();
+ facade.initialize(createMockAmqpConnection());
+ return facade;
}
protected AmqpJmsMessageFacade createReceivedMessageFacade(AmqpConsumer amqpConsumer, Message message) {
- return new AmqpJmsMessageFacade(amqpConsumer, message);
+ AmqpJmsMessageFacade facade = new AmqpJmsMessageFacade();
+ initializeReceivedMessage(facade, amqpConsumer, message);
+ return facade;
}
protected AmqpJmsTextMessageFacade createNewTextMessageFacade() {
- return new AmqpJmsTextMessageFacade(createMockAmqpConnection());
+ AmqpJmsTextMessageFacade facade = new AmqpJmsTextMessageFacade();
+ facade.initialize(createMockAmqpConnection());
+ return facade;
}
protected AmqpJmsTextMessageFacade createReceivedTextMessageFacade(AmqpConsumer amqpConsumer, Message message) {
- return new AmqpJmsTextMessageFacade(amqpConsumer, message, StandardCharsets.UTF_8);
+ AmqpJmsTextMessageFacade facade = new AmqpJmsTextMessageFacade();
+ initializeReceivedMessage(facade, amqpConsumer, message);
+ return facade;
}
protected AmqpJmsBytesMessageFacade createNewBytesMessageFacade() {
- return new AmqpJmsBytesMessageFacade(createMockAmqpConnection());
+ AmqpJmsBytesMessageFacade facade = new AmqpJmsBytesMessageFacade();
+ facade.initialize(createMockAmqpConnection());
+ return facade;
}
protected AmqpJmsBytesMessageFacade createReceivedBytesMessageFacade(AmqpConsumer amqpConsumer, Message message) {
- return new AmqpJmsBytesMessageFacade(amqpConsumer, message);
+ AmqpJmsBytesMessageFacade facade = new AmqpJmsBytesMessageFacade();
+ initializeReceivedMessage(facade, amqpConsumer, message);
+ return facade;
}
protected AmqpJmsMapMessageFacade createNewMapMessageFacade() {
- return new AmqpJmsMapMessageFacade(createMockAmqpConnection());
+ AmqpJmsMapMessageFacade facade = new AmqpJmsMapMessageFacade();
+ facade.initialize(createMockAmqpConnection());
+ return facade;
}
protected AmqpJmsMapMessageFacade createReceivedMapMessageFacade(AmqpConsumer amqpConsumer, Message message) {
- return new AmqpJmsMapMessageFacade(amqpConsumer, message);
+ AmqpJmsMapMessageFacade facade = new AmqpJmsMapMessageFacade();
+ initializeReceivedMessage(facade, amqpConsumer, message);
+ return facade;
}
protected AmqpJmsStreamMessageFacade createNewStreamMessageFacade() {
- return new AmqpJmsStreamMessageFacade(createMockAmqpConnection());
+ AmqpJmsStreamMessageFacade facade = new AmqpJmsStreamMessageFacade();
+ facade.initialize(createMockAmqpConnection());
+ return facade;
}
protected AmqpJmsStreamMessageFacade createReceivedStreamMessageFacade(AmqpConsumer amqpConsumer, Message message) {
- return new AmqpJmsStreamMessageFacade(amqpConsumer, message);
+ AmqpJmsStreamMessageFacade facade = new AmqpJmsStreamMessageFacade();
+ initializeReceivedMessage(facade, amqpConsumer, message);
+ return facade;
}
protected AmqpJmsObjectMessageFacade createNewObjectMessageFacade(boolean amqpTyped) {
- return new AmqpJmsObjectMessageFacade(createMockAmqpConnection(), amqpTyped);
+ AmqpJmsObjectMessageFacade facade = new AmqpJmsObjectMessageFacade();
+ facade.initialize(createMockAmqpConnection(amqpTyped));
+ return facade;
}
protected AmqpJmsObjectMessageFacade createReceivedObjectMessageFacade(AmqpConsumer amqpConsumer, Message message) {
- return new AmqpJmsObjectMessageFacade(amqpConsumer, message, encodeMessage(message));
+ AmqpJmsObjectMessageFacade facade = new AmqpJmsObjectMessageFacade();
+ initializeReceivedMessage(facade, amqpConsumer, message);
+ return facade;
+ }
+
+ protected void initializeReceivedMessage(AmqpJmsMessageFacade facade, AmqpConsumer amqpConsumer, Message message) {
+ facade.setHeader(message.getHeader());
+ facade.setDeliveryAnnotations(message.getDeliveryAnnotations());
+ facade.setMessageAnnotations(message.getMessageAnnotations());
+ facade.setProperties(message.getProperties());
+ facade.setApplicationProperties(message.getApplicationProperties());
+ facade.setBody(message.getBody());
+ facade.setFooter(message.getFooter());
+ facade.initialize(amqpConsumer);
}
protected AmqpConsumer createMockAmqpConsumer() {
@@ -105,9 +136,14 @@ public class AmqpJmsMessageTypesTestCase extends QpidJmsTestCase {
}
protected AmqpConnection createMockAmqpConnection() {
+ return createMockAmqpConnection(false);
+ }
+
+ protected AmqpConnection createMockAmqpConnection(boolean amqpTyped) {
JmsConnectionId connectionId = new JmsConnectionId("ID:MOCK:1");
AmqpConnection connection = Mockito.mock(AmqpConnection.class);
Mockito.when(connection.getResourceInfo()).thenReturn(new JmsConnectionInfo(connectionId));
+ Mockito.when(connection.isObjectMessageUsesAmqpTypes()).thenReturn(amqpTyped);
return connection;
}
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/657747b7/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacadeTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacadeTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacadeTest.java
index f95c685..7a6f10f 100644
--- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacadeTest.java
+++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsObjectMessageFacadeTest.java
@@ -56,8 +56,7 @@ public class AmqpJmsObjectMessageFacadeTest extends AmqpJmsMessageTypesTestCase
public void testNewMessageToSendContainsMessageTypeAnnotation() throws Exception {
AmqpJmsObjectMessageFacade amqpObjectMessageFacade = createNewObjectMessageFacade(false);
- Message protonMessage = amqpObjectMessageFacade.getAmqpMessage();
- MessageAnnotations annotations = protonMessage.getMessageAnnotations();
+ MessageAnnotations annotations = amqpObjectMessageFacade.getMessageAnnotations();
Map<Symbol, Object> annotationsMap = annotations.getValue();
assertNotNull("MessageAnnotations section was not present", annotations);
@@ -99,12 +98,11 @@ public class AmqpJmsObjectMessageFacadeTest extends AmqpJmsMessageTypesTestCase
AmqpJmsObjectMessageFacade amqpObjectMessageFacade = createNewObjectMessageFacade(amqpTyped);
amqpObjectMessageFacade.onSend(0);
- Message protonMessage = amqpObjectMessageFacade.getAmqpMessage();
- assertNotNull("Message body should be presents", protonMessage.getBody());
+ assertNotNull("Message body should be presents", amqpObjectMessageFacade.getBody());
if(amqpTyped) {
- assertSame("Expected existing body section to be replaced", AmqpTypedObjectDelegate.NULL_OBJECT_BODY, protonMessage.getBody());
+ assertSame("Expected existing body section to be replaced", AmqpTypedObjectDelegate.NULL_OBJECT_BODY, amqpObjectMessageFacade.getBody());
} else {
- assertSame("Expected existing body section to be replaced", AmqpSerializedObjectDelegate.NULL_OBJECT_BODY, protonMessage.getBody());
+ assertSame("Expected existing body section to be replaced", AmqpSerializedObjectDelegate.NULL_OBJECT_BODY, amqpObjectMessageFacade.getBody());
}
}
@@ -123,8 +121,6 @@ public class AmqpJmsObjectMessageFacadeTest extends AmqpJmsMessageTypesTestCase
AmqpJmsObjectMessageFacade amqpObjectMessageFacade = createNewObjectMessageFacade(false);
amqpObjectMessageFacade.setObject(content);
- Message protonMessage = amqpObjectMessageFacade.getAmqpMessage();
-
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(baos);
oos.writeObject(content);
@@ -133,7 +129,7 @@ public class AmqpJmsObjectMessageFacadeTest extends AmqpJmsMessageTypesTestCase
byte[] bytes = baos.toByteArray();
// retrieve the bytes from the underlying message, check they match expectation
- Section section = protonMessage.getBody();
+ Section section = amqpObjectMessageFacade.getBody();
assertNotNull(section);
assertEquals(Data.class, section.getClass());
assertArrayEquals("Underlying message data section did not contain the expected bytes", bytes, ((Data) section).getValue().getArray());
@@ -152,10 +148,8 @@ public class AmqpJmsObjectMessageFacadeTest extends AmqpJmsMessageTypesTestCase
AmqpJmsObjectMessageFacade amqpObjectMessageFacade = createNewObjectMessageFacade(true);
amqpObjectMessageFacade.setObject(content);
- Message protonMessage = amqpObjectMessageFacade.getAmqpMessage();
-
// retrieve the body from the underlying message, check it matches expectation
- Section section = protonMessage.getBody();
+ Section section = amqpObjectMessageFacade.getBody();
assertNotNull(section);
assertEquals(AmqpValue.class, section.getClass());
assertEquals("Underlying message body did not contain the expected content", content, ((AmqpValue) section).getValue());
@@ -175,9 +169,9 @@ public class AmqpJmsObjectMessageFacadeTest extends AmqpJmsMessageTypesTestCase
AmqpJmsObjectMessageFacade amqpObjectMessageFacade = createReceivedObjectMessageFacade(createMockAmqpConsumer(), protonMessage);
- assertNotNull("Expected existing body section to be found", protonMessage.getBody());
+ assertNotNull("Expected existing body section to be found", amqpObjectMessageFacade.getBody());
amqpObjectMessageFacade.setObject(null);
- assertSame("Expected existing body section to be replaced", AmqpSerializedObjectDelegate.NULL_OBJECT_BODY, protonMessage.getBody());
+ assertSame("Expected existing body section to be replaced", AmqpSerializedObjectDelegate.NULL_OBJECT_BODY, amqpObjectMessageFacade.getBody());
assertNull("Expected null object", amqpObjectMessageFacade.getObject());
}
@@ -195,9 +189,9 @@ public class AmqpJmsObjectMessageFacadeTest extends AmqpJmsMessageTypesTestCase
AmqpJmsObjectMessageFacade amqpObjectMessageFacade = createReceivedObjectMessageFacade(createMockAmqpConsumer(), protonMessage);
- assertNotNull("Expected existing body section to be found", protonMessage.getBody());
+ assertNotNull("Expected existing body section to be found", amqpObjectMessageFacade.getBody());
amqpObjectMessageFacade.clearBody();
- assertSame("Expected existing body section to be replaced", AmqpSerializedObjectDelegate.NULL_OBJECT_BODY, protonMessage.getBody());
+ assertSame("Expected existing body section to be replaced", AmqpSerializedObjectDelegate.NULL_OBJECT_BODY, amqpObjectMessageFacade.getBody());
assertNull("Expected null object", amqpObjectMessageFacade.getObject());
}
@@ -321,11 +315,7 @@ public class AmqpJmsObjectMessageFacadeTest extends AmqpJmsMessageTypesTestCase
Serializable serialized = amqpObjectMessageFacade.getObject();
assertTrue("Unexpected object type returned", serialized instanceof Map<?, ?>);
Map<String, String> returnedObject1 = (Map<String, String>) serialized;
- if (contentType) {
- assertNotSame("Expected different objects, due to snapshot being taken", origMap, returnedObject1);
- } else {
- assertSame("Expected same objects, due to initial snapshot of delivered value", origMap, returnedObject1);
- }
+ assertNotSame("Expected different objects, due to snapshot being taken", origMap, returnedObject1);
assertEquals("Expected equal objects, due to snapshot being taken", origMap, returnedObject1);
// verify we get a different-but-equal object back when compared to the previously retrieved object
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org