Search in sources :

Example 11 with Model

use of org.kie.kogito.Model in project kogito-runtimes by kiegroup.

the class ServiceTaskIT method testServiceProcessDifferentOperationsTaskFromAnotherNode.

@Test
public void testServiceProcessDifferentOperationsTaskFromAnotherNode() throws Exception {
    Application app = generateCodeProcessesOnly("servicetask/ServiceProcessDifferentOperations.bpmn2");
    assertThat(app).isNotNull();
    Process<? extends Model> p = app.get(Processes.class).processById("ServiceProcessDifferentOperations");
    Model m = p.createModel();
    Map<String, Object> parameters = new HashMap<>();
    parameters.put("s", "john");
    m.fromMap(parameters);
    ProcessInstance<?> processInstance = p.createInstance(m);
    processInstance.startFrom("_A1EE8114-BF7B-4DAF-ABD7-62EEDCFAEFD4");
    assertThat(processInstance.startDate()).isNotNull();
    assertThat(processInstance.status()).isEqualTo(ProcessInstance.STATE_COMPLETED);
    Model result = (Model) processInstance.variables();
    assertThat(result.toMap()).hasSize(1).containsKeys("s");
    assertThat(result.toMap().get("s")).isNotNull().isEqualTo("Goodbye john!");
}
Also used : HashMap(java.util.HashMap) Model(org.kie.kogito.Model) Processes(org.kie.kogito.process.Processes) Application(org.kie.kogito.Application) Test(org.junit.jupiter.api.Test)

Example 12 with Model

use of org.kie.kogito.Model in project kogito-runtimes by kiegroup.

the class ServiceTaskIT method testBasicServiceProcessTaskMultiinstance.

@Test
public void testBasicServiceProcessTaskMultiinstance() throws Exception {
    Application app = generateCodeProcessesOnly("servicetask/ServiceProcessMI.bpmn2");
    assertThat(app).isNotNull();
    Process<? extends Model> p = app.get(Processes.class).processById("ServiceProcess");
    List<String> list = new ArrayList<String>();
    list.add("first");
    list.add("second");
    List<String> listOut = new ArrayList<String>();
    Model m = p.createModel();
    Map<String, Object> parameters = new HashMap<>();
    parameters.put("list", list);
    parameters.put("listOut", listOut);
    m.fromMap(parameters);
    ProcessInstance<?> processInstance = p.createInstance(m);
    processInstance.start();
    assertThat(processInstance.status()).isEqualTo(ProcessInstance.STATE_COMPLETED);
    Model result = (Model) processInstance.variables();
    assertThat(result.toMap()).hasSize(3).containsKeys("list", "s", "listOut");
    assertThat((List<String>) result.toMap().get("listOut")).isNotNull().hasSize(2).contains("Hello first!", "Hello second!");
}
Also used : HashMap(java.util.HashMap) ArrayList(java.util.ArrayList) Model(org.kie.kogito.Model) ArrayList(java.util.ArrayList) List(java.util.List) Processes(org.kie.kogito.process.Processes) Application(org.kie.kogito.Application) Test(org.junit.jupiter.api.Test)

Example 13 with Model

use of org.kie.kogito.Model in project kogito-runtimes by kiegroup.

the class ServiceTaskIT method testMultiParamServiceProcessTask.

@Test
public void testMultiParamServiceProcessTask() throws Exception {
    Application app = generateCodeProcessesOnly("servicetask/MultiParamServiceProcess.bpmn2");
    assertThat(app).isNotNull();
    Process<? extends Model> p = app.get(Processes.class).processById("ServiceProcess");
    Model m = p.createModel();
    Map<String, Object> parameters = new HashMap<>();
    parameters.put("s", "john");
    parameters.put("x", "doe");
    parameters.put("l", Collections.singletonList("pepe"));
    m.fromMap(parameters);
    ProcessInstance<?> processInstance = p.createInstance(m);
    processInstance.start();
    assertThat(processInstance.status()).isEqualTo(ProcessInstance.STATE_COMPLETED);
    Model result = (Model) processInstance.variables();
    assertThat(result.toMap()).hasSize(3).containsKeys("s", "x", "l");
    assertThat(result.toMap().get("s")).isNotNull().isEqualTo("Hello (first and lastname) john doe!");
}
Also used : HashMap(java.util.HashMap) Model(org.kie.kogito.Model) Processes(org.kie.kogito.process.Processes) Application(org.kie.kogito.Application) Test(org.junit.jupiter.api.Test)

Example 14 with Model

use of org.kie.kogito.Model in project kogito-runtimes by kiegroup.

the class ServiceTaskIT method testBasicServiceProcessTask.

@Test
public void testBasicServiceProcessTask() throws Exception {
    Application app = generateCodeProcessesOnly("servicetask/ServiceProcess.bpmn2");
    assertThat(app).isNotNull();
    Process<? extends Model> p = app.get(Processes.class).processById("ServiceProcess");
    Model m = p.createModel();
    Map<String, Object> parameters = new HashMap<>();
    parameters.put("s", "john");
    m.fromMap(parameters);
    ProcessInstance<?> processInstance = p.createInstance(m);
    processInstance.start();
    assertThat(processInstance.startDate()).isNotNull();
    assertThat(processInstance.status()).isEqualTo(ProcessInstance.STATE_COMPLETED);
    Model result = (Model) processInstance.variables();
    assertThat(result.toMap()).hasSize(1).containsKeys("s");
    assertThat(result.toMap().get("s")).isNotNull().isEqualTo("Hello john!");
}
Also used : HashMap(java.util.HashMap) Model(org.kie.kogito.Model) Processes(org.kie.kogito.process.Processes) Application(org.kie.kogito.Application) Test(org.junit.jupiter.api.Test)

Example 15 with Model

use of org.kie.kogito.Model in project kogito-runtimes by kiegroup.

the class ServiceTaskIT method testServiceProcessDifferentOperationsTask.

@Test
public void testServiceProcessDifferentOperationsTask() throws Exception {
    Application app = generateCodeProcessesOnly("servicetask/ServiceProcessDifferentOperations.bpmn2");
    assertThat(app).isNotNull();
    Process<? extends Model> p = app.get(Processes.class).processById("ServiceProcessDifferentOperations");
    Model m = p.createModel();
    Map<String, Object> parameters = new HashMap<>();
    parameters.put("s", "john");
    m.fromMap(parameters);
    ProcessInstance<?> processInstance = p.createInstance(m);
    processInstance.start();
    assertThat(processInstance.startDate()).isNotNull();
    assertThat(processInstance.status()).isEqualTo(ProcessInstance.STATE_COMPLETED);
    Model result = (Model) processInstance.variables();
    assertThat(result.toMap()).hasSize(1).containsKeys("s");
    assertThat(result.toMap().get("s")).isNotNull().isEqualTo("Goodbye Hello john!!");
}
Also used : HashMap(java.util.HashMap) Model(org.kie.kogito.Model) Processes(org.kie.kogito.process.Processes) Application(org.kie.kogito.Application) Test(org.junit.jupiter.api.Test)

Aggregations

Model (org.kie.kogito.Model)132 Application (org.kie.kogito.Application)114 Processes (org.kie.kogito.process.Processes)112 HashMap (java.util.HashMap)106 Test (org.junit.jupiter.api.Test)104 List (java.util.List)32 ArrayList (java.util.ArrayList)28 WorkItem (org.kie.kogito.process.WorkItem)28 ParameterizedTest (org.junit.jupiter.params.ParameterizedTest)23 Person (org.kie.kogito.codegen.data.Person)21 ProcessConfig (org.kie.kogito.process.ProcessConfig)15 UnitOfWork (org.kie.kogito.uow.UnitOfWork)14 HumanTaskTransition (org.jbpm.process.instance.impl.humantask.HumanTaskTransition)11 ValueSource (org.junit.jupiter.params.provider.ValueSource)11 DataEvent (org.kie.kogito.event.DataEvent)11 ProcessInstanceDataEvent (org.kie.kogito.services.event.ProcessInstanceDataEvent)11 UserTaskInstanceDataEvent (org.kie.kogito.services.event.UserTaskInstanceDataEvent)11 VariableInstanceDataEvent (org.kie.kogito.services.event.VariableInstanceDataEvent)11 Arrays.asList (java.util.Arrays.asList)10 ProcessInstanceEventBody (org.kie.kogito.services.event.impl.ProcessInstanceEventBody)10