You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2017/07/11 15:10:00 UTC

camel git commit: CAMEL-11534: Incorrect transferExchange option test in camel-jms

Repository: camel
Updated Branches:
  refs/heads/master 958f7f33f -> f23bdca82


CAMEL-11534: Incorrect transferExchange option test in camel-jms

Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/f23bdca8
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/f23bdca8
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/f23bdca8

Branch: refs/heads/master
Commit: f23bdca8229700f2404c0db4c21ed207bc2234af
Parents: 958f7f3
Author: Dmitry Volodin <dm...@gmail.com>
Authored: Tue Jul 11 16:34:20 2017 +0300
Committer: Claus Ibsen <da...@apache.org>
Committed: Tue Jul 11 17:09:53 2017 +0200

----------------------------------------------------------------------
 .../jms/JmsInOutTransferExchangeTest.java       | 46 ++++++++++++++------
 1 file changed, 32 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/f23bdca8/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsInOutTransferExchangeTest.java
----------------------------------------------------------------------
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsInOutTransferExchangeTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsInOutTransferExchangeTest.java
index 01d1697..f7efd68 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsInOutTransferExchangeTest.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsInOutTransferExchangeTest.java
@@ -21,13 +21,14 @@ import java.util.Map;
 
 import javax.jms.ConnectionFactory;
 
+import org.apache.activemq.command.ActiveMQObjectMessage;
 import org.apache.camel.CamelContext;
 import org.apache.camel.EndpointInject;
 import org.apache.camel.Exchange;
-import org.apache.camel.Message;
 import org.apache.camel.Processor;
 import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
+import org.apache.camel.impl.DefaultExchangeHolder;
 import org.apache.camel.test.junit4.CamelTestSupport;
 import org.junit.Test;
 
@@ -72,19 +73,36 @@ public class JmsInOutTransferExchangeTest extends CamelTestSupport {
         assertMockEndpointsSatisfied();
 
         Exchange transferExchange = transfer.getExchanges().get(0);
-        Message transferMessage = transferExchange.getIn();
-        assertNotNull(transferMessage.getBody(SerializableRequestDto.class));
-        assertEquals(Boolean.TRUE, transferMessage.getHeader("boolean", Boolean.class));
-        assertEquals((Long) 123L, transferMessage.getHeader("long", Long.class));
-        assertEquals((Double) 1.23, transferMessage.getHeader("double", Double.class));
-        assertEquals("hello", transferMessage.getHeader("string", String.class));
-
-        Message resultMessage = result.getExchanges().get(0).getIn();
-        assertNotNull(resultMessage.getBody(SerializableResponseDto.class));
-        assertEquals(Boolean.TRUE, resultMessage.getHeader("boolean", Boolean.class));
-        assertEquals((Long) 123L, resultMessage.getHeader("long", Long.class));
-        assertEquals((Double) 1.23, resultMessage.getHeader("double", Double.class));
-        assertEquals("hello", resultMessage.getHeader("string", String.class));
+        Exchange exchange = createExchangeWithBody(null);
+        assertTrue(transferExchange.getIn() instanceof JmsMessage);
+        
+        JmsMessage transferMessage = (JmsMessage)transferExchange.getIn();
+        ActiveMQObjectMessage transferActiveMQMessage = (ActiveMQObjectMessage)transferMessage.getJmsMessage();
+        
+        assertTrue(transferActiveMQMessage.getObject() instanceof DefaultExchangeHolder);
+        DefaultExchangeHolder exchangeHolder = (DefaultExchangeHolder)transferActiveMQMessage.getObject();
+        DefaultExchangeHolder.unmarshal(exchange, exchangeHolder);
+        
+        assertNotNull(exchange.getIn().getBody(SerializableRequestDto.class));
+        assertEquals(Boolean.TRUE, exchange.getIn().getHeader("boolean", Boolean.class));
+        assertEquals((Long) 123L, exchange.getIn().getHeader("long", Long.class));
+        assertEquals((Double) 1.23, exchange.getIn().getHeader("double", Double.class));
+        assertEquals("hello", exchange.getIn().getHeader("string", String.class));
+        
+        Exchange resultExchange = result.getExchanges().get(0);
+        assertTrue(resultExchange.getIn() instanceof JmsMessage);
+        
+        JmsMessage resultMessage = (JmsMessage)resultExchange.getIn();
+        ActiveMQObjectMessage resultActiveMQMessage = (ActiveMQObjectMessage)resultMessage.getJmsMessage();
+        exchangeHolder = (DefaultExchangeHolder)resultActiveMQMessage.getObject();
+        exchange = createExchangeWithBody(null);
+        DefaultExchangeHolder.unmarshal(exchange, exchangeHolder);
+        
+        assertNotNull(exchange.getIn().getBody(SerializableResponseDto.class));
+        assertEquals(Boolean.TRUE, exchange.getIn().getHeader("boolean", Boolean.class));
+        assertEquals((Long) 123L, exchange.getIn().getHeader("long", Long.class));
+        assertEquals((Double) 1.23, exchange.getIn().getHeader("double", Double.class));
+        assertEquals("hello", exchange.getIn().getHeader("string", String.class));
     }
 
     @Override