package org.exitsoft.showcase.vcsadmin.test.manager.account; import static org.junit.Assert.assertEquals; import java.util.ArrayList; import java.util.List; import org.exitsoft.orm.core.Page; import org.exitsoft.orm.core.PageRequest; import org.exitsoft.orm.core.PropertyFilter; import org.exitsoft.orm.core.hibernate.property.PropertyFilterRestrictionHolder; import org.exitsoft.showcase.vcsadmin.common.enumeration.entity.State; import org.exitsoft.showcase.vcsadmin.entity.account.User; import org.exitsoft.showcase.vcsadmin.service.ServiceException; import org.exitsoft.showcase.vcsadmin.service.account.AccountManager; import org.exitsoft.showcase.vcsadmin.unit.ManagerTestCaseSuper; import org.junit.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.transaction.annotation.Transactional; /** * 测试用户管理所有方法 * * @author vincent * */ public class TestUserManager extends ManagerTestCaseSuper{ @Autowired private AccountManager accountManager; @Test(expected = ServiceException.class) public void testInsertUser() { User entity = new User(); entity.setEmail("27637461@qq.com"); entity.setPassword("123456"); entity.setRealname("vincent"); entity.setState(State.Enable.getValue()); entity.setUsername("vincent"); int beforeRow = countRowsInTable("tb_user"); accountManager.insertUser(entity); int afterRow = countRowsInTable("tb_user"); assertEquals(afterRow, beforeRow + 1); entity = new User(); entity.setUsername("admin"); accountManager.insertUser(entity); } @Test @Transactional public void testUpdateUser() { User user = accountManager.getUser("SJDK3849CKMS3849DJCK2039ZMSK0001"); user.setUsername("other"); user.setRealname("小"); accountManager.updateUser(user); sessionFactory.getCurrentSession().flush(); sessionFactory.getCurrentSession().clear(); user = null; user = accountManager.getUser("SJDK3849CKMS3849DJCK2039ZMSK0001"); assertEquals(user.getUsername(), "admin"); assertEquals(user.getRealname(), "小"); } @Test public void testDeleteUsers() { List<String> ids = new ArrayList<String>(); ids.add("SJDK3849CKMS3849DJCK2039ZMSK0001"); int beforeRow = countRowsInTable("tb_user"); accountManager.deleteUsers(ids); int afterRow = countRowsInTable("tb_user"); assertEquals(afterRow, beforeRow - 1); } @Test public void testSearchUserPage() { PageRequest request = new PageRequest(1,1); List<PropertyFilter> filters = new ArrayList<PropertyFilter>(); filters.add(PropertyFilterRestrictionHolder.createPropertyFilter("EQ_I_state", "1")); Page<User> page = accountManager.searchUserPage(request, filters); assertEquals(page.getResult().size(), 1); assertEquals(page.getTotalItems(), 2); assertEquals(page.getTotalPages(), 2); } }