1   /*
2    * $Id: HttpTransformTestCase.java 10896 2008-02-20 09:23:25Z dirk.olmes $
3    * --------------------------------------------------------------------------------------
4    * Copyright (c) MuleSource, Inc.  All rights reserved.  http://www.mulesource.com
5    *
6    * The software in this package is published under the terms of the CPAL v1.0
7    * license, a copy of which has been included with this distribution in the
8    * LICENSE.txt file.
9    */
10  
11  package org.mule.test.usecases.sync;
12  
13  import org.mule.api.MuleMessage;
14  import org.mule.module.client.MuleClient;
15  import org.mule.tck.FunctionalTestCase;
16  import org.mule.transformer.compression.GZipUncompressTransformer;
17  import org.mule.transformer.simple.ByteArrayToSerializable;
18  
19  import java.util.Arrays;
20  
21  public class HttpTransformTestCase extends FunctionalTestCase
22  {
23  
24      protected String getConfigResources()
25      {
26          return "org/mule/test/usecases/sync/http-transform.xml";
27      }
28  
29      public void testTransform() throws Exception
30      {
31          MuleClient client = new MuleClient();
32          MuleMessage message = client.send("http://localhost:18080/RemoteService", "payload", null);
33          assertNotNull(message);
34          GZipUncompressTransformer gu = new GZipUncompressTransformer();
35          gu.setReturnClass(String.class);
36          assertNotNull(message.getPayload());
37          String result = (String)gu.transform(message.getPayloadAsBytes());
38          assertEquals("<string>payload</string>", result);
39      }
40  
41      public void testBinary() throws Exception
42      {
43          MuleClient client = new MuleClient();
44          Object payload = Arrays.asList(new Integer[]{new Integer(42)});
45          MuleMessage message = client.send("http://localhost:18081/RemoteService", payload, null);
46          assertNotNull(message);
47          ByteArrayToSerializable bas = new ByteArrayToSerializable();
48          assertNotNull(message.getPayload());
49          Object result = bas.transform(message.getPayload());
50          assertEquals(payload, result);
51      }
52  
53      public void testBinaryWithBridge() throws Exception
54      {
55          MuleClient client = new MuleClient();
56          Object payload = Arrays.asList(new Integer[]{new Integer(42)});
57          MuleMessage message = client.send("vm://LocalService", payload, null);
58          assertNotNull(message);
59          ByteArrayToSerializable bas = new ByteArrayToSerializable();
60          assertNotNull(message.getPayload());
61          Object result = bas.transform(message.getPayload());
62          assertEquals(payload, result);
63      }
64  }