
testgroup EntryReactionAction for statechart entries.EntryReactionAction {

	/*
	 * Actions on an entry transition should be executed during entering the state machine.
	 */	
	test entryTransitionActionOnStatechartEnter { 
		
		enter		 
		assert enteredR1
		assert enteredR2
		assert enteredBdefault
		assert ! enteredBother
		
	} 
	
	/*
	 * Actions on an entry transition should be executed if it is used during a run to completion step.
	 */
	test entryOnRTS {
		enter
		
		raise b 
		cycle 
		raise d 
		cycle
		
		enteredR1 = false
		enteredR2 = false
		enteredBdefault = false
		enteredBother = false
		raise b
		cycle
		
		assert ! enteredR1
		assert ! enteredR2
		assert ! enteredBdefault
		assert enteredBother		
		
	}
	
	
	/*
	 * Actions on an entry transition should not be executed if be executed when entering 
	 * a region using a history.
	 */
	test noEntryTransitionActionOnHistory {
		
		enter
		
		raise b
		cycle
		raise d
		cycle
		
		enteredR1 = false
		enteredR2 = false
		enteredBdefault = false
		enteredBother = false
		raise d
		cycle
		
		assert ! enteredR1
		assert ! enteredR2
		assert ! enteredBdefault
		assert ! enteredBother		
	}


	
}
	