You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
80 lines
4.4 KiB
80 lines
4.4 KiB
5 years ago
|
package com.fanruan.api.decision;
|
||
|
|
||
|
import com.fr.decision.authority.AuthorityContext;
|
||
|
import com.fr.decision.authority.controller.ConnectionAuthorityController;
|
||
|
import com.fr.decision.authority.controller.CustomRoleController;
|
||
|
import com.fr.decision.authority.controller.DefaultAuthorityController;
|
||
|
import com.fr.decision.authority.controller.DepartmentController;
|
||
|
import com.fr.decision.authority.controller.PostController;
|
||
|
import com.fr.decision.authority.controller.UserController;
|
||
|
import com.fr.decision.authorize.AuthorizeAttr;
|
||
|
import com.fr.decision.config.FSConfig;
|
||
|
import org.easymock.EasyMock;
|
||
|
import org.junit.Assert;
|
||
|
import org.junit.Test;
|
||
|
import org.junit.runner.RunWith;
|
||
|
import org.powermock.api.easymock.PowerMock;
|
||
|
import org.powermock.core.classloader.annotations.PrepareForTest;
|
||
|
import org.powermock.modules.junit4.PowerMockRunner;
|
||
|
|
||
|
/**
|
||
|
* @author lidongy
|
||
|
* @version 10.0
|
||
|
* Created by lidongy on 2020/6/29
|
||
|
*/
|
||
|
@RunWith(PowerMockRunner.class)
|
||
|
@PrepareForTest({FSConfig.class, AuthorityContext.class})
|
||
|
public class AuthorityKitTest {
|
||
|
|
||
|
@Test
|
||
|
public void testIsAuthorizeAttrOpen() {
|
||
|
AuthorizeAttr authorizeAttr = EasyMock.createMock(AuthorizeAttr.class);
|
||
|
EasyMock.expect(authorizeAttr.isGradeAuthority()).andReturn(true).anyTimes();
|
||
|
EasyMock.expect(authorizeAttr.isDataConnectionAuthority()).andReturn(true).anyTimes();
|
||
|
EasyMock.expect(authorizeAttr.isEditReportAuthority()).andReturn(true).anyTimes();
|
||
|
EasyMock.replay(authorizeAttr);
|
||
|
|
||
|
FSConfig fsConfig = EasyMock.createMock(FSConfig.class);
|
||
|
EasyMock.expect(fsConfig.getAuthorizeAttr()).andReturn(authorizeAttr).anyTimes();
|
||
|
EasyMock.replay(fsConfig);
|
||
|
|
||
|
PowerMock.mockStatic(FSConfig.class);
|
||
|
EasyMock.expect(FSConfig.getInstance()).andReturn(fsConfig).anyTimes();
|
||
|
PowerMock.replay(FSConfig.class);
|
||
|
|
||
|
Assert.assertEquals(AuthorityKit.isGradeAuthority(), FSConfig.getInstance().getAuthorizeAttr().isGradeAuthority());
|
||
|
Assert.assertEquals(AuthorityKit.isDataConnectionAuthority(), FSConfig.getInstance().getAuthorizeAttr().isDataConnectionAuthority());
|
||
|
Assert.assertEquals(AuthorityKit.isEditReportAuthority(), FSConfig.getInstance().getAuthorizeAttr().isEditReportAuthority());
|
||
|
}
|
||
|
|
||
|
@Test
|
||
|
public void testGetController() throws Exception {
|
||
|
DefaultAuthorityController defaultAuthorityController = EasyMock.createMock(DefaultAuthorityController.class);
|
||
|
CustomRoleController customRoleController = EasyMock.createMock(CustomRoleController.class);
|
||
|
DepartmentController departmentController = EasyMock.createMock(DepartmentController.class);
|
||
|
PostController postController = EasyMock.createMock(PostController.class);
|
||
|
UserController userController = EasyMock.createMock(UserController.class);
|
||
|
ConnectionAuthorityController connectionAuthorityController = EasyMock.createMock(ConnectionAuthorityController.class);
|
||
|
|
||
|
AuthorityContext authorityContext = EasyMock.createMock(AuthorityContext.class);
|
||
|
EasyMock.expect(authorityContext.getAuthorityController()).andReturn(defaultAuthorityController).anyTimes();
|
||
|
EasyMock.expect(authorityContext.getCustomRoleController()).andReturn(customRoleController).anyTimes();
|
||
|
EasyMock.expect(authorityContext.getDepartmentController()).andReturn(departmentController).anyTimes();
|
||
|
EasyMock.expect(authorityContext.getPostController()).andReturn(postController).anyTimes();
|
||
|
EasyMock.expect(authorityContext.getUserController()).andReturn(userController).anyTimes();
|
||
|
EasyMock.expect(authorityContext.getAuthorityController(ConnectionAuthorityController.class)).andReturn(connectionAuthorityController).anyTimes();
|
||
|
EasyMock.replay(authorityContext);
|
||
|
|
||
|
PowerMock.mockStatic(AuthorityContext.class);
|
||
|
EasyMock.expect(AuthorityContext.getInstance()).andReturn(authorityContext).anyTimes();
|
||
|
PowerMock.replay(AuthorityContext.class);
|
||
|
|
||
|
Assert.assertEquals(AuthorityKit.getAuthorityController(), defaultAuthorityController);
|
||
|
Assert.assertEquals(AuthorityKit.getCustomRoleController(), customRoleController);
|
||
|
Assert.assertEquals(AuthorityKit.getDepartmentController(), departmentController);
|
||
|
Assert.assertEquals(AuthorityKit.getPostController(), postController);
|
||
|
Assert.assertEquals(AuthorityKit.getUserController(), userController);
|
||
|
Assert.assertEquals(AuthorityKit.getAuthorityController(ConnectionAuthorityController.class), connectionAuthorityController);
|
||
|
}
|
||
|
}
|