1from tests.package.test_python import TestPythonPackageBase
2
3
4class TestPythonClick(TestPythonPackageBase):
5    sample_scripts = ["tests/package/sample_python_click.py"]
6
7    def run_sample_scripts(self):
8        cmd = self.interpreter + " sample_python_click.py --help"
9        output, exit_code = self.emulator.run(cmd)
10        self.assertIn("Usage:", output[0])
11        self.assertEqual(exit_code, 0)
12
13        cmd = self.interpreter + " sample_python_click.py 123"
14        output, exit_code = self.emulator.run(cmd)
15        self.assertEqual(output[0], "123, False")
16        self.assertEqual(exit_code, 0)
17
18        cmd = self.interpreter + " sample_python_click.py --bar 456"
19        output, exit_code = self.emulator.run(cmd)
20        self.assertEqual(output[0], "456, True")
21        self.assertEqual(exit_code, 0)
22
23        cmd = self.interpreter + " sample_python_click.py"
24        output, exit_code = self.emulator.run(cmd)
25        self.assertIn("Usage:", output[0])
26        self.assertEqual(exit_code, 2)
27
28
29class TestPythonPy3Click(TestPythonClick):
30    __test__ = True
31    config = TestPythonClick.config + \
32        """
33        BR2_PACKAGE_PYTHON3=y
34        BR2_PACKAGE_PYTHON_CLICK=y
35        """
36