aboutsummaryrefslogtreecommitdiff
path: root/support
diff options
context:
space:
mode:
authorGravatar Ricardo Martincoski <ricardo.martincoski@gmail.com>2018-11-16 01:57:23 -0200
committerGravatar Thomas Petazzoni <thomas.petazzoni@bootlin.com>2018-11-23 22:05:46 +0100
commit66f99555ed29f8f615da85e61ea11d8ad7f159ef (patch)
tree61a539907a616e8d2c7fee258403e6c37174a0ad /support
parent367c0455129ae2b496858884b2432bb5d6ec2e48 (diff)
downloadbuildroot-66f99555ed29f8f615da85e61ea11d8ad7f159ef.tar.gz
buildroot-66f99555ed29f8f615da85e61ea11d8ad7f159ef.tar.bz2
support/testing: add python-automat tests
Use a minimal script to check the basic usage by creating and using a small state machine. Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Diffstat (limited to 'support')
-rw-r--r--support/testing/tests/package/sample_python_automat.py27
-rw-r--r--support/testing/tests/package/test_python_automat.py23
2 files changed, 50 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()
diff --git a/support/testing/tests/package/test_python_automat.py b/support/testing/tests/package/test_python_automat.py
new file mode 100644
index 0000000000..00a7ed6526
--- /dev/null
+++ b/support/testing/tests/package/test_python_automat.py
@@ -0,0 +1,23 @@
+from tests.package.test_python import TestPythonPackageBase
+
+
+class TestPythonPy2Automat(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON=y
+ BR2_PACKAGE_PYTHON_AUTOMAT=y
+ """
+ sample_scripts = ["tests/package/sample_python_automat.py"]
+ timeout = 30
+
+
+class TestPythonPy3Automat(TestPythonPackageBase):
+ __test__ = True
+ config = TestPythonPackageBase.config + \
+ """
+ BR2_PACKAGE_PYTHON3=y
+ BR2_PACKAGE_PYTHON_AUTOMAT=y
+ """
+ sample_scripts = ["tests/package/sample_python_automat.py"]
+ timeout = 30