1
2
3
4
5
6
7
8
9
10
11 package org.mule.test.spring;
12
13 import org.mule.api.config.ConfigurationBuilder;
14 import org.mule.api.config.ConfigurationException;
15 import org.mule.api.endpoint.ImmutableEndpoint;
16 import org.mule.api.routing.InboundRouterCollection;
17 import org.mule.api.routing.OutboundRouterCollection;
18 import org.mule.api.routing.ResponseRouterCollection;
19 import org.mule.api.service.Service;
20 import org.mule.api.transformer.Transformer;
21 import org.mule.config.spring.SpringXmlConfigurationBuilder;
22 import org.mule.routing.ExpressionMessageInfoMapping;
23 import org.mule.routing.outbound.AbstractOutboundRouter;
24 import org.mule.routing.response.AbstractResponseRouter;
25 import org.mule.tck.AbstractConfigBuilderTestCase;
26 import org.mule.tck.testmodels.fruit.Apple;
27 import org.mule.tck.testmodels.mule.TestCompressionTransformer;
28
29 import java.util.List;
30
31
32
33
34
35
36
37
38
39
40
41 public class SpringNamespaceConfigBuilderV2TestCase extends AbstractConfigBuilderTestCase
42 {
43
44 public SpringNamespaceConfigBuilderV2TestCase()
45 {
46 super(true);
47 }
48
49 public String getConfigResources()
50 {
51 return "org/mule/test/spring/config2/test-xml-mule2-config.xml," +
52 "org/mule/test/spring/config2/test-xml-mule2-config-split.xml," +
53 "org/mule/test/spring/config2/test-xml-mule2-config-split-properties.xml";
54 }
55
56
57 public ConfigurationBuilder getBuilder() throws ConfigurationException
58 {
59 return new SpringXmlConfigurationBuilder(getConfigResources());
60 }
61
62 public void testMessageInfoMappingConfig() throws Exception
63 {
64 Service d = muleContext.getRegistry().lookupService("msgInfoMappingTestComponent");
65 assertNotNull(d);
66 OutboundRouterCollection router = d.getOutboundRouter();
67 assertNotNull(router);
68 List routers = router.getRouters();
69 assertNotNull(routers);
70 assertEquals(1, routers.size());
71 AbstractOutboundRouter theRouter = (AbstractOutboundRouter)routers.get(0);
72
73 assertTrue(theRouter.getMessageInfoMapping() instanceof ExpressionMessageInfoMapping);
74 }
75
76 public void testMessageInfoMappingResponseRouterConfig() throws Exception
77 {
78 Service d = muleContext.getRegistry().lookupService("msgInfoMappingResponseRouterTestComponent");
79 assertNotNull(d);
80 ResponseRouterCollection router = d.getResponseRouter();
81 assertNotNull(router);
82 List routers = router.getRouters();
83 assertNotNull(routers);
84 assertEquals(1, routers.size());
85 AbstractResponseRouter theRouter = (AbstractResponseRouter)routers.get(0);
86
87 assertTrue(theRouter.getMessageInfoMapping() instanceof ExpressionMessageInfoMapping);
88 }
89
90 public void testPropertyTypesConfig() throws Exception
91 {
92 Service c = muleContext.getRegistry().lookupService("testPropertiesComponent");
93 assertNotNull(c);
94 Object obj = getComponent(c);
95 assertNotNull(obj);
96 assertTrue(obj instanceof Apple);
97 assertTrue(((Apple) obj).isBitten());
98 assertTrue(((Apple) obj).isWashed());
99 }
100
101 public void testEndpointURIParamsConfig()
102 {
103 Service d = muleContext.getRegistry().lookupService("testPropertiesComponent");
104 assertNotNull(d);
105 final InboundRouterCollection router = d.getInboundRouter();
106 assertNotNull(router);
107 final List endpoints = router.getEndpoints();
108 assertNotNull(endpoints);
109 assertFalse(endpoints.isEmpty());
110 final ImmutableEndpoint inboundEndpoint = (ImmutableEndpoint) endpoints.get(0);
111 assertNotNull(inboundEndpoint);
112 final List transformers = inboundEndpoint.getTransformers();
113 assertFalse(transformers.isEmpty());
114 assertNotNull(transformers.get(0));
115 final List responseTransformers = inboundEndpoint.getResponseTransformers();
116 assertFalse(responseTransformers.isEmpty());
117 assertNotNull(responseTransformers.get(0));
118 }
119
120
121 public void testTransformerConfig()
122 {
123
124 super.testTransformerConfig();
125
126 Transformer t = muleContext.getRegistry().lookupTransformer("TestCompressionTransformer");
127 assertNotNull(t);
128 assertTrue(t instanceof TestCompressionTransformer);
129
130
131
132 assertEquals("this was set from the manager properties!",
133 ((TestCompressionTransformer)t).getBeanProperty1());
134 assertEquals(12, ((TestCompressionTransformer)t).getBeanProperty2());
135
136 assertEquals(t.getReturnClass(), java.lang.String.class);
137
138 t = muleContext.getRegistry().lookupTransformer("TestTransformer");
139 assertNotNull(t);
140 assertEquals(t.getReturnClass(), byte[].class);
141 }
142 }