Repository: camel
Updated Branches:
  refs/heads/master 622a71d67 -> add6c68e6


CAMEL-9892 wrapped completionPredicate and added Unit Test


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

Branch: refs/heads/master
Commit: add6c68e678bb6e01d74cad3629b552a4394c665
Parents: a1a4c2e
Author: Bob Gaudaen <bob.gaud...@gmail.com>
Authored: Wed Apr 20 16:27:33 2016 +0200
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Thu Apr 21 16:57:27 2016 +0200

----------------------------------------------------------------------
 .../camel/scala/dsl/SAggregateDefinition.scala  |  2 +-
 .../apache/camel/scala/dsl/AggregatorTest.scala | 26 +++++++++++++++++---
 2 files changed, 23 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/add6c68e/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/SAggregateDefinition.scala
----------------------------------------------------------------------
diff --git 
a/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/SAggregateDefinition.scala
 
b/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/SAggregateDefinition.scala
index acdf4ab..3ef3434 100644
--- 
a/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/SAggregateDefinition.scala
+++ 
b/components/camel-scala/src/main/scala/org/apache/camel/scala/dsl/SAggregateDefinition.scala
@@ -65,6 +65,6 @@ case class SAggregateDefinition(override val target: 
AggregateDefinition)(implic
   def completionPredicate(filter: Exchange => Any) = {
      // uses implicit conversion
      val predicate = filter
-     target.completionPredicate(predicate)
+     wrap(target.completionPredicate(predicate))
   }
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/add6c68e/components/camel-scala/src/test/scala/org/apache/camel/scala/dsl/AggregatorTest.scala
----------------------------------------------------------------------
diff --git 
a/components/camel-scala/src/test/scala/org/apache/camel/scala/dsl/AggregatorTest.scala
 
b/components/camel-scala/src/test/scala/org/apache/camel/scala/dsl/AggregatorTest.scala
index dcb27bb..b8b1cda 100644
--- 
a/components/camel-scala/src/test/scala/org/apache/camel/scala/dsl/AggregatorTest.scala
+++ 
b/components/camel-scala/src/test/scala/org/apache/camel/scala/dsl/AggregatorTest.scala
@@ -6,7 +6,7 @@
  * (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
+ * 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,
@@ -16,12 +16,12 @@
  */
 package org.apache.camel.scala.dsl
 
+import org.apache.camel.Exchange
+import org.apache.camel.builder.ExchangeBuilder.anExchange
 import org.apache.camel.processor.BodyInAggregatingStrategy
 import org.apache.camel.processor.aggregate.UseLatestAggregationStrategy
+import org.apache.camel.scala.dsl.builder.RouteBuilder
 import org.junit.Test
-import builder.RouteBuilder
-import org.apache.camel.Exchange
-import org.apache.camel.builder.ExchangeBuilder.anExchange
 
 /**
  * Test case for message aggregator
@@ -88,6 +88,18 @@ class AggregatorTest extends ScalaTestSupport {
     }
   }
 
+  @Test
+  def testAggregatePredicateWithBlock() {
+    "mock:aggregated" expect {
+      _.received("A+B+C")
+    }
+    test {
+      "direct:predicate-block" ! "A"
+      "direct:predicate-block" ! "B"
+      "direct:predicate-block" ! "C"
+    }
+  }
+
   val builder =
     new RouteBuilder {
       "direct:completion-size" ==> {
@@ -119,5 +131,11 @@ class AggregatorTest extends ScalaTestSupport {
       "direct:predicate" ==> {
         aggregate("constant", new BodyInAggregatingStrategy()) 
completionPredicate (_.in[String].contains("A+B+C")) to "mock:aggregated"
       }
+
+      "direct:predicate-block" ==> {
+        aggregate("constant", new 
BodyInAggregatingStrategy()).completionPredicate(_.in[String].contains("A+B+C"))
 {
+          to("mock:aggregated")
+        }
+      }
     }
 }
\ No newline at end of file

Reply via email to