1
2
3
4
5
6
7 package org.mule.test.config;
8
9 import org.mule.api.endpoint.EndpointBuilder;
10 import org.mule.api.endpoint.InboundEndpoint;
11 import org.mule.routing.filters.ExpressionFilter;
12 import org.mule.tck.junit4.FunctionalTestCase;
13
14 import org.junit.Test;
15
16 import static org.junit.Assert.assertEquals;
17 import static org.junit.Assert.assertFalse;
18 import static org.junit.Assert.assertNotNull;
19 import static org.junit.Assert.assertNull;
20 import static org.junit.Assert.assertTrue;
21
22 public class ExpressionFilterConfigTestCase extends FunctionalTestCase
23 {
24
25 @Override
26 protected String getConfigResources()
27 {
28 return "org/mule/test/config/expression-filter-config.xml";
29 }
30
31 @Test
32 public void testConfig1() throws Exception
33 {
34 EndpointBuilder eb = muleContext.getRegistry().lookupEndpointBuilder("endpoint1");
35 assertNotNull(eb);
36
37 InboundEndpoint ep = eb.buildInboundEndpoint();
38
39 assertNotNull(ep.getFilter());
40 assertTrue(ep.getFilter() instanceof ExpressionFilter);
41 ExpressionFilter filter = (ExpressionFilter) ep.getFilter();
42 assertEquals("payload-type", filter.getEvaluator());
43 assertEquals("java.lang.String", filter.getExpression());
44 assertNull(filter.getCustomEvaluator());
45 assertFalse(filter.isNullReturnsTrue());
46 }
47
48 @Test
49 public void testConfig2() throws Exception
50 {
51 EndpointBuilder eb = muleContext.getRegistry().lookupEndpointBuilder("endpoint2");
52 assertNotNull(eb);
53
54 InboundEndpoint ep = eb.buildInboundEndpoint();
55
56 assertNotNull(ep.getFilter());
57 assertTrue(ep.getFilter() instanceof ExpressionFilter);
58 ExpressionFilter filter = (ExpressionFilter) ep.getFilter();
59 assertEquals("header", filter.getEvaluator());
60 assertEquals("foo=bar", filter.getExpression());
61 assertNull(filter.getCustomEvaluator());
62 assertTrue(filter.isNullReturnsTrue());
63 }
64
65 @Test
66 public void testConfig3() throws Exception
67 {
68 EndpointBuilder eb = muleContext.getRegistry().lookupEndpointBuilder("endpoint3");
69 assertNotNull(eb);
70
71 InboundEndpoint ep = eb.buildInboundEndpoint();
72
73 assertNotNull(ep.getFilter());
74 assertTrue(ep.getFilter() instanceof ExpressionFilter);
75 ExpressionFilter filter = (ExpressionFilter) ep.getFilter();
76 assertEquals("custom", filter.getEvaluator());
77 assertEquals("a.b.c", filter.getExpression());
78 assertEquals("something", filter.getCustomEvaluator());
79 assertFalse(filter.isNullReturnsTrue());
80 }
81 }