01_take_many.xml 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?xml version="1.0" ?>
  2. <diagram
  3. xmlns="msdl.uantwerpen.be/sccd"
  4. author="Joeri Exelmans"
  5. name="take_one">
  6. <description>
  7. Take Many-semantics: A big step doesn't end until there are no more enabled transitions.
  8. </description>
  9. <outport name="out"/>
  10. <class name="c" default="true">
  11. <scxml initial="a"
  12. big_step_maximality="take_many"
  13. internal_event_lifeline="queue">
  14. <state id="a">
  15. <onentry>
  16. <raise event="entered_a" port="out"/>
  17. </onentry>
  18. <transition target="../b"/>
  19. </state>
  20. <state id="b">
  21. <onentry>
  22. <raise event="entered_b" port="out"/>
  23. </onentry>
  24. <transition target="../c"/>
  25. </state>
  26. <state id="c">
  27. <onentry>
  28. <raise event="entered_c" port="out"/>
  29. </onentry>
  30. </state>
  31. </scxml>
  32. </class>
  33. <test>
  34. <expected>
  35. <slot>
  36. <!-- initialization -->
  37. <event name="entered_a" port="out"/>
  38. </slot>
  39. <slot>
  40. <!-- big step -->
  41. <event name="entered_b" port="out"/>
  42. <event name="entered_c" port="out"/>
  43. </slot>
  44. </expected>
  45. </test>
  46. </diagram>