package com.norteksoft.wf.unit; import org.junit.Assert; import org.junit.Test; import org.unitils.database.annotations.Transactional; import org.unitils.database.util.TransactionMode; import org.unitils.spring.annotation.SpringApplicationContext; import org.unitils.spring.annotation.SpringBeanByName; import com.norteksoft.ems.entity.ExpenseReport; import com.norteksoft.ems.service.ExpenseReportManager; import com.norteksoft.product.api.ApiFactory; import com.norteksoft.product.api.entity.TaskPermission; import com.norteksoft.product.api.entity.WorkflowTask; import com.norteksoft.product.util.ParameterUtils; /** * 任务权限api部署测试 * @author Administrator * */ @Transactional(TransactionMode.ROLLBACK) @SpringApplicationContext({"applicationContext-test.xml","applicationContext-memcache.xml"}) public class WorkflowPermissionServiceTest extends BaseWorkflowTestCase{ @SpringBeanByName ExpenseReportManager expenseReportManager; @Test public void getActivityPermissionOne(){ // 准备数据 deploy("wf_test_8.xml"); ParameterUtils.setParameters(getPrmt(1L, 65L, "test2", "test2")); ExpenseReport dp = new ExpenseReport(); dp.setCompanyId(1L); expenseReportManager.save(dp); // 提交第一环节任务 ApiFactory.getInstanceService().submitInstance("wf_test_8", dp); WorkflowTask task=ApiFactory.getTaskService().getActiveTaskByLoginName(dp,"test2"); Assert.assertNotNull(task); //获得当前任务的所有权限 TaskPermission tp=ApiFactory.getPermissionService().getActivityPermission(task.getId()); //该环节有创建正文的权限 Assert.assertTrue(tp.getDocumentCreateable()); } @Test public void getActivityPermissionTwo(){ // 准备数据 deploy("wf_test_8.xml"); ParameterUtils.setParameters(getPrmt(1L, 65L, "test2", "test2")); ExpenseReport dp = new ExpenseReport(); dp.setCompanyId(1L); expenseReportManager.save(dp); //获得启用最高版本的流程还未发起时第一环节的所有权限 TaskPermission tp=ApiFactory.getPermissionService().getActivityPermission("wf_test_8"); //该环节有创建正文的权限 Assert.assertTrue(tp.getDocumentCreateable()); } @Test public void getActivityPermissionThree(){ // 准备数据 deploy("wf_test_8.xml"); ParameterUtils.setParameters(getPrmt(1L, 65L, "test2", "test2")); ExpenseReport dp = new ExpenseReport(); dp.setCompanyId(1L); expenseReportManager.save(dp); //获得流程还未发起时第一环节的所有权限 TaskPermission tp=ApiFactory.getPermissionService().getActivityPermission("wf_test_8",1); //该环节有创建正文的权限 Assert.assertTrue(tp.getDocumentCreateable()); } @Test public void getDocumentPermission(){ // 准备数据 deploy("wf_test_8.xml"); ParameterUtils.setParameters(getPrmt(1L, 65L, "test2", "test2")); ExpenseReport dp = new ExpenseReport(); dp.setCompanyId(1L); expenseReportManager.save(dp); // 提交第一环节任务 ApiFactory.getInstanceService().submitInstance("wf_test_8", dp); WorkflowTask task=ApiFactory.getTaskService().getActiveTaskByLoginName(dp,"test2"); Assert.assertNotNull(task); //根据当前任务获得环节办理人的正文权限 String documentPermission=ApiFactory.getPermissionService().getDocumentPermission(task.getId()); Assert.assertNotNull(documentPermission); } }