multiple_target.xml 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <?xml version="1.0" ?>
  2. <diagram author="Glenn De Jonghe" name="TestMultipleTarget">
  3. <description>
  4. Testing the enter-exit sequence when having a transition that specificies a target state with multiple nodes.
  5. </description>
  6. <inport name="test_input" />
  7. <outport name="test_output" />
  8. <class name="Class1" default="true">
  9. <scxml initial="next_to_parallel">
  10. <parallel id="parallel">
  11. <state id="orthogonal_1" initial="inner_1">
  12. <state id="inner_1">
  13. <onentry>
  14. <raise port="test_output" event="enter_1_1" />
  15. </onentry>
  16. </state>
  17. <state id="inner_2">
  18. <onentry>
  19. <raise port="test_output" event="enter_1_2" />
  20. </onentry>
  21. </state>
  22. </state>
  23. <state id="orthogonal_2" initial="inner_1">
  24. <state id="inner_1">
  25. <onentry>
  26. <raise port="test_output" event="enter_2_1" />
  27. </onentry>
  28. </state>
  29. <state id="inner_2">
  30. <onentry>
  31. <raise port="test_output" event="enter_2_2" />
  32. </onentry>
  33. </state>
  34. </state>
  35. </parallel>
  36. <state id="next_to_parallel">
  37. <onentry>
  38. <raise port="test_output" event="enter_0" />
  39. </onentry>
  40. <transition target="../parallel/(orthogonal_1/inner_2,orthogonal_2/inner_2)"/>
  41. </state>
  42. </scxml>
  43. </class>
  44. <test>
  45. <expected>
  46. <slot>
  47. <event name="enter_0" port="test_output"/>
  48. </slot>
  49. <slot>
  50. <event name="enter_1_2" port="test_output"/>
  51. <event name="enter_2_2" port="test_output"/>
  52. </slot>
  53. </expected>
  54. </test>
  55. </diagram>