1 package tests.jfun.yan.xfire; 2 3 4 import java.io.IOException ; 5 6 import jfun.util.ClassLoaderUtils; 7 import jfun.yan.Container; 8 import jfun.yan.xml.NutsProcessor; 9 import junit.framework.TestSuite; 10 11 import org.codehaus.xfire.XFire; 12 import org.codehaus.xfire.aegis.AbstractXFireAegisTest; 13 import org.codehaus.xfire.service.Service; 14 import org.codehaus.xfire.service.ServiceFactory; 15 import org.codehaus.xfire.service.ServiceRegistry; 16 17 public class EchoServiceTestCase 18 extends AbstractXFireAegisTest 19 { 20 public static TestSuite suite(){ 21 return new TestSuite(EchoServiceTestCase.class); 22 } 23 private Container yan; 24 public void setUp() 25 throws Exception 26 { 27 yan = createContainer(); 28 29 super.setUp(); 30 } 31 32 33 protected Container getContainer() 34 { 35 return yan; 36 } 37 38 public ServiceFactory getServiceFactory() 39 { 40 return (ServiceFactory) yan.getInstance("xfire.serviceFactory"); 41 } 42 43 protected XFire getXFire() 44 { 45 return (XFire) yan.getInstance("xfire"); 46 } 47 48 protected Object getInstance(String id) 49 { 50 return yan.getInstance(id); 51 } 52 public void testXfireIntegration() 53 throws Exception 54 { 55 Container yan = getContainer(); 56 57 assertNotNull(yan.getInstance("xfire.serviceFactory")); 58 Service service = (Service)yan.getInstance("echo"); 59 assertNotNull(service); 60 assertEquals(org.codehaus.xfire.test.Echo.class, 61 service.getServiceInfo().getServiceClass()); 62 assertEquals("echo", service.getName().getLocalPart()); 63 ServiceRegistry reg = (ServiceRegistry) yan.getInstance("xfire.serviceRegistry"); 64 } 65 66 67 protected Container createContainer() 68 throws IOException { 69 NutsProcessor processor = new NutsProcessor( 70 ClassLoaderUtils.guessClassLoader(getClass().getClassLoader())); 71 processor.processResource("jfun/yan/xfire/xfireXmlBeans.xml"); 72 processor.processResource("tests/jfun/yan/xfire/echo.xml"); 73 processor.preInstantiate(); 74 return processor.getContainer(); 75 } 76 } | Popular Tags |