From 2999a7f6845c72d8ddb19ec8d8dfccdc1cb1e23d Mon Sep 17 00:00:00 2001 From: Corneliu Stoicescu Date: Sat, 9 Aug 2014 13:59:07 +0300 Subject: oeqa/oetest.py: enable sdk testing - add support for sdk tests in the loadTests and runTests methods - add new oeSDKTest test object NOTE: Original patch made by: Richard Purdie (From OE-Core rev: 6c147e5c82b39773e135ca828b37905cbb31be3b) Signed-off-by: Corneliu Stoicescu Signed-off-by: Richard Purdie --- meta/lib/oeqa/oetest.py | 29 ++++++++++++++++++----------- 1 file changed, 18 insertions(+), 11 deletions(-) (limited to 'meta/lib/oeqa/oetest.py') diff --git a/meta/lib/oeqa/oetest.py b/meta/lib/oeqa/oetest.py index dcbd498fca..5552c4322e 100644 --- a/meta/lib/oeqa/oetest.py +++ b/meta/lib/oeqa/oetest.py @@ -10,25 +10,29 @@ import os, re, mmap import unittest import inspect +import subprocess from oeqa.utils.decorators import LogResults -def loadTests(tc): - - # set the context object passed from the test class - setattr(oeTest, "tc", tc) - # set ps command to use - setattr(oeRuntimeTest, "pscmd", "ps -ef" if oeTest.hasPackage("procps") else "ps") - # prepare test suite, loader and runner - suite = unittest.TestSuite() +def loadTests(tc, type="runtime"): + if type == "runtime": + # set the context object passed from the test class + setattr(oeTest, "tc", tc) + # set ps command to use + setattr(oeRuntimeTest, "pscmd", "ps -ef" if oeTest.hasPackage("procps") else "ps") + # prepare test suite, loader and runner + suite = unittest.TestSuite() + elif type == "sdk": + # set the context object passed from the test class + setattr(oeSDKTest, "tc", tc) testloader = unittest.TestLoader() testloader.sortTestMethodsUsing = None suite = testloader.loadTestsFromNames(tc.testslist) return suite -def runTests(tc): +def runTests(tc, type="runtime"): - suite = loadTests(tc) + suite = loadTests(tc, type) print("Test modules %s" % tc.testslist) print("Found %s tests" % suite.countTestCases()) runner = unittest.TextTestRunner(verbosity=2) @@ -58,11 +62,14 @@ class oeTest(unittest.TestCase): return False class oeRuntimeTest(oeTest): - def __init__(self, methodName='runTest'): self.target = oeRuntimeTest.tc.target super(oeRuntimeTest, self).__init__(methodName) +class oeSDKTest(unittest.TestCase): + def __init__(self, methodName='runTest'): + self.sdktestdir = oeSDKTest.tc.sdktestdir + super(oeSDKTest, self).__init__(methodName) def getmodule(pos=2): # stack returns a list of tuples containg frame information -- cgit v1.2.3-54-g00ecf