⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 usermanagertest.java

📁 SpringSide开源代码
💻 JAVA
字号:
package org.springside.examples.miniservice.integration.service.user;

import org.apache.commons.lang.RandomStringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.annotation.ExpectedException;
import org.springside.examples.miniservice.entity.user.Role;
import org.springside.examples.miniservice.entity.user.User;
import org.springside.examples.miniservice.service.user.UserManager;
import org.springside.modules.test.SpringTransactionalTestCase;

/**
 * UserManager的集成测试用例.
 * 
 * 调用实际的DAO类进行操作,默认在操作后进行回滚.
 * 
 * @author calvin
 */
public class UserManagerTest extends SpringTransactionalTestCase {

	@Autowired
	private UserManager userManager;

	public void testCRUD() {

		User entity = new User();
		// 因为LoginName要求唯一性,因此添加random字段。
		entity.setLoginName("tester" + RandomStringUtils.randomAlphabetic(5));
		entity.setName("foo");
		entity.setEmail("foo@bar.com");
		entity.setPassword("foo");
		userManager.saveUser(entity);
		flush();
		assertNotNull(entity.getId());

		userManager.deleteUser(entity);
		flush();
	}

	public void testUserRoles() {
		//保存带角色的用户并验证
		User entity = new User();
		entity.setLoginName("tester" + RandomStringUtils.randomAlphabetic(5));

		Role role = new Role();
		role.setId(1L);
		entity.getRoles().add(role);
		userManager.saveUser(entity);
		flush();
		entity = userManager.getUser(entity.getId());
		assertEquals(1, entity.getRoles().size());

		//删除角色并验证
		entity.getRoles().remove(role);
		flush();
		entity = userManager.getUser(entity.getId());
		assertEquals(0, entity.getRoles().size());
	}

	@ExpectedException(value = org.hibernate.exception.ConstraintViolationException.class)
	public void testSavenEntityNotUnique() {
		User entity = new User();
		entity.setLoginName("admin");
		userManager.saveUser(entity);
		flush();
	}

	public void testAuth() {
		assertTrue(userManager.auth("admin", "admin"));
		assertFalse(userManager.auth("admin", ""));
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -