1
2
3
4
5
6
7
8
9
10
11 package org.mule.test.integration.config;
12
13 import org.mule.api.endpoint.ImmutableEndpoint;
14 import org.mule.api.transformer.Transformer;
15 import org.mule.tck.AbstractServiceAndFlowTestCase;
16
17 import java.util.Arrays;
18 import java.util.Collection;
19 import java.util.Iterator;
20 import java.util.List;
21
22 import org.junit.Test;
23 import org.junit.runners.Parameterized.Parameters;
24
25 import static org.junit.Assert.assertEquals;
26 import static org.junit.Assert.assertFalse;
27
28 public class ResponseTransformerTestCase extends AbstractServiceAndFlowTestCase
29 {
30 @Parameters
31 public static Collection<Object[]> parameters()
32 {
33 return Arrays.asList(new Object[][]{
34 {ConfigVariant.SERVICE, "org/mule/test/integration/config/response-transformer-test-service.xml"},
35 {ConfigVariant.FLOW, "org/mule/test/integration/config/response-transformer-test-flow.xml"}});
36 }
37
38 public ResponseTransformerTestCase(ConfigVariant variant, String configResources)
39 {
40 super(variant, configResources);
41 }
42
43 @Test
44 public void testTransformers()
45 {
46 ImmutableEndpoint endpoint = (ImmutableEndpoint) muleContext.getRegistry().lookupObject("endpoint");
47 assertFalse(endpoint.getTransformers().isEmpty());
48 assertEquals(2, endpoint.getTransformers().size());
49 checkNames("normal", endpoint.getTransformers());
50 assertFalse(endpoint.getResponseTransformers().isEmpty());
51 assertEquals(2, endpoint.getResponseTransformers().size());
52 checkNames("response", endpoint.getResponseTransformers());
53 }
54
55 protected void checkNames(String prefix, List<Transformer> transformers)
56 {
57 Iterator<Transformer> iterator = transformers.iterator();
58 for (int count = 1; iterator.hasNext(); count++)
59 {
60 Transformer transformer = iterator.next();
61 logger.debug(transformer);
62 assertEquals(prefix + count, transformer.getName());
63 }
64 }
65 }