1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-30 12:29:55 +00:00

oeqa/utils/decorators: fix missing keyword arguments on decorators

We need to handle keyword arguments here or sending a keyword argument
to a decorated function that accepts keyword arguments will trigger an
error. (This showed up when testcase decorators were added to the
recipetool.RecipetoolTests.test_recipetool_appendsrcfiles_basic_subdir
test).

(From OE-Core rev: f787b688f2884ce3fa888b4041030538c7d2bf55)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Paul Eggleton
2015-10-26 13:28:26 +00:00
committed by Richard Purdie
parent a2d5b7ac76
commit fdfdfc8ccb
+8 -8
View File
@@ -57,11 +57,11 @@ class skipIfFailure(object):
self.testcase = testcase self.testcase = testcase
def __call__(self,f): def __call__(self,f):
def wrapped_f(*args): def wrapped_f(*args, **kwargs):
res = getResults() res = getResults()
if self.testcase in (res.getFailList() or res.getErrorList()): if self.testcase in (res.getFailList() or res.getErrorList()):
raise unittest.SkipTest("Testcase dependency not met: %s" % self.testcase) raise unittest.SkipTest("Testcase dependency not met: %s" % self.testcase)
return f(*args) return f(*args, **kwargs)
wrapped_f.__name__ = f.__name__ wrapped_f.__name__ = f.__name__
return wrapped_f return wrapped_f
@@ -71,11 +71,11 @@ class skipIfSkipped(object):
self.testcase = testcase self.testcase = testcase
def __call__(self,f): def __call__(self,f):
def wrapped_f(*args): def wrapped_f(*args, **kwargs):
res = getResults() res = getResults()
if self.testcase in res.getSkipList(): if self.testcase in res.getSkipList():
raise unittest.SkipTest("Testcase dependency not met: %s" % self.testcase) raise unittest.SkipTest("Testcase dependency not met: %s" % self.testcase)
return f(*args) return f(*args, **kwargs)
wrapped_f.__name__ = f.__name__ wrapped_f.__name__ = f.__name__
return wrapped_f return wrapped_f
@@ -85,13 +85,13 @@ class skipUnlessPassed(object):
self.testcase = testcase self.testcase = testcase
def __call__(self,f): def __call__(self,f):
def wrapped_f(*args): def wrapped_f(*args, **kwargs):
res = getResults() res = getResults()
if self.testcase in res.getSkipList() or \ if self.testcase in res.getSkipList() or \
self.testcase in res.getFailList() or \ self.testcase in res.getFailList() or \
self.testcase in res.getErrorList(): self.testcase in res.getErrorList():
raise unittest.SkipTest("Testcase dependency not met: %s" % self.testcase) raise unittest.SkipTest("Testcase dependency not met: %s" % self.testcase)
return f(*args) return f(*args, **kwargs)
wrapped_f.__name__ = f.__name__ wrapped_f.__name__ = f.__name__
wrapped_f._depends_on = self.testcase wrapped_f._depends_on = self.testcase
return wrapped_f return wrapped_f
@@ -102,8 +102,8 @@ class testcase(object):
self.test_case = test_case self.test_case = test_case
def __call__(self, func): def __call__(self, func):
def wrapped_f(*args): def wrapped_f(*args, **kwargs):
return func(*args) return func(*args, **kwargs)
wrapped_f.test_case = self.test_case wrapped_f.test_case = self.test_case
wrapped_f.__name__ = func.__name__ wrapped_f.__name__ = func.__name__
return wrapped_f return wrapped_f