support/testing: add python-constantly tests

Add a simple test case to check the basic usage by creating a class with
two constants.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Ricardo Martincoski 2018-11-16 01:57:27 -02:00 committed by Thomas Petazzoni
parent 887248d354
commit 9ee9566640
3 changed files with 42 additions and 0 deletions

View File

@ -330,6 +330,8 @@ tests.package.test_python_cbor.TestPythonPy2Cbor: *runtime_test
tests.package.test_python_cbor.TestPythonPy3Cbor: *runtime_test
tests.package.test_python_click.TestPythonPy2Click: *runtime_test
tests.package.test_python_click.TestPythonPy3Click: *runtime_test
tests.package.test_python_constantly.TestPythonPy2Constantly: *runtime_test
tests.package.test_python_constantly.TestPythonPy3Constantly: *runtime_test
tests.package.test_python_crossbar.TestPythonPy3Crossbar: *runtime_test
tests.package.test_python_cryptography.TestPythonPy2Cryptography: *runtime_test
tests.package.test_python_cryptography.TestPythonPy3Cryptography: *runtime_test

View File

@ -0,0 +1,19 @@
from constantly import ValueConstant, Values
class RESULT(Values):
OK = ValueConstant(0)
FAIL = ValueConstant(-1)
@classmethod
def get(cls, rc):
if rc == 0:
return cls.OK
else:
return cls.FAIL
print(list(RESULT.iterconstants()))
assert(RESULT.OK < RESULT.FAIL)
assert(RESULT.OK.value > RESULT.FAIL.value)
assert(RESULT.get(-5) == RESULT.FAIL)

View File

@ -0,0 +1,21 @@
from tests.package.test_python import TestPythonPackageBase
class TestPythonPy2Constantly(TestPythonPackageBase):
__test__ = True
config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON=y
BR2_PACKAGE_PYTHON_CONSTANTLY=y
"""
sample_scripts = ["tests/package/sample_python_constantly.py"]
class TestPythonPy3Constantly(TestPythonPackageBase):
__test__ = True
config = TestPythonPackageBase.config + \
"""
BR2_PACKAGE_PYTHON3=y
BR2_PACKAGE_PYTHON_CONSTANTLY=y
"""
sample_scripts = ["tests/package/sample_python_constantly.py"]