1   package org.codehaus.xfire.transport.http;
2   
3   import org.codehaus.xfire.SOAPConstants;
4   import org.codehaus.xfire.fault.SOAP12FaultHandler;
5   import org.codehaus.xfire.service.SimpleService;
6   import com.meterware.httpunit.PostMethodWebRequest;
7   import com.meterware.httpunit.WebRequest;
8   import com.meterware.httpunit.WebResponse;
9   
10  /***
11   * XFireServletTest
12   * 
13   * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a>
14   */
15  public class XFireServletTest
16      extends AbstractServletTest
17  {
18      public void setUp() throws Exception
19      {
20          super.setUp();
21          
22          SimpleService service = new SimpleService();
23          service.setName("Echo");
24          service.setSoapVersion(SOAPConstants.SOAP12_ENVELOPE_NS);
25          service.setWSDLURL(getClass().getResource("/org/codehaus/xfire/echo11.wsdl").toString());
26          
27          service.setServiceHandler(new MockSessionHandler());
28          service.setFaultHandler(new SOAP12FaultHandler());
29          
30          getServiceRegistry().register(service);
31      }
32      
33      public void testServlet() throws Exception
34      {
35          WebResponse response = newClient().getResponse( "http://localhost/services/Echo?wsdl" );
36          
37          System.out.println(response.getText());
38          
39          WebRequest req = new PostMethodWebRequest( "http://localhost/services/Echo",
40                  getClass().getResourceAsStream("/org/codehaus/xfire/echo11.xml"),
41                  "text/xml" );
42  
43          response = newClient().getResponse(req);
44          
45          assertTrue( MockSessionHandler.inSession );
46      }
47  }