1   /*
2    * $Id: MuleClientAxisTestCase.java 10790 2008-02-12 20:53:32Z dfeist $
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.integration.client;
12  
13  import org.mule.api.MuleMessage;
14  import org.mule.module.client.MuleClient;
15  import org.mule.tck.FunctionalTestCase;
16  import org.mule.tck.testmodels.services.Person;
17  
18  public class MuleClientAxisTestCase extends FunctionalTestCase
19  {
20  
21      protected String getConfigResources()
22      {
23          return "org/mule/test/integration/client/axis-client-test-mule-config.xml";
24      }
25  
26      public void testRequestResponse() throws Throwable
27      {
28          MuleClient client = new MuleClient();
29  
30          MuleMessage result = client.send("axis:http://localhost:38104/mule/services/mycomponent2?method=echo",
31              "test", null);
32          assertNotNull(result);
33          assertEquals("test", result.getPayloadAsString());
34      }
35  
36      public void testRequestResponseComplex() throws Exception
37      {
38          MuleClient client = new MuleClient();
39  
40          MuleMessage result = client.send(
41              "axis:http://localhost:38104/mule/services/mycomponent3?method=getPerson", "Fred", null);
42          assertNotNull(result);
43          logger.debug(result.getPayload());
44          assertTrue(result.getPayload() instanceof Person);
45          assertEquals("Fred", ((Person)result.getPayload()).getFirstName());
46          assertEquals("Flintstone", ((Person)result.getPayload()).getLastName());
47      }
48  
49      public void testRequestResponseComplex2() throws Exception
50      {
51          MuleClient client = new MuleClient();
52  
53          String[] args = new String[]{"Betty", "Rubble"};
54          MuleMessage result = client.send(
55              "axis:http://localhost:38104/mule/services/mycomponent3?method=addPerson", args, null);
56          assertNotNull(result);
57          assertTrue(result.getPayload() instanceof Person);
58          assertEquals("Betty", ((Person)result.getPayload()).getFirstName());
59          assertEquals("Rubble", ((Person)result.getPayload()).getLastName());
60  
61          // do a receive
62          result = client.send("axis:http://localhost:38104/mule/services/mycomponent3?method=getPerson",
63              "Betty", null);
64          assertNotNull(result);
65          assertTrue(result.getPayload() instanceof Person);
66          assertEquals("Betty", ((Person)result.getPayload()).getFirstName());
67          assertEquals("Rubble", ((Person)result.getPayload()).getLastName());
68  
69      }
70  
71      public void testRequestWithComplexArg() throws Exception
72      {
73          MuleClient client = new MuleClient();
74          Person person = new Person("Joe", "Blow");
75          String uri = "axis:http://localhost:38104/mule/services/mycomponent3?method=addPerson";
76          client.send(uri, person, null);
77          uri = "axis:http://localhost:38104/mule/services/mycomponent3?method=getPerson";
78          MuleMessage result = client.send(uri, "Joe", null);
79          assertNotNull(result);
80          assertTrue(result.getPayload() instanceof Person);
81          assertEquals("Joe", ((Person)result.getPayload()).getFirstName());
82          assertEquals("Blow", ((Person)result.getPayload()).getLastName());
83      }
84  
85  }