lib/oeqa/runtime: add test for perl

This test runs a perl script on the target and checks the output.

(From OE-Core rev: 95abdbf2d715c9e7e3368f5193167feb5efc6261)

Signed-off-by: Cornel Stoicescu <corneliux.stoicescu@intel.com>
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Cornel Stoicescu 2013-08-20 19:06:59 +02:00 committed by Richard Purdie
parent ec8aea9c01
commit dfd627d7ac
2 changed files with 30 additions and 0 deletions

View File

@ -0,0 +1,2 @@
$a = 9.01e+21 - 9.01e+21 + 0.01;
print ("the value of a is ", $a, "\n");

View File

@ -0,0 +1,28 @@
import unittest
import os
from oeqa.oetest import oeRuntimeTest, skipModule
from oeqa.utils.decorators import *
def setUpModule():
if not oeRuntimeTest.hasPackage("perl"):
skipModule("No perl package in the image")
class PerlTest(oeRuntimeTest):
@classmethod
def setUpClass(self):
oeRuntimeTest.tc.target.copy_to(os.path.join(oeRuntimeTest.tc.filesdir, "test.pl"), "/tmp/test.pl")
def test_perl_exists(self):
(status, output) = self.target.run('which perl')
self.assertEqual(status, 0, msg="Perl binary not in PATH or not on target.")
def test_perl_works(self):
(status, output) = self.target.run('perl /tmp/test.pl')
self.assertEqual(status, 0, msg="Exit status was not 0. Output: %s" % output)
self.assertEqual(output, "the value of a is 0.01", msg="Incorrect output: %s" % output)
@classmethod
def tearDownClass(self):
oeRuntimeTest.tc.target.run("rm /tmp/test.pl")