packagecxfdemo.test;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.HashSet;importjava.util.List;importjava.util.Map;importjava.util.Set;importjavax.xml.ws.Endpoint;importjunit.framework.Assert;importjunit.framework.TestCase;importorg.apache.cxf.jaxws.JaxWsProxyFactoryBean;importcxfdemo.CXFDemo;importcxfdemo.CXFDemoImpl;importcxfdemo.MyUser;importcxfdemo.User;public class TestEndpoint extendsTestCase {private static final String ADDRESS = "http://localhost:9000/cxfdemo";private staticCXFDemo service;
@Overrideprotected void setUp() throwsException {//TODO Auto-generated method stub
super.setUp();if(null==service){
System.out.println("Starting Server");
CXFDemoImpl demo= newCXFDemoImpl();
Endpoint.publish(ADDRESS, demo);
System.out.println("Start success");
JaxWsProxyFactoryBean factory= newJaxWsProxyFactoryBean();
factory.setServiceClass(CXFDemo.class);
factory.setAddress(ADDRESS);
service=(CXFDemo)factory.create();
}
}public voidtestSayHello(){
Assert.assertEquals(service.sayHello("foo"), "hello foo");
}public voidtestSayHelloToUser(){
User user= newUser();
user.setName("Holbrook");
String result=service.sayHelloToUser(user);
Assert.assertEquals(result,"hello Holbrook");
}public voidtestGetUser(){
User user= service.getUser("Holbrook");
Assert.assertEquals("Holbrook",user.getName());
}public voidtestGetUsers(){
List users =service.getUsers();
Assert.assertEquals(1,users.size());
}public voidtestSetUsers(){
List users = new ArrayList();
users.add(newUser());
users.add(newUser());
users.add(newUser());
Assert.assertEquals(3,service.setUsers(users).intValue());
}public voidtestGetUserSet(){
Set userSet =service.getUserSet();
Assert.assertEquals(2,userSet.size());
}public voidtestSetUserSet(){
Set set = new HashSet();
set.add(newUser());
set.add(newUser());
Assert.assertEquals(2, service.setUserSet(set).intValue());
}public voidtestGetUserMap(){
Map map =service.getUserMap();
Assert.assertTrue(map.containsKey("Holbrook"));
Assert.assertTrue(map.containsKey("wanghaikuo"));
}public voidtestSetUserMap(){
HashMap map = new HashMap();
User user1= newUser();
user1.setName("Holbrook");
map.put("Holbrook", user1);
User user2= newUser();
user2.setName("wanghaikuo");
map.put("wanghaikuo", user2);
Assert.assertEquals(2, service.setUserMap(map).intValue());
}public voidtestAddChild(){
User root= newUser();
root.setName("root");//root.parent = root;
User child= newUser();
child.setName("child");
User parent=service.addChild(root, child);
Assert.assertTrue(parent.children.containsKey("child"));
Assert.assertEquals(parent.children.get("child").parent, parent);
}public voidtestInheritance(){
User parent= newUser();
MyUser child= newMyUser();
child.setName("child");
child.myProp= "subclass Prop";
User root=service.addChild(parent, child);
User newChild= root.children.get("child");
System.out.println(newChildinstanceofMyUser);
System.out.println(((MyUser)newChild).myProp);
}
}