h1. YAKINDU Statechart Tools – Testcase 03 - Simulation

|_. Nr |_. Testname |_. Test Instructions |_. Postconditions |_. Status|
| 3.1 | Run Configuration | <ol><li><p>Select the _TestProject_ project.<p>Select *Run → Run Configurations…*.</p></li><li><p>Select _Statechart Simulation_.</p></li><li><p>Click on the *New* button (upper left corner).</p></li><li><p>Click on the _Search_ button.</p></li><li><p>Begin to type @Staircase@ into the _Select a resource to open_ field.</p></li><li><p>As soon as _Staircase.sct_ appears, select it.</p></li><li><p>Click on the *OK* button.</p></li><li><p>Click on the *Apply* button to save the settings.</p></li><li><p>Click on the *Run* button to start simulation.</p></li><li><p>In the _Simulation_ view, expand the entries in the _Name_ column.</p></li></ol> | The simulation is started.<p>The _SC Simulation_ perspective is activated.</p><p>State *LightOff* is highlighted (red).</p><p>The _Simulation_ view displays the variable _light_ (value _false_), the _keypress_ event, and the time event.</p> | %{color:red}open% |
| 3.2 | Change the state | Click on the event _keypress_ in the _Simulation_ view. | <ul><li><p>State *LightOff* is dehighlighted.</p></li><li><p>State *LightOn* is highlighted (yellow).</p></li><li><p>The transition from *LightOff* to *LightOn* is colored orange.</p></li><li><p>Variable _light_ is set to true.</p></li><li><p>After 30 seconds state *LightOff* and it's incoming transition become highlighted, while *LightOn* and its incoming transactions become unhighlighted.</p></li><li><p>Variable _light_ is set to _false_.</p></li></ul> | %{color:red}open% |
| 3.3 | Stop the simulation | Click the *Terminate* button (red square) to stop the simulation. | <ul><li><p>The simulation is stopped.</p></li><li><p>No state is highlighted.</p></li><li><p>The perspective has changed from _SC Simulation_ to _SC Modeling_.</p></li></ul> | %{color:red}open% |
| 3.4 | Check transition priorities | <ol><li><p>Make a new transition from *LightOff* to *LightOn*.</p></li><li><p>In _Window → Preferences → YAKINDU SCT → Diagram appearance_ enable _Show transition priority_.</p></li><li><p>Click *OK*.</p></li></ol> | The transitions with *LightOff* as their source state now have little numbers at the start of the transitions arc, indicating their respective priorities. | %{color:red}open% |
| 3.4.1 | Check transition priorities | Delete the transition created in 3.4. | The transition is removed. | %{color:red}open% |
| 3.5 | Start a second simulation | <ol><li><p>Click on the *Run* button twice to start two parallel simulations.</p></li><li><p>Select the first simulation in the _Debug_ view.</p></li><li><p>Click on the *Suspend* button (yellow stripes) at the top of the _Simulation_ view.</p></li><li><p>Select the second simulation in the _Debug_ view.</p></li><li><p>Click the *Terminate* button (red square) at the top of the _Simulation_ view.</p></li><li><p>Reselect the running simulation in the _Debug_ view</p></li><li><p>If the view has changed, open the _Simulation_ view</p></li><li><p>Check if the first simulation is still suspended - *Resume*, *Terminate* and *Skip Over* buttons at the top of the _Simulation_ view are active.</p></li><li><p>Click on the event _keypress_ in the _Simulation_ view.</p></li><li><p>Check if the simulation was not affected by the event</p></li><li><p>Click on the *Step Over* button (yellow arrow)</p></li><li><p>Check if the simulation has cycled one step further and the _keypress_ event has been performed.</p></li><li><p>If there is a timebased outgoing transition from the current active state, wait until the transition would be performed. Check if the transition is not automatically triggered.</p></li><li><p>Click on the *Suspend/Resume* button (yellow/green triangle) to continue the simulation</p></li></ol> | <ul><li><p>The first simulation in the _Debug_ view is resumed and active.</p></li><li><p>The debug states of the first simulation can be changed by interacting with the buttons at the top of the _Simulation_ view.</p></li><li><p>The second simulation in the _Debug_ view is terminated.</p></li><li><p>The debugging actions in the _Simulation_View_ have the same behaviour as the actions in the _Debug_ view.</p></li></ul> | %{color:red}open% |
