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

📄 rolemanagertest.java

📁 基于java的组号查询模块
💻 JAVA
字号:
/**
 * 
 */
package com.lily.dap.service.right;

import com.lily.dap.model.right.Permission;
import com.lily.dap.model.right.Role;
import com.lily.dap.service.DataSourceManagerTestCase;
import com.lily.dap.service.core.exception.DataContentRepeatException;
import com.lily.dap.service.core.exception.DataHaveIncludeException;
import com.lily.dap.service.core.exception.DataHaveUsedException;
import com.lily.dap.service.core.exception.DataNotExistException;
import com.lily.dap.service.core.exception.DataNotIncludeException;

/**
 * @author zouxuemo
 *
 */
public class RoleManagerTest extends DataSourceManagerTestCase {
	private RoleManager roleManager;
	
    public void onSetUpBeforeTransaction() throws Exception {
    	roleManager = (RoleManager) applicationContext.getBean("roleManager");
    }

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#addPermission(long, java.lang.String, java.lang.String[], java.lang.String)}.
	 */
	public void testAddPermission() {
		Role role = roleManager.createPublicRole("administrator", "系统管理员", "");
		
		Permission permission = roleManager.addPermission(role.getId(), "system", new String[]{"backup", "restore"}, "");
		assertTrue(permission.getId() > 0);
		assertEquals("backup,restore", permission.getRi_ops());
		
		try {
			roleManager.get(Permission.class, new Long(permission.getId()));
		} catch (DataNotExistException e1) {
			fail("建立许可失败");
		}
		
		try {
			roleManager.addPermission(9999, "system", new String[]{"backup", "restore"}, "");
			fail("指定不存在的角色,应该抛出异常失败");
		} catch (DataNotExistException e) {}
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#addHaveRole(long, long)}.
	 */
	public void testAddHaveRole() {
		Role role1 = roleManager.createPublicRole("role1", "角色1", "");
		Role role2 = roleManager.createPublicRole("role2", "角色2", "");
		Role role3 = roleManager.createPublicRole("role3", "角色3", "");
		Role role4 = roleManager.createPublicRole("role4", "角色4", "");
		Role role5 = roleManager.createPublicRole("role5", "角色5", "");
		roleManager.addHaveRole(role1.getId(), role2.getId());
		roleManager.addHaveRole(role2.getId(), role3.getId());
		roleManager.addHaveRole(role3.getId(), role4.getId());
		roleManager.addHaveRole(role3.getId(), role5.getId());
		
		try {
			roleManager.addHaveRole(role1.getId(), 999);
			fail("添加角色包含角色时应该抛出DataNotExistException异常失败");
		} catch (DataNotExistException e) {} catch (DataHaveIncludeException e) {
			fail("不应该触发DataHaveIncludeException异常");
		}

		
		try {
			roleManager.addHaveRole(999, role1.getId());
			fail("添加角色包含角色时应该抛出DataNotExistException异常失败");
		} catch (DataNotExistException e) {} catch (DataHaveIncludeException e) {
			fail("不应该触发DataHaveIncludeException异常");
		}
		
		try {
			roleManager.addHaveRole(role5.getId(), role1.getId());
			fail("添加角色包含角色时应该抛出DataHaveIncludeException异常失败");
		} catch (DataNotExistException e) {
			fail("角色数据不存在");
		} catch (DataHaveIncludeException e) {}
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#removeRole(long)}.
	 */
	public void testRemoveRole() {
		Role role1 = roleManager.createPublicRole("role1", "角色1", "");
		Role role2 = roleManager.createPublicRole("role2", "角色2", "");
		Role role3 = roleManager.createPublicRole("role3", "角色3", "");
		Role role4 = roleManager.createPublicRole("role4", "角色4", "");
		roleManager.addHaveRole(role1.getId(), role2.getId());
		roleManager.addHaveRole(role2.getId(), role3.getId());
		roleManager.addHaveRole(role3.getId(), role4.getId());
		
		roleManager.removeRole(role1.getId());
		
		try {
			roleManager.removeRole(role4.getId());
			fail("应该抛出DataHaveUsedException异常失败");
		} catch (DataHaveUsedException e) {}

		try {
			roleManager.removeRole(999);
			fail("去除角色包含角色时应该抛出DataNotExistException异常失败");
		} catch (DataNotExistException e) {} catch (DataHaveUsedException e) {
			fail("不应该触发DataHaveUsedException异常");
		}
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#removeHaveRole(long, long)}.
	 */
	public void testRemoveHaveRole() {
		Role role1 = roleManager.createPublicRole("role1", "角色1", "");
		Role role2 = roleManager.createPublicRole("role2", "角色2", "");
		Role role3 = roleManager.createPublicRole("role3", "角色3", "");
		Role role4 = roleManager.createPublicRole("role4", "角色4", "");
		Role role5 = roleManager.createPublicRole("role5", "角色5", "");
		roleManager.addHaveRole(role1.getId(), role2.getId());
		roleManager.addHaveRole(role2.getId(), role3.getId());
		roleManager.addHaveRole(role3.getId(), role4.getId());
		
		try {
			roleManager.removeHaveRole(role3.getId(), role5.getId());
			fail("去除角色包含角色时应该抛出DataNotIncludeException异常失败");
		} catch (DataNotExistException e) {
			fail("角色数据不存在");
		} catch (DataNotIncludeException e) {}
		
		try {
			roleManager.removeHaveRole(role3.getId(), role4.getId());
			roleManager.removeHaveRole(role2.getId(), role3.getId());
			roleManager.removeHaveRole(role1.getId(), role2.getId());
		} catch (DataNotExistException e) {
			fail("角色数据不存在");
		} catch (DataNotIncludeException e) {
			fail("不应该触发DataNotIncludeException异常");
		}
		
		try {
			roleManager.removeHaveRole(role1.getId(), 999);
			fail("去除角色包含角色时应该抛出DataNotExistException异常失败");
		} catch (DataNotExistException e) {} catch (DataNotIncludeException e) {
			fail("不应该触发DataNotIncludeException异常");
		}

		try {
			roleManager.removeHaveRole(999, role1.getId());
			fail("去除角色包含角色时应该抛出DataNotExistException异常失败");
		} catch (DataNotExistException e) {} catch (DataNotIncludeException e) {
			fail("不应该触发DataNotIncludeException异常");
		}
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#createPrivateRole(java.lang.String)}.
	 */
	public void testCreatePrivateRole() {
		Role role = roleManager.createPrivateRole("");
		assertTrue(role.getId() > 0);
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#createPublicRole(java.lang.String, java.lang.String, java.lang.String)}.
	 */
	public void testCreatePublicRole() {
		Role role1 = roleManager.createPublicRole("role1", "角色1", "");
		assertTrue(role1.getId() > 0);
		
		try {
			roleManager.createPublicRole("role1", "角色1", "");
			fail("应该抛出DataContentRepeatException异常失败");
		} catch (DataContentRepeatException e) {}
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#fillPermissionFullName(com.lily.dap.model.right.Permission)}.
	 */
	public void testFillPermissionFullNamePermission() {
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#fillPermissionFullName(java.util.Collection)}.
	 */
	public void testFillPermissionFullNameCollection() {
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#getHaveAllPermissions(long)}.
	 */
	public void testGetHaveAllPermissions() {
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#getHaveAllRoles(long)}.
	 */
	public void testGetHaveAllRoles() {
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#getHavePermissions(long)}.
	 */
	public void testGetHavePermissions() {
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#getHavePublicRoles(long)}.
	 */
	public void testGetHavePublicRoles() {
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#getRole(java.lang.String)}.
	 */
	public void testGetRole() {
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#modifyPermission(long, java.lang.String, java.lang.String[], java.lang.String)}.
	 */
	public void testModifyPermission() {
	}

	/**
	 * Test method for {@link com.lily.dap.service.right.impl.RoleManagerImpl#modifyRole(long, java.lang.String, java.lang.String)}.
	 */
	public void testModifyRole() {
	}

}

⌨️ 快捷键说明

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