package org.jbpm.scheduler.exe; import org.jbpm.db.AbstractDbTestCase; import org.jbpm.graph.def.ProcessDefinition; import org.jbpm.graph.exe.ProcessInstance; public class UnsafeSessionUsageTest extends AbstractDbTestCase { public void testTimerRepeat() { ProcessDefinition processDefinition = ProcessDefinition.parseXmlString("<process-definition name='" + getName() + "'>" + " <start-state>" + " <transition to='a' />" + " </start-state>" + " <state name='a'>" + " <timer name='reminder' duedate='0 seconds' >" + " <action class='org.jbpm.scheduler.exe.TimerDbTest$NoOp' />" + " </timer>" + " <transition to='b'/>" + " <transition name='back' to='a'/>" + " </state>" + " <state name='b'/>" + "</process-definition>"); deployProcessDefinition(processDefinition); ProcessInstance processInstance = new ProcessInstance(processDefinition); processInstance.signal(); jbpmContext.save(processInstance); processJobs(); processInstance = graphSession.loadProcessInstance(processInstance.getId()); assertEquals("a", processInstance.getRootToken().getNode().getName()); } }