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