1
2
3
4
5
6
7
8
9
10
11 package org.mule.test.integration.xml;
12
13 import org.mule.api.MuleMessage;
14 import org.mule.module.client.MuleClient;
15 import org.mule.tck.AbstractServiceAndFlowTestCase;
16 import org.mule.transport.http.HttpConnector;
17
18 import java.io.InputStream;
19 import java.util.Arrays;
20 import java.util.Collection;
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.assertNotNull;
27
28 public class XmlSendTestCase 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/xml/xml-conf-service.xml"},
35 {ConfigVariant.FLOW, "org/mule/test/integration/xml/xml-conf-flow.xml"}
36 });
37 }
38
39 public XmlSendTestCase(ConfigVariant variant, String configResources)
40 {
41 super(variant, configResources);
42 }
43
44 @Test
45 public void testXmlFilter() throws Exception
46 {
47 InputStream xml = getClass().getResourceAsStream("request.xml");
48
49 assertNotNull(xml);
50
51 MuleClient client = new MuleClient(muleContext);
52
53
54 MuleMessage message = client.send("http://localhost:63081/xml-parse", xml, null);
55 assertEquals("200", message.getInboundProperty(HttpConnector.HTTP_STATUS_PROPERTY));
56
57
58 xml = getClass().getResourceAsStream("validation1.xml");
59 message = client.send("http://localhost:63081/xml-parse", xml, null);
60 assertEquals("406", message.getInboundProperty(HttpConnector.HTTP_STATUS_PROPERTY));
61 }
62
63 @Test
64 public void testXmlFilterAndXslt() throws Exception
65 {
66 InputStream xml = getClass().getResourceAsStream("request.xml");
67
68 assertNotNull(xml);
69
70 MuleClient client = new MuleClient(muleContext);
71
72
73 MuleMessage message = client.send("http://localhost:63081/xml-xslt-parse", xml, null);
74 assertEquals("200", message.getInboundProperty(HttpConnector.HTTP_STATUS_PROPERTY));
75 }
76
77 @Test
78 public void testXmlValidation() throws Exception
79 {
80 InputStream xml = getClass().getResourceAsStream("validation1.xml");
81
82 assertNotNull(xml);
83
84 MuleClient client = new MuleClient(muleContext);
85
86
87 MuleMessage message = client.send("http://localhost:63081/validate", xml, null);
88 assertEquals("200", message.getInboundProperty(HttpConnector.HTTP_STATUS_PROPERTY));
89
90 xml = getClass().getResourceAsStream("validation2.xml");
91 message = client.send("http://localhost:63081/validate", xml, null);
92 assertEquals("406", message.getInboundProperty(HttpConnector.HTTP_STATUS_PROPERTY));
93
94 xml = getClass().getResourceAsStream("validation3.xml");
95 message = client.send("http://localhost:63081/validate", xml, null);
96 assertEquals("200", message.getInboundProperty(HttpConnector.HTTP_STATUS_PROPERTY));
97 }
98
99 }