Search in sources :

Example 11 with Status

use of org.kie.api.task.model.Status in project jbpm by kiegroup.

the class TaskQueryServiceBaseTest method testGetTasksByStatusByProcessIdByTaskName.

@Test
public void testGetTasksByStatusByProcessIdByTaskName() {
    // One potential owner, should go straight to state Reserved
    String str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) {processInstanceId = 99 } ), ";
    str += "peopleAssignments = (with ( new PeopleAssignments() ) { potentialOwners = [new User('Bobba Fet')],businessAdministrators = [ new User('Administrator') ], }),";
    str += "name =  'This is my task name' })";
    Task task = TaskFactory.evalTask(new StringReader(str));
    String otherProcessId = "org.process.task.other";
    ((TaskDataImpl) task.getTaskData()).setProcessId(otherProcessId);
    ;
    taskService.addTask(task, new HashMap<String, Object>());
    str = "(with (new Task()) { priority = 55, taskData = (with( new TaskData()) {processInstanceId = 100 } ), ";
    str += "peopleAssignments = (with ( new PeopleAssignments() ) { potentialOwners = [new User('Bobba Fet')],businessAdministrators = [ new User('Administrator') ], }),";
    str += "name =  'Another name' })";
    task = TaskFactory.evalTask(new StringReader(str));
    String processId = "org.process.task.test";
    ((TaskDataImpl) task.getTaskData()).setProcessId(processId);
    taskService.addTask(task, new HashMap<String, Object>());
    List<Status> statuses = new ArrayList<Status>();
    statuses.add(Status.Reserved);
    List<TaskSummary> tasks = taskService.getTasksByStatusByProcessInstanceIdByTaskName(99L, statuses, "This is my task name");
    assertEquals(1, tasks.size());
    tasks = taskService.getTasksAssignedAsPotentialOwnerByProcessId("Bobba Fet", processId);
    assertEquals(1, tasks.size());
    tasks = taskService.getTasksAssignedAsPotentialOwnerByProcessId("Administrator", processId);
    assertEquals(0, tasks.size());
    tasks = taskService.getTasksAssignedAsPotentialOwnerByProcessId("Bobba Fet", otherProcessId);
    assertEquals(1, tasks.size());
    tasks = taskService.getTasksAssignedAsPotentialOwnerByProcessId("Bobba Fet", "bad.process.id");
    assertEquals(0, tasks.size());
}
Also used : Status(org.kie.api.task.model.Status) Task(org.kie.api.task.model.Task) InternalTask(org.kie.internal.task.api.model.InternalTask) StringReader(java.io.StringReader) ArrayList(java.util.ArrayList) TaskSummary(org.kie.api.task.model.TaskSummary) TaskDataImpl(org.jbpm.services.task.impl.model.TaskDataImpl) Test(org.junit.Test)

Example 12 with Status

use of org.kie.api.task.model.Status in project jbpm by kiegroup.

the class TaskQueryServiceBaseTest method testGetTasksOwnedByExpirationDateWithUserStatusDateNoTask.

// getTasksOwnedByExpirationDate(String userId, List<Status> status, Date expirationDate);
@Test
public void testGetTasksOwnedByExpirationDateWithUserStatusDateNoTask() {
    List<Status> statuses = new ArrayList<Status>();
    statuses.add(Status.Created);
    statuses.add(Status.Ready);
    Date date = new Date();
    List<TaskSummary> tasks = taskService.getTasksOwnedByExpirationDate("Darth Vader", statuses, date);
    assertEquals(0, tasks.size());
}
Also used : Status(org.kie.api.task.model.Status) ArrayList(java.util.ArrayList) TaskSummary(org.kie.api.task.model.TaskSummary) Date(java.util.Date) Test(org.junit.Test)

Example 13 with Status

use of org.kie.api.task.model.Status in project jbpm by kiegroup.

the class TaskQueryServiceBaseTest method testGetTasksOwnedByExpirationDateBeforeSpecifiedDateNoTask.

@Test
public void testGetTasksOwnedByExpirationDateBeforeSpecifiedDateNoTask() {
    List<Status> statuses = new ArrayList<Status>();
    statuses.addAll(Arrays.asList(new Status[] { Status.Created, Status.Ready, Status.Reserved, Status.InProgress }));
    List<TaskSummary> tasks = taskService.getTasksOwnedByExpirationDateBeforeSpecifiedDate("Bobba Fet", statuses, new Date(100000005));
    assertEquals("Expecting empty list when no task available!", 0, tasks.size());
}
Also used : Status(org.kie.api.task.model.Status) ArrayList(java.util.ArrayList) TaskSummary(org.kie.api.task.model.TaskSummary) Date(java.util.Date) Test(org.junit.Test)

Example 14 with Status

use of org.kie.api.task.model.Status in project jbpm by kiegroup.

the class EGetTaskTest method testFormName.

@Test
public void testFormName() {
    Map<String, Object> params = new HashMap<>();
    params.put("userName", "johndoe");
    Long pid = ejb.startProcess(ProcessDefinitions.HUMAN_TASK_WITH_FORM, params);
    List<Status> statusList = new ArrayList<>();
    statusList.add(Status.Reserved);
    List<TaskSummary> summaryList = ejb.getTasksByStatusByProcessInstanceId(pid, statusList, new QueryFilter(0, 1));
    Assertions.assertThat(summaryList).isNotNull().isNotEmpty();
    TaskSummary summary = summaryList.get(0);
    Task task = ejb.getTask(summary.getId());
    String formName = ((InternalTask) task).getFormName();
    Assertions.assertThat(formName).as("Expected different form name.").isEqualTo("UserNameInputTask");
}
Also used : Status(org.kie.api.task.model.Status) Task(org.kie.api.task.model.Task) InternalTask(org.kie.internal.task.api.model.InternalTask) HashMap(java.util.HashMap) InternalTask(org.kie.internal.task.api.model.InternalTask) ArrayList(java.util.ArrayList) QueryFilter(org.kie.internal.query.QueryFilter) TaskSummary(org.kie.api.task.model.TaskSummary) RemoteEjbTest(org.jbpm.remote.ejb.test.RemoteEjbTest) Test(org.junit.Test)

Example 15 with Status

use of org.kie.api.task.model.Status in project jbpm by kiegroup.

the class ETaskContentTest method testGetTaskContent.

@Test
public void testGetTaskContent() {
    Map<String, Object> params = new HashMap<>();
    params.put("userName", FIELD_VALUE);
    ProcessInstance pi = ejb.startAndGetProcess(ProcessDefinitions.HUMAN_TASK_WITH_FORM, params);
    Assertions.assertThat(pi).isNotNull();
    Assertions.assertThat(pi.getState()).isEqualTo(ProcessInstance.STATE_ACTIVE);
    List<Status> statusList = new ArrayList<>();
    statusList.add(Status.Reserved);
    List<TaskSummary> ts = ejb.getTasksByStatusByProcessInstanceId(pi.getId(), statusList);
    Assertions.assertThat(ts.size()).isEqualTo(1);
    TaskSummary taskSummary = ts.get(0);
    Assertions.assertThat(taskSummary.getActualOwner().getId()).isEqualTo(userId);
    Map<String, Object> content = ejb.getTaskInputContentByTaskId(taskSummary.getId());
    for (Entry<String, Object> c : content.entrySet()) {
        System.out.println(c.getKey() + " : " + c.getValue());
    }
    Assertions.assertThat(content.get("ActorId")).isEqualTo(userId);
    Assertions.assertThat((String) content.get("inUserName")).isEqualTo(FIELD_VALUE);
}
Also used : Status(org.kie.api.task.model.Status) HashMap(java.util.HashMap) ArrayList(java.util.ArrayList) TaskSummary(org.kie.api.task.model.TaskSummary) ProcessInstance(org.kie.api.runtime.process.ProcessInstance) RemoteEjbTest(org.jbpm.remote.ejb.test.RemoteEjbTest) Test(org.junit.Test)

Aggregations

Status (org.kie.api.task.model.Status)60 ArrayList (java.util.ArrayList)50 TaskSummary (org.kie.api.task.model.TaskSummary)49 Test (org.junit.Test)44 Task (org.kie.api.task.model.Task)19 HashMap (java.util.HashMap)16 ProcessInstance (org.kie.api.runtime.process.ProcessInstance)16 InternalTask (org.kie.internal.task.api.model.InternalTask)16 StringReader (java.io.StringReader)15 KieSession (org.kie.api.runtime.KieSession)14 QueryFilter (org.kie.internal.query.QueryFilter)14 RuntimeEngine (org.kie.api.runtime.manager.RuntimeEngine)10 QueryContext (org.kie.api.runtime.query.QueryContext)10 AbstractKieServicesBaseTest (org.jbpm.kie.test.util.AbstractKieServicesBaseTest)9 Date (java.util.Date)8 ProcessInstanceDesc (org.jbpm.services.api.model.ProcessInstanceDesc)8 TaskService (org.kie.api.task.TaskService)7 List (java.util.List)5 Properties (java.util.Properties)4 JBossUserGroupCallbackImpl (org.jbpm.services.task.identity.JBossUserGroupCallbackImpl)4