Author: davsclaus
Date: Thu Jun 21 15:24:17 2012
New Revision: 1352570

URL: http://svn.apache.org/viewvc?rev=1352570&view=rev
Log:
Added test based on user forum issue

Added:
    
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsSplitterParallelTest.java
      - copied, changed from r1352529, 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsTransferExchangeFromSplitterTest.java

Copied: 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsSplitterParallelTest.java
 (from r1352529, 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsTransferExchangeFromSplitterTest.java)
URL: 
http://svn.apache.org/viewvc/camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsSplitterParallelTest.java?p2=camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsSplitterParallelTest.java&p1=camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsTransferExchangeFromSplitterTest.java&r1=1352529&r2=1352570&rev=1352570&view=diff
==============================================================================
--- 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsTransferExchangeFromSplitterTest.java
 (original)
+++ 
camel/trunk/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsSplitterParallelTest.java
 Thu Jun 21 15:24:17 2012
@@ -19,10 +19,8 @@ package org.apache.camel.component.jms;
 import javax.jms.ConnectionFactory;
 
 import org.apache.camel.CamelContext;
-import org.apache.camel.Exchange;
-import org.apache.camel.Processor;
+import org.apache.camel.ExchangePattern;
 import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.test.junit4.CamelTestSupport;
 import org.junit.Test;
 
@@ -31,26 +29,19 @@ import static org.apache.camel.component
 /**
  * @version 
  */
-public class JmsTransferExchangeFromSplitterTest extends CamelTestSupport {
+public class JmsSplitterParallelTest extends CamelTestSupport {
 
     protected String getUri() {
-        return "activemq:queue:foo?transferExchange=true";
+        return "activemq:queue:foo?useMessageIDAsCorrelationID=true";
     }
 
     @Test
-    public void testSplit() throws Exception {
-        MockEndpoint mock = getMockEndpoint("mock:result");
-        mock.expectedBodiesReceived("A", "B", "C");
-        mock.allMessages().header("foo").isEqualTo("cheese");
-        mock.allMessages().property("bar").isEqualTo(123);
-
-        template.send("direct:start", new Processor() {
-            public void process(Exchange exchange) throws Exception {
-                exchange.getIn().setBody("A,B,C");
-                exchange.getIn().setHeader("foo", "cheese");
-                exchange.setProperty("bar", 123);
-            }
-        });
+    public void testSplitParallel() throws Exception {
+        getMockEndpoint("mock:result").expectedBodiesReceived("A,B,C,D,E");
+        getMockEndpoint("mock:reply").expectedBodiesReceivedInAnyOrder("Bye 
A", "Bye B", "Bye C", "Bye D", "Bye E");
+        getMockEndpoint("mock:split").expectedBodiesReceivedInAnyOrder("Bye 
A", "Bye B", "Bye C", "Bye D", "Bye E");
+
+        template.sendBody("direct:start", "A,B,C,D,E");
 
         assertMockEndpointsSatisfied();
     }
@@ -70,10 +61,17 @@ public class JmsTransferExchangeFromSpli
             @Override
             public void configure() throws Exception {
                 from("direct:start")
-                    .split(body().tokenize(","))
-                        .to(getUri());
-
-                from(getUri()).to("mock:result");
+                    .split(body().tokenize(",")).parallelProcessing()
+                        .to("log:before")
+                        .to(ExchangePattern.InOut, getUri())
+                        .to("log:after")
+                        .to("mock:split")
+                    .end()
+                    .to("mock:result");
+
+                from(getUri())
+                    .transform(body().prepend("Bye "))
+                    .to("mock:reply");
             }
         };
     }


Reply via email to