package org.jbpm.graph.exe; import org.jbpm.AbstractJbpmTestCase; import org.jbpm.graph.def.ProcessDefinition; public class InitialNodeTest extends AbstractJbpmTestCase { public void testInitialNode() { ProcessDefinition processDefinition = ProcessDefinition.parseXmlString( "<process-definition initial='first'>" + " <state name='first'/>" + "</process-definition>" ); assertEquals("first", processDefinition.getStartState().getName()); ProcessInstance processInstance = new ProcessInstance(processDefinition); assertEquals("first", processInstance.getRootToken().getNode().getName()); } public void testInitialNodeExecution() { ProcessDefinition processDefinition = ProcessDefinition.parseXmlString( "<process-definition initial='first'>" + " <node name='first'>" + " <transition to='next'/>" + " </node>" + " <state name='next'>" + " </state>" + "</process-definition>" ); assertEquals("first", processDefinition.getStartState().getName()); ProcessInstance processInstance = new ProcessInstance(processDefinition); assertEquals("next", processInstance.getRootToken().getNode().getName()); } public void testStartState() { ProcessDefinition processDefinition = ProcessDefinition.parseXmlString( "<process-definition>" + " <start-state name='first'>" + " <transition to='next'/>" + " </start-state >" + " <state name='next'>" + " </state>" + "</process-definition>" ); assertEquals("first", processDefinition.getStartState().getName()); ProcessInstance processInstance = new ProcessInstance(processDefinition); assertEquals("first", processInstance.getRootToken().getNode().getName()); } }