kumquat-buildroot/support/testing/tests/package/test_python_click.py
Ricardo Martincoski 887248d354 support/testing: add python-click tests
Use a simple script to check the basic usage. Since this package
provides command line arguments, override run_sample_scripts to call the
script with arguments and check the expected output.

Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-11-23 22:05:46 +01:00

45 lines
1.4 KiB
Python

from tests.package.test_python import TestPythonPackageBase
class TestPythonClick(TestPythonPackageBase):
sample_scripts = ["tests/package/sample_python_click.py"]
def run_sample_scripts(self):
cmd = self.interpreter + " sample_python_click.py --help"
output, exit_code = self.emulator.run(cmd)
self.assertIn("Usage:", output[0])
self.assertEqual(exit_code, 0)
cmd = self.interpreter + " sample_python_click.py 123"
output, exit_code = self.emulator.run(cmd)
self.assertEqual(output[0], "123, False")
self.assertEqual(exit_code, 0)
cmd = self.interpreter + " sample_python_click.py --bar 456"
output, exit_code = self.emulator.run(cmd)
self.assertEqual(output[0], "456, True")
self.assertEqual(exit_code, 0)
cmd = self.interpreter + " sample_python_click.py"
output, exit_code = self.emulator.run(cmd)
self.assertIn("Usage:", output[0])
self.assertEqual(exit_code, 2)
class TestPythonPy2Click(TestPythonClick):
__test__ = True
config = TestPythonClick.config + \
"""
BR2_PACKAGE_PYTHON=y
BR2_PACKAGE_PYTHON_CLICK=y
"""
class TestPythonPy3Click(TestPythonClick):
__test__ = True
config = TestPythonClick.config + \
"""
BR2_PACKAGE_PYTHON3=y
BR2_PACKAGE_PYTHON_CLICK=y
"""