oeqa/oetest: Remove bb as requirement for oetest.
In order for the test export runner to work oetest needs to be separated from bitbake environment. There is no need to use bb import here so we can use a logger instead. (From OE-Core rev: 22bd8a600823306d7c5965a9a69b8e8888993513) Signed-off-by: Lucian Musat <george.l.musat@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
d70c5cb9ca
commit
f1e7fb0856
|
@ -11,10 +11,16 @@ import os, re, mmap
|
|||
import unittest
|
||||
import inspect
|
||||
import subprocess
|
||||
import bb
|
||||
try:
|
||||
import bb
|
||||
except ImportError:
|
||||
pass
|
||||
import logging
|
||||
from oeqa.utils.decorators import LogResults, gettag
|
||||
from sys import exc_info, exc_clear
|
||||
|
||||
logger = logging.getLogger("BitBake")
|
||||
|
||||
def getVar(obj):
|
||||
#extend form dict, if a variable didn't exists, need find it in testcase
|
||||
class VarDict(dict):
|
||||
|
@ -89,7 +95,7 @@ def loadTests(tc, type="runtime"):
|
|||
suite.dependencies.append(dep_suite)
|
||||
break
|
||||
else:
|
||||
bb.warn("Test %s was declared as @skipUnlessPassed('%s') but that test is either not defined or not active. Will run the test anyway." %
|
||||
logger.warning("Test %s was declared as @skipUnlessPassed('%s') but that test is either not defined or not active. Will run the test anyway." %
|
||||
(test, depends_on))
|
||||
# Use brute-force topological sort to determine ordering. Sort by
|
||||
# depth (higher depth = must run later), with original ordering to
|
||||
|
@ -114,19 +120,26 @@ def custom_verbose(msg, *args, **kwargs):
|
|||
_buffer += msg
|
||||
else:
|
||||
_buffer += msg
|
||||
bb.plain(_buffer.rstrip("\n"), *args, **kwargs)
|
||||
try:
|
||||
bb.plain(_buffer.rstrip("\n"), *args, **kwargs)
|
||||
except NameError:
|
||||
logger.info(_buffer.rstrip("\n"), *args, **kwargs)
|
||||
_buffer = ""
|
||||
|
||||
def runTests(tc, type="runtime"):
|
||||
|
||||
suite = loadTests(tc, type)
|
||||
bb.note("Test modules %s" % tc.testslist)
|
||||
logger.info("Test modules %s" % tc.testslist)
|
||||
if hasattr(tc, "tagexp") and tc.tagexp:
|
||||
bb.note("Filter test cases by tags: %s" % tc.tagexp)
|
||||
bb.note("Found %s tests" % suite.countTestCases())
|
||||
logger.info("Filter test cases by tags: %s" % tc.tagexp)
|
||||
logger.info("Found %s tests" % suite.countTestCases())
|
||||
runner = unittest.TextTestRunner(verbosity=2)
|
||||
if bb.msg.loggerDefaultVerbose:
|
||||
runner.stream.write = custom_verbose
|
||||
try:
|
||||
if bb.msg.loggerDefaultVerbose:
|
||||
runner.stream.write = custom_verbose
|
||||
except NameError:
|
||||
# Not in bb environment?
|
||||
pass
|
||||
result = runner.run(suite)
|
||||
|
||||
return result
|
||||
|
|
Loading…
Reference in New Issue