summaryrefslogtreecommitdiffstats
path: root/support/testing/tests/package/sample_python_automat.py
diff options
context:
space:
mode:
Diffstat (limited to 'support/testing/tests/package/sample_python_automat.py')
-rw-r--r--support/testing/tests/package/sample_python_automat.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/support/testing/tests/package/sample_python_automat.py b/support/testing/tests/package/sample_python_automat.py
new file mode 100644
index 0000000000..baf536f993
--- /dev/null
+++ b/support/testing/tests/package/sample_python_automat.py
@@ -0,0 +1,27 @@
+from automat import MethodicalMachine
+
+
+class Led(object):
+ _machine = MethodicalMachine()
+
+ @_machine.state()
+ def led_on(self):
+ "led is on"
+
+ @_machine.state(initial=True)
+ def led_off(self):
+ "led is off"
+
+ @_machine.input()
+ def turn_on(self):
+ "turn the led on"
+
+ @_machine.output()
+ def _light(self):
+ print("light")
+
+ led_off.upon(turn_on, enter=led_on, outputs=[_light])
+
+
+led = Led()
+led.turn_on()
OpenPOWER on IntegriCloud