📄 userservicetest.java
字号:
package com.test.bbs.service;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import junit.framework.TestCase;
import com.test.bbs.dao.UserDao;
import com.test.bbs.domain.User;
import com.test.bbs.exception.ServiceException;
import com.test.bbs.service.impl.UserServiceImpl;
public class UserServiceTest extends TestCase {
UserService userService = new UserServiceImpl(new UserDaoMock());
@Override
protected void setUp() throws Exception {
User user = new User();
user.setLogonName("logonName1");
user.setNickName("nickName1");
user.setPassword("password1");
user.setRegistDate(new Date());
userService.regist(user);
user = new User();
user.setLogonName("logonName2");
user.setNickName("nickName2");
user.setPassword("password2");
user.setRegistDate(new Date());
userService.regist(user);
}
@Override
protected void tearDown() throws Exception {
// TODO Auto-generated method stub
super.tearDown();
}
public void testLogin() {
User user = this.userService.login("logonName1", "password1");
assertNotNull(user);
try {
user = this.userService.login("logonName1", "password2");
fail("error");
} catch (ServiceException e) {
// ok
}
}
public void testRegist() {
User user = new User();
user.setLogonName("logonName3");
user.setNickName("nickName3");
user.setPassword("password3");
user.setRegistDate(new Date());
userService.regist(user);
assertTrue(user.getId() > 0);
user = new User();
user.setLogonName("logonName3");
user.setNickName("nickName3");
user.setPassword("password3");
user.setRegistDate(new Date());
try {
userService.regist(user);
fail("error");
} catch (ServiceException e) {
// ok
}
}
public void testGetUser() {
User user = this.userService.getUser(1);
assertNotNull(user);
user = this.userService.getUser(100);
assertNull(user);
}
public void testUpdate() {
User user = this.userService.getUser(1);
user.setNickName("new nickName");
this.userService.update(user, user);
user = this.userService.getUser(1);
assertEquals("new nickName", user.getNickName());
}
}
class UserDaoMock implements UserDao {
private Map datas = new HashMap();
private int id = 0;
public void addUser(User user) {
user.setId(++id);
datas.put(user.getId(), user);
}
public User findUserById(Integer id) {
return (User) datas.get(id);
}
public User findUserByLogonName(String logonName) {
for (Iterator iter = datas.keySet().iterator(); iter.hasNext();) {
Integer id = (Integer) iter.next();
User u = (User) datas.get(id);
if (logonName.equals(u.getLogonName()))
return u;
}
return null;
}
public User findUserByLogonNameAndPassword(String logonName, String password) {
for (Iterator iter = datas.keySet().iterator(); iter.hasNext();) {
Integer id = (Integer) iter.next();
User u = (User) datas.get(id);
if (logonName.equals(u.getLogonName())
&& password.equals(u.getPassword()))
return u;
}
return null;
}
public void update(User user) {
datas.put(user.getId(), user);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -