diff options
Diffstat (limited to 'functest/core')
-rw-r--r-- | functest/core/pytest_suite_runner.py | 1 | ||||
-rw-r--r-- | functest/core/testcase.py | 26 | ||||
-rw-r--r-- | functest/core/vnf.py (renamed from functest/core/vnf_base.py) | 4 |
3 files changed, 24 insertions, 7 deletions
diff --git a/functest/core/pytest_suite_runner.py b/functest/core/pytest_suite_runner.py index 8b5da05e..21edc187 100644 --- a/functest/core/pytest_suite_runner.py +++ b/functest/core/pytest_suite_runner.py @@ -18,6 +18,7 @@ class PyTestSuiteRunner(base.TestCase): def __init__(self, **kwargs): super(PyTestSuiteRunner, self).__init__(**kwargs) self.suite = None + self.logger = None def run(self, **kwargs): """ diff --git a/functest/core/testcase.py b/functest/core/testcase.py index 62465542..49fae609 100644 --- a/functest/core/testcase.py +++ b/functest/core/testcase.py @@ -39,9 +39,24 @@ class TestCase(object): self.project_name = kwargs.get('project_name', 'functest') self.case_name = kwargs.get('case_name', '') self.criteria = kwargs.get('criteria', 100) - self.result = "" - self.start_time = "" - self.stop_time = "" + self.result = 0 + self.start_time = 0 + self.stop_time = 0 + + def __str__(self): + try: + assert self.project_name + assert self.case_name + result = 'PASS' if(self.is_successful( + ) == TestCase.EX_OK) else 'FAIL' + return ('| {0:<23} | {1:<13} | {2:<10} | {3:<13} |' + '\n{4:-<26}{4:-<16}{4:-<13}{4:-<16}{4}'.format( + self.case_name, self.project_name, + self.get_duration(), result, '+')) + except AssertionError: + self.__logger.error("We cannot print invalid objects") + return '| {0:^68} |\n{1:-<26}{1:-<16}{1:-<13}{1:-<16}{1}'.format( + 'INVALID OBJECT', '+') def get_duration(self): """Return the duration of the test case. @@ -57,7 +72,7 @@ class TestCase(object): return "XX:XX" return "{0[0]:02.0f}:{0[1]:02.0f}".format(divmod( self.stop_time - self.start_time, 60)) - except Exception: + except Exception: # pylint: disable=broad-except self.__logger.error("Please run test before getting the duration") return "XX:XX" @@ -75,7 +90,8 @@ class TestCase(object): """ try: assert self.criteria - if isinstance(self.result, int) and isinstance(self.criteria, int): + if (not isinstance(self.result, str) and + not isinstance(self.criteria, str)): if self.result >= self.criteria: return TestCase.EX_OK else: diff --git a/functest/core/vnf_base.py b/functest/core/vnf.py index bc5bf9a7..5667b299 100644 --- a/functest/core/vnf_base.py +++ b/functest/core/vnf.py @@ -17,12 +17,12 @@ import functest.utils.functest_utils as ft_utils import functest.utils.openstack_utils as os_utils -class VnfOnBoardingBase(base.TestCase): +class VnfOnBoarding(base.TestCase): __logger = logging.getLogger(__name__) def __init__(self, **kwargs): - super(VnfOnBoardingBase, self).__init__(**kwargs) + super(VnfOnBoarding, self).__init__(**kwargs) self.repo = kwargs.get('repo', '') self.cmd = kwargs.get('cmd', '') self.details = {} |