package org.activiti.crystalball.simulator.impl; import static org.hamcrest.MatcherAssert.assertThat; import static org.hamcrest.core.Is.is; import org.activiti.engine.impl.test.ResourceActivitiTestCase; import org.activiti.engine.runtime.ProcessInstance; import org.activiti.engine.test.Deployment; /** * This class tests ScriptEventHandler * * @author martin.grofcik */ public class ScriptEventHandlerTest extends ResourceActivitiTestCase { public ScriptEventHandlerTest() { super("org/activiti/crystalball/simulator/impl/ScriptEventHandlerTest.cfg.xml"); } @Deployment public void testSimpleScriptExecution() throws Exception { ProcessInstance simulationExperiment = runtimeService.startProcessInstanceByKey("resultVariableSimulationRun"); // all simulationManager executions are finished assertEquals(1, runtimeService.createExecutionQuery().count()); String simulationRunResult = (String) runtimeService.getVariable(simulationExperiment.getProcessInstanceId(), "simulationRunResult"); // simulation run check - process variable has to be set to the value. assertThat(simulationRunResult, is("Hello world!")); // process end runtimeService.signal(simulationExperiment.getId()); // no process instance is running assertEquals( 0, runtimeService.createExecutionQuery().count()); } }