1
2
3
4
5
6
7
8
9
10
11 package org.mule.transport.soap;
12
13 import org.mule.tck.AbstractMuleTestCase;
14 import org.mule.tck.testmodels.fruit.Apple;
15 import org.mule.transport.soap.NamedParameter;
16 import org.mule.transport.soap.SoapMethod;
17
18 import java.util.Iterator;
19
20 import javax.xml.namespace.QName;
21 import javax.xml.rpc.ParameterMode;
22
23 public class SoapMethodTestCase extends AbstractMuleTestCase
24 {
25 public void testNamedParameterParsing() throws Exception
26 {
27 SoapMethod method = new SoapMethod("getFruit",
28 "firstName;string;in, age;integer;in, returnClass;org.mule.tck.testmodels.fruit.Apple");
29 assertEquals(new QName("getFruit"), method.getName());
30 assertEquals(2, method.getNamedParameters().size());
31 assertEquals(Apple.class, method.getReturnClass());
32 assertNull(method.getReturnType());
33
34 Iterator i = method.getNamedParameters().iterator();
35 NamedParameter np = (NamedParameter)i.next();
36 assertEquals(new QName("firstName"), np.getName());
37 assertEquals(NamedParameter.XSD_STRING, np.getType());
38 assertEquals(ParameterMode.IN, np.getMode());
39
40 np = (NamedParameter)i.next();
41 assertEquals(new QName("age"), np.getName());
42 assertEquals(NamedParameter.XSD_INTEGER, np.getType());
43 assertEquals(ParameterMode.IN, np.getMode());
44 }
45
46 public void testNamedParameterParsing2() throws Exception
47 {
48 SoapMethod method = new SoapMethod("getAge", "firstName;string;inout,return;int");
49 assertEquals(new QName("getAge"), method.getName());
50 assertEquals(1, method.getNamedParameters().size());
51 assertEquals(Object.class, method.getReturnClass());
52 assertEquals(NamedParameter.XSD_INT, method.getReturnType());
53
54 Iterator i = method.getNamedParameters().iterator();
55 NamedParameter np = (NamedParameter)i.next();
56 assertEquals(new QName("firstName"), np.getName());
57 assertEquals(NamedParameter.XSD_STRING, np.getType());
58 assertEquals(ParameterMode.INOUT, np.getMode());
59 }
60
61 }