KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > celtix > systest > soapheader > HeaderClientServerTest


1 package org.objectweb.celtix.systest.soapheader;
2
3 import java.lang.reflect.UndeclaredThrowableException JavaDoc;
4 import java.net.URL JavaDoc;
5
6 import javax.xml.namespace.QName JavaDoc;
7 import javax.xml.ws.Holder;
8
9 import junit.framework.Test;
10 import junit.framework.TestSuite;
11
12 import org.objectweb.celtix.systest.common.ClientServerSetupBase;
13 import org.objectweb.celtix.systest.common.ClientServerTestBase;
14 import org.objectweb.header_test.SOAPHeaderService;
15 import org.objectweb.header_test.TestHeader;
16 import org.objectweb.header_test.types.TestHeader1;
17 import org.objectweb.header_test.types.TestHeader1Response;
18 import org.objectweb.header_test.types.TestHeader2;
19 import org.objectweb.header_test.types.TestHeader2Response;
20 import org.objectweb.header_test.types.TestHeader3;
21 import org.objectweb.header_test.types.TestHeader3Response;
22 import org.objectweb.header_test.types.TestHeader5;
23
24 public class HeaderClientServerTest extends ClientServerTestBase {
25
26     private final QName JavaDoc serviceName = new QName JavaDoc("http://objectweb.org/header_test",
27                                                 "SOAPHeaderService");
28     private final QName JavaDoc portName = new QName JavaDoc("http://objectweb.org/header_test",
29                                              "SOAPHeaderPort");
30
31     private TestHeader proxy;
32     
33     public static Test suite() throws Exception JavaDoc {
34         TestSuite suite = new TestSuite(HeaderClientServerTest.class);
35         return new ClientServerSetupBase(suite) {
36             public void startServers() throws Exception JavaDoc {
37                 assertTrue("server did not launch correctly", launchServer(Server.class));
38             }
39         };
40     }
41
42     public void setUp() throws Exception JavaDoc {
43         super.setUp();
44         
45         URL JavaDoc wsdl = getClass().getResource("/wsdl/soapheader_test.wsdl");
46         assertNotNull(wsdl);
47         
48         SOAPHeaderService service = new SOAPHeaderService(wsdl, serviceName);
49         assertNotNull(service);
50         proxy = service.getPort(portName, TestHeader.class);
51     }
52     public void tearDown() {
53         proxy = null;
54     }
55     
56     public void testInHeader() throws Exception JavaDoc {
57         try {
58             TestHeader1 val = new TestHeader1();
59             for (int idx = 0; idx < 2; idx++) {
60                 TestHeader1Response returnVal = proxy.testHeader1(val, val);
61                 assertNotNull(returnVal);
62                 assertEquals(TestHeader1.class.getSimpleName(), returnVal.getResponseType());
63             }
64         } catch (UndeclaredThrowableException JavaDoc ex) {
65             throw (Exception JavaDoc)ex.getCause();
66         }
67     }
68
69     public void testOutHeader() throws Exception JavaDoc {
70         try {
71             TestHeader2 in = new TestHeader2();
72             String JavaDoc val = new String JavaDoc(TestHeader2Response.class.getSimpleName());
73             Holder<TestHeader2Response> out = new Holder<TestHeader2Response>();
74             Holder<TestHeader2Response> outHeader = new Holder<TestHeader2Response>();
75             for (int idx = 0; idx < 2; idx++) {
76                 val += idx;
77                 in.setRequestType(val);
78                 proxy.testHeader2(in, out, outHeader);
79                 
80                 assertEquals(val, out.value.getResponseType());
81                 assertEquals(val, outHeader.value.getResponseType());
82             }
83         } catch (UndeclaredThrowableException JavaDoc ex) {
84             throw (Exception JavaDoc)ex.getCause();
85         }
86     }
87
88     public void testInOutHeader() throws Exception JavaDoc {
89         
90         try {
91             TestHeader3 in = new TestHeader3();
92             String JavaDoc val = new String JavaDoc(TestHeader3.class.getSimpleName());
93             Holder<TestHeader3> inoutHeader = new Holder<TestHeader3>();
94             for (int idx = 0; idx < 2; idx++) {
95                 val += idx;
96                 in.setRequestType(val);
97                 inoutHeader.value = new TestHeader3();
98                 TestHeader3Response returnVal = proxy.testHeader3(in, inoutHeader);
99                 //inoutHeader copied to return
100
//in copied to inoutHeader
101
assertNotNull(returnVal);
102                 assertNull(returnVal.getResponseType());
103                 assertEquals(val, inoutHeader.value.getRequestType());
104                 
105                 in.setRequestType(null);
106                 inoutHeader.value.setRequestType(val);
107                 returnVal = proxy.testHeader3(in, inoutHeader);
108                 assertNotNull(returnVal);
109                 assertEquals(val, returnVal.getResponseType());
110                 assertNull(inoutHeader.value.getRequestType());
111             }
112         } catch (UndeclaredThrowableException JavaDoc ex) {
113             throw (Exception JavaDoc)ex.getCause();
114         }
115     }
116
117     public void testReturnHeader() throws Exception JavaDoc {
118         
119         try {
120             TestHeader5 in = new TestHeader5();
121             String JavaDoc val = new String JavaDoc(TestHeader5.class.getSimpleName());
122             for (int idx = 0; idx < 2; idx++) {
123                 val += idx;
124                 in.setRequestType(val);
125                 TestHeader5 returnVal = proxy.testHeader5(in);
126
127                 //in copied to return
128
assertNotNull(returnVal);
129                 assertEquals(val, returnVal.getRequestType());
130             }
131         } catch (UndeclaredThrowableException JavaDoc ex) {
132             throw (Exception JavaDoc)ex.getCause();
133         }
134     }
135     
136     public static void main(String JavaDoc[] args) {
137         junit.textui.TestRunner.run(HeaderClientServerTest.class);
138     }
139 }
140
Popular Tags