@Test
public void testRetrigger() throws Exception {
Map<String, Object> parameters = new HashMap<String, Object>();
Long processInstanceId = null;
try {
processInstanceId = processClient.startProcess(CONTAINER_ID, PROCESS_ID_EVALUATION, parameters);
assertNotNull(processInstanceId);
assertTrue(processInstanceId.longValue() > 0);
List<NodeInstance> activeNodeInstances = processAdminClient.getActiveNodeInstances(CONTAINER_ID, processInstanceId);
assertNotNull(activeNodeInstances);
assertEquals(1, activeNodeInstances.size());
NodeInstance active = activeNodeInstances.get(0);
assertEquals("Evaluate items?", active.getName());
processAdminClient.retriggerNodeInstance(CONTAINER_ID, processInstanceId, active.getId());
activeNodeInstances = processAdminClient.getActiveNodeInstances(CONTAINER_ID, processInstanceId);
assertNotNull(activeNodeInstances);
assertEquals(1, activeNodeInstances.size());
NodeInstance activeTriggered = activeNodeInstances.get(0);
assertEquals("Evaluate items?", activeTriggered.getName());
assertFalse(activeTriggered.getId().longValue() == active.getId().longValue());
} finally {
if (processInstanceId != null) {
processClient.abortProcessInstance(CONTAINER_ID, processInstanceId);
}
}
}