Updated Branches: refs/heads/camel-2.10.x 0d5872b15 -> e22052986 refs/heads/camel-2.11.x 270962a54 -> 0530c21fb refs/heads/master 36cf2763a -> b2cd9f1c8
Added unit test based on user forum issue Project: http://git-wip-us.apache.org/repos/asf/camel/repo Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/e73e5407 Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/e73e5407 Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/e73e5407 Branch: refs/heads/master Commit: e73e5407057389d0cdf88324cf37329d84573770 Parents: 36cf276 Author: Claus Ibsen <davscl...@apache.org> Authored: Sat Jun 22 10:29:51 2013 +0200 Committer: Claus Ibsen <davscl...@apache.org> Committed: Sun Jun 23 09:03:28 2013 +0200 ---------------------------------------------------------------------- .../simple/SimpleParserPredicateTest.java | 34 ++++++++++++++++++++ 1 file changed, 34 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/camel/blob/e73e5407/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserPredicateTest.java ---------------------------------------------------------------------- diff --git a/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserPredicateTest.java b/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserPredicateTest.java index f089afa..a6fc7f0 100644 --- a/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserPredicateTest.java +++ b/camel-core/src/test/java/org/apache/camel/language/simple/SimpleParserPredicateTest.java @@ -16,11 +16,14 @@ */ package org.apache.camel.language.simple; +import java.util.ArrayList; import java.util.HashMap; +import java.util.List; import java.util.Map; import org.apache.camel.ExchangeTestSupport; import org.apache.camel.Predicate; +import org.apache.camel.impl.JndiRegistry; /** * @@ -209,4 +212,35 @@ public class SimpleParserPredicateTest extends ExchangeTestSupport { pre = parser.parsePredicate(); assertTrue("Should match", pre.matches(exchange)); } + + protected JndiRegistry createRegistry() throws Exception { + JndiRegistry jndi = super.createRegistry(); + + List<String> list = new ArrayList<String>(); + list.add("foo"); + list.add("bar"); + + jndi.bind("myList", list); + return jndi; + } + + public void testSimpleIn() throws Exception { + Map<String, String> map = new HashMap<String, String>(); + map.put("key", "foo"); + map.put("key2", "bar"); + map.put("key3", "none"); + exchange.getIn().setBody(map); + + SimplePredicateParser parser = new SimplePredicateParser("${body[key]} in ${ref:myList}", true); + Predicate pre = parser.parsePredicate(); + assertTrue("Should match", pre.matches(exchange)); + + parser = new SimplePredicateParser("${body[key2]} in ${ref:myList}", true); + pre = parser.parsePredicate(); + assertTrue("Should match", pre.matches(exchange)); + + parser = new SimplePredicateParser("${body[key3]} in ${ref:myList}", true); + pre = parser.parsePredicate(); + assertFalse("Should not match", pre.matches(exchange)); + } }