test_expressions.xml 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?xml version="1.0" ?>
  2. <test>
  3. <statechart>
  4. <!-- after events are always received as input events in a later big step -->
  5. <semantics
  6. big_step_maximality="take_many"
  7. combo_step_maximality="*"/>
  8. <tree>
  9. <state initial="comparisons">
  10. <state id="comparisons" initial="s1">
  11. <state id="s1">
  12. <transition cond="1 == 1" target="../s2"/>
  13. </state>
  14. <state id="s2">
  15. <transition cond="1 != 2" target="../s3"/>
  16. </state>
  17. <state id="s3">
  18. <transition cond="1 &lt; 2" target="../s4"/>
  19. </state>
  20. <state id="s4">
  21. <transition cond="2 &gt; 1" target="../s5"/>
  22. </state>
  23. <state id="s5">
  24. <transition target="/arithmetic"/>
  25. </state>
  26. </state>
  27. <state id="arithmetic" initial="s1">
  28. <state id="s1">
  29. <transition cond="1 + 1 == 2" target="../s2"/>
  30. </state>
  31. <state id="s2">
  32. <transition cond="42 == 52 - 11 + 1" target="../s3"/>
  33. </state>
  34. <state id="s3">
  35. <transition cond="2 * 3 == 6" target="../s4"/>
  36. </state>
  37. <state id="s4">
  38. <transition cond="21 / 3 == 7" target="../s5"/>
  39. </state>
  40. <state id="s5">
  41. <transition cond="256 == 2 ** 2 ** 3" target="../s6"/>
  42. </state>
  43. <state id="s6">
  44. <transition cond="5 % 2 == 1" target="../s7"/>
  45. </state>
  46. <state id="s7">
  47. <transition target="/boolean_logic"/>
  48. </state>
  49. </state>
  50. <state id="boolean_logic" initial="s1">
  51. <state id="s1">
  52. <transition cond="True" target="../s2"/>
  53. </state>
  54. <state id="s2">
  55. <transition cond="False or True" target="../s3"/>
  56. </state>
  57. <state id="s3">
  58. <transition cond="True and not False" target="../s4"/>
  59. </state>
  60. <state id="s4">
  61. <transition cond="not ((False or True) and False)" target="../s5"/>
  62. </state>
  63. <state id="s5">
  64. <transition target="/final"/>
  65. </state>
  66. </state>
  67. <state id="final">
  68. <onentry>
  69. <raise event="all_good" port="out"/>
  70. </onentry>
  71. </state>
  72. </state>
  73. </tree>
  74. </statechart>
  75. <output>
  76. <big_step>
  77. <event name="all_good" port="out"/>
  78. </big_step>
  79. </output>
  80. </test>