1   package org.codehaus.xfire;
2   
3   import java.io.ByteArrayOutputStream;
4   
5   import org.codehaus.xfire.fault.Soap12FaultHandler;
6   import org.codehaus.xfire.handler.EchoHandler;
7   import org.codehaus.xfire.service.Service;
8   import org.codehaus.xfire.service.MessageService;
9   import org.codehaus.xfire.soap.Soap12;
10  import org.codehaus.xfire.test.AbstractXFireTest;
11  import org.codehaus.xfire.wsdl.WSDLWriter;
12  import org.dom4j.Document;
13  
14  /***
15   * XFireTest
16   * 
17   * @author <a href="mailto:dan@envoisolutions.com">Dan Diephouse</a>
18   */
19  public class XFireTest
20      extends AbstractXFireTest
21  {
22      
23      public void setUp() throws Exception
24      {
25          super.setUp();
26          
27          MessageService service = new MessageService();
28          service.setName("Echo");
29          service.setSoapVersion(Soap12.getInstance());
30          service.setWSDLURL(getClass().getResource("/org/codehaus/xfire/echo11.wsdl").toString());
31          
32          service.setServiceHandler(new EchoHandler());
33          service.setFaultHandler(new Soap12FaultHandler());
34          
35          getServiceRegistry().register(service);
36      }
37      
38      public void testInvoke()
39          throws Exception
40      {
41          Document response = invokeService( "Echo", "/org/codehaus/xfire/echo11.xml" );
42          
43          addNamespace("m", "urn:Echo");
44          assertValid("//m:echo", response);
45      }
46      
47      public void testWSDL()
48          throws Exception
49      {
50          Service service = (Service) getServiceRegistry().getService("Echo");
51          
52          WSDLWriter wsdl = service.getWSDLWriter();
53          
54          assertNotNull(wsdl);
55          
56          ByteArrayOutputStream out = new ByteArrayOutputStream();
57          getXFire().generateWSDL("Echo", out);
58      }
59  }