[OE-core] [PATCH] oeqa/runexported.py: Fix exported test

Aníbal Limón anibal.limon at linux.intel.com
Mon Apr 11 15:13:26 UTC 2016


Also will be a good idea to add testing for this functionality to avoid
future broke.

Mariano could you load the bug for this task?

Best regards,
	alimon

On 04/11/2016 01:55 AM, mariano.lopez at linux.intel.com wrote:
> From: Mariano Lopez <mariano.lopez at linux.intel.com>
> 
> 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 <mariano.lopez at linux.intel.com>
Acked-by: Aníbal Limón <anibal.limon at linux.intel.com>

> ---
>  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 fc1e8b5..8eb84ed 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 e9a2912..cc89e13 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 32e001c..48f6441 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):
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: OpenPGP digital signature
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20160411/619d60f3/attachment-0002.sig>


More information about the Openembedded-core mailing list