diff options
author | Stefan Stanacar <stefanx.stanacar@intel.com> | 2014-02-27 17:46:15 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-02-28 13:52:43 +0000 |
commit | a4e4de4189cec3076a863c32c98e02766187ab48 (patch) | |
tree | 4ae078de3c1a54e6787a23f92cae18099def6061 /meta/lib | |
parent | 45709d1eae28fc567c5dca9a48393d56d28f785d (diff) | |
download | openembedded-core-a4e4de4189cec3076a863c32c98e02766187ab48.tar.gz openembedded-core-a4e4de4189cec3076a863c32c98e02766187ab48.tar.bz2 openembedded-core-a4e4de4189cec3076a863c32c98e02766187ab48.zip |
oeqa/targetcontrol: make BaseTarget an abstract class
This should make it clear what methods a subclass
needs to redefine.
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/lib')
-rw-r--r-- | meta/lib/oeqa/targetcontrol.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/meta/lib/oeqa/targetcontrol.py b/meta/lib/oeqa/targetcontrol.py index 46e5f7fa6b..d8a6ac03ec 100644 --- a/meta/lib/oeqa/targetcontrol.py +++ b/meta/lib/oeqa/targetcontrol.py @@ -12,6 +12,7 @@ import traceback from oeqa.utils.sshcontrol import SSHControl from oeqa.utils.qemurunner import QemuRunner from oeqa.controllers.testtargetloader import TestTargetLoader +from abc import ABCMeta, abstractmethod def get_target_controller(d): testtarget = d.getVar("TEST_TARGET", True) @@ -40,6 +41,8 @@ def get_target_controller(d): class BaseTarget(object): + __metaclass__ = ABCMeta + def __init__(self, d): self.connection = None self.ip = None @@ -48,6 +51,7 @@ class BaseTarget(object): self.testdir = d.getVar("TEST_LOG_DIR", True) self.pn = d.getVar("PN", True) + @abstractmethod def deploy(self): self.sshlog = os.path.join(self.testdir, "ssh_target_log.%s" % self.datetime) @@ -57,6 +61,18 @@ class BaseTarget(object): os.symlink(self.sshlog, sshloglink) bb.note("SSH log file: %s" % self.sshlog) + @abstractmethod + def start(self, params=None): + pass + + @abstractmethod + def stop(self): + pass + + @abstractmethod + def restart(self, params=None): + pass + def run(self, cmd, timeout=None): return self.connection.run(cmd, timeout) |