diff options
-rw-r--r-- | meta/classes/testimage.bbclass | 4 | ||||
-rw-r--r-- | meta/lib/oeqa/runtime/files/test.py | 6 | ||||
-rw-r--r-- | meta/lib/oeqa/runtime/python.py | 33 |
3 files changed, 41 insertions, 2 deletions
diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass index 1161e593dc..4777e140dc 100644 --- a/meta/classes/testimage.bbclass +++ b/meta/classes/testimage.bbclass | |||
@@ -27,8 +27,8 @@ TEST_LOG_DIR ?= "${WORKDIR}/testimage" | |||
27 | 27 | ||
28 | DEFAULT_TEST_SUITES = "ping auto" | 28 | DEFAULT_TEST_SUITES = "ping auto" |
29 | DEFAULT_TEST_SUITES_pn-core-image-minimal = "ping" | 29 | DEFAULT_TEST_SUITES_pn-core-image-minimal = "ping" |
30 | DEFAULT_TEST_SUITES_pn-core-image-sato = "ping ssh df connman syslog xorg scp vnc date rpm smart dmesg" | 30 | DEFAULT_TEST_SUITES_pn-core-image-sato = "ping ssh df connman syslog xorg scp vnc date rpm smart dmesg python" |
31 | DEFAULT_TEST_SUITES_pn-core-image-sato-sdk = "ping ssh df connman syslog xorg scp vnc date perl ldd gcc rpm smart kernelmodule dmesg" | 31 | DEFAULT_TEST_SUITES_pn-core-image-sato-sdk = "ping ssh df connman syslog xorg scp vnc date perl ldd gcc rpm smart kernelmodule dmesg python" |
32 | 32 | ||
33 | TEST_SUITES ?= "${DEFAULT_TEST_SUITES}" | 33 | TEST_SUITES ?= "${DEFAULT_TEST_SUITES}" |
34 | 34 | ||
diff --git a/meta/lib/oeqa/runtime/files/test.py b/meta/lib/oeqa/runtime/files/test.py new file mode 100644 index 0000000000..f3a2273c52 --- /dev/null +++ b/meta/lib/oeqa/runtime/files/test.py | |||
@@ -0,0 +1,6 @@ | |||
1 | import os | ||
2 | |||
3 | os.system('touch /tmp/testfile.python') | ||
4 | |||
5 | a = 9.01e+21 - 9.01e+21 + 0.01 | ||
6 | print "the value of a is %s" % a | ||
diff --git a/meta/lib/oeqa/runtime/python.py b/meta/lib/oeqa/runtime/python.py new file mode 100644 index 0000000000..c037ab2c18 --- /dev/null +++ b/meta/lib/oeqa/runtime/python.py | |||
@@ -0,0 +1,33 @@ | |||
1 | import unittest | ||
2 | import os | ||
3 | from oeqa.oetest import oeRuntimeTest, skipModule | ||
4 | from oeqa.utils.decorators import * | ||
5 | |||
6 | def setUpModule(): | ||
7 | if not oeRuntimeTest.hasPackage("python"): | ||
8 | skipModule("No python package in the image") | ||
9 | |||
10 | |||
11 | class PythonTest(oeRuntimeTest): | ||
12 | |||
13 | @classmethod | ||
14 | def setUpClass(self): | ||
15 | oeRuntimeTest.tc.target.copy_to(os.path.join(oeRuntimeTest.tc.filesdir, "test.py"), "/tmp/test.py") | ||
16 | |||
17 | def test_python_exists(self): | ||
18 | (status, output) = self.target.run('which python') | ||
19 | self.assertEqual(status, 0, msg="Python binary not in PATH or not on target.") | ||
20 | |||
21 | def test_python_stdout(self): | ||
22 | (status, output) = self.target.run('python /tmp/test.py') | ||
23 | self.assertEqual(status, 0, msg="Exit status was not 0. Output: %s" % output) | ||
24 | self.assertEqual(output, "the value of a is 0.01", msg="Incorrect output: %s" % output) | ||
25 | |||
26 | def test_python_testfile(self): | ||
27 | (status, output) = self.target.run('ls /tmp/testfile.python') | ||
28 | self.assertEqual(status, 0, msg="Python test file generate failed.") | ||
29 | |||
30 | |||
31 | @classmethod | ||
32 | def tearDownClass(self): | ||
33 | oeRuntimeTest.tc.target.run("rm /tmp/test.py /tmp/testfile.python") | ||