1
2
3
4
5
6
7 package org.mule.test.usecases.sync;
8
9 import org.mule.api.MuleMessage;
10 import org.mule.module.client.MuleClient;
11 import org.mule.tck.junit4.FunctionalTestCase;
12 import org.mule.transformer.compression.GZipUncompressTransformer;
13 import org.mule.transformer.simple.ByteArrayToSerializable;
14 import org.mule.transformer.types.DataTypeFactory;
15
16 import java.util.Arrays;
17
18 import org.junit.Test;
19
20 import static org.junit.Assert.assertEquals;
21 import static org.junit.Assert.assertNotNull;
22
23 public class HttpTransformTestCase extends FunctionalTestCase
24 {
25
26 @Override
27 protected String getConfigResources()
28 {
29 return "org/mule/test/usecases/sync/http-transform.xml";
30 }
31
32 @Test
33 public void testTransform() throws Exception
34 {
35 MuleClient client = new MuleClient(muleContext);
36 MuleMessage message = client.send("http://localhost:18080/RemoteService", "payload", null);
37 assertNotNull(message);
38 GZipUncompressTransformer gu = new GZipUncompressTransformer();
39 gu.setMuleContext(muleContext);
40 gu.setReturnDataType(DataTypeFactory.STRING);
41 assertNotNull(message.getPayload());
42 String result = (String)gu.transform(message.getPayloadAsBytes());
43 assertEquals("<string>payload</string>", result);
44 }
45
46 @Test
47 public void testBinary() throws Exception
48 {
49 MuleClient client = new MuleClient(muleContext);
50 Object payload = Arrays.asList(42);
51 MuleMessage message = client.send("http://localhost:18081/RemoteService", payload, null);
52 assertNotNull(message);
53 ByteArrayToSerializable bas = new ByteArrayToSerializable();
54 bas.setMuleContext(muleContext);
55 assertNotNull(message.getPayload());
56 Object result = bas.transform(message.getPayload());
57 assertEquals(payload, result);
58 }
59
60 @Test
61 public void testBinaryWithBridge() throws Exception
62 {
63 MuleClient client = new MuleClient(muleContext);
64 Object payload = Arrays.asList(42);
65 MuleMessage message = client.send("vm://LocalService", payload, null);
66 assertNotNull(message);
67 ByteArrayToSerializable bas = new ByteArrayToSerializable();
68 bas.setMuleContext(muleContext);
69 assertNotNull(message.getPayload());
70 Object result = bas.transform(message.getPayload());
71 assertEquals(payload, result);
72 }
73 }