1
2
3
4
5
6
7
8
9
10
11 package org.mule.test;
12
13 import org.mule.module.scripting.expression.GroovyExpressionEvaluator;
14 import org.mule.tck.AbstractMuleTestCase;
15 import org.mule.transport.jdbc.JdbcConnector;
16
17 import java.util.ArrayList;
18 import java.util.List;
19
20 public class ComplexExpressionParsingTestCase extends AbstractMuleTestCase
21 {
22
23 public void testComplexExpressionJdbcParsing() throws Exception
24 {
25 muleContext.getExpressionManager().registerEvaluator(new GroovyExpressionEvaluator());
26
27 List parsedParams = new ArrayList();
28 JdbcConnector c = new JdbcConnector(muleContext);
29 String result = c.parseStatement("#[groovy:payload[0]] - #[groovy:payload[1].toUpperCase()]", parsedParams);
30
31 assertEquals("Wrong number of parsed parameters for a statement", 2, parsedParams.size());
32 assertEquals("#[groovy:payload[0]]", parsedParams.get(0));
33 assertEquals("#[groovy:payload[1].toUpperCase()]", parsedParams.get(1));
34
35
36 assertEquals("? - ?", result);
37 }
38
39 }