From da0abb9679cb1fd639859a2fdbd82101d0a81259 Mon Sep 17 00:00:00 2001 From: Mariano Lopez Date: Mon, 11 Apr 2016 06:55:35 +0000 Subject: oeqa/runexported.py: Fix exported test With the changes introduced to test the eSDK the runexported test failed during the execution. This change fix runexported test in the least invasive way, because of the release cycle. Signed-off-by: Mariano Lopez Signed-off-by: Richard Purdie --- meta/lib/oeqa/oetest.py | 6 +++++- meta/lib/oeqa/runexported.py | 19 ++++++++++--------- meta/lib/oeqa/utils/commands.py | 6 +++++- 3 files changed, 20 insertions(+), 11 deletions(-) diff --git a/meta/lib/oeqa/oetest.py b/meta/lib/oeqa/oetest.py index fc1e8b514d..8eb84ed65d 100644 --- a/meta/lib/oeqa/oetest.py +++ b/meta/lib/oeqa/oetest.py @@ -19,7 +19,11 @@ except ImportError: import logging import oeqa.runtime -import oeqa.sdkext +# Exported test doesn't require sdkext +try: + import oeqa.sdkext +except ImportError: + pass from oeqa.utils.decorators import LogResults, gettag, getResults from oeqa.utils import avoid_paths_in_environ diff --git a/meta/lib/oeqa/runexported.py b/meta/lib/oeqa/runexported.py index e9a29126c8..cc89e13c06 100755 --- a/meta/lib/oeqa/runexported.py +++ b/meta/lib/oeqa/runexported.py @@ -30,7 +30,7 @@ except ImportError: sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), "oeqa"))) -from oeqa.oetest import runTests +from oeqa.oetest import TestContext from oeqa.utils.sshcontrol import SSHControl from oeqa.utils.dump import get_host_dumper @@ -49,7 +49,7 @@ class FakeTarget(object): def exportStart(self): self.sshlog = os.path.join(self.testdir, "ssh_target_log.%s" % self.datetime) sshloglink = os.path.join(self.testdir, "ssh_target_log") - if os.path.exists(sshloglink): + if os.path.lexists(sshloglink): os.remove(sshloglink) os.symlink(self.sshlog, sshloglink) print("SSH log file: %s" % self.sshlog) @@ -69,10 +69,9 @@ class MyDataDict(dict): def getVar(self, key, unused = None): return self.get(key, "") -class TestContext(object): - def __init__(self): - self.d = None - self.target = None +class ExportTestContext(TestContext): + def __init__(self, d): + self.d = d def main(): @@ -121,7 +120,9 @@ def main(): host_dumper.parent_dir = loaded["host_dumper"]["parent_dir"] host_dumper.cmds = loaded["host_dumper"]["cmds"] - tc = TestContext() + target.exportStart() + tc = ExportTestContext(d) + setattr(tc, "d", d) setattr(tc, "target", target) setattr(tc, "host_dumper", host_dumper) @@ -129,8 +130,8 @@ def main(): if key != "d" and key != "target" and key != "host_dumper": setattr(tc, key, loaded[key]) - target.exportStart() - runTests(tc) + tc.loadTests() + tc.runTests() return 0 diff --git a/meta/lib/oeqa/utils/commands.py b/meta/lib/oeqa/utils/commands.py index 32e001c6b5..48f6441290 100644 --- a/meta/lib/oeqa/utils/commands.py +++ b/meta/lib/oeqa/utils/commands.py @@ -18,7 +18,11 @@ from oeqa.utils import CommandError from oeqa.utils import ftools import re import contextlib -import bb +# Export test doesn't require bb +try: + import bb +except ImportError: + pass class Command(object): def __init__(self, command, bg=False, timeout=None, data=None, **options): -- cgit 1.2.3-korg