diff options
author | SerenaFeng <feng.xiaowei@zte.com.cn> | 2016-12-22 11:16:39 +0800 |
---|---|---|
committer | SerenaFeng <feng.xiaowei@zte.com.cn> | 2016-12-22 18:50:43 +0800 |
commit | 62ffd8a7e6790ab0377550740d3cfe8eea298392 (patch) | |
tree | d3b0c99cf34520cfe81b0b064e4f6a6a582eb79f /functest/opnfv_tests/features/domino.py | |
parent | 25ac55e23e298de3ee0fee325556a4ea419370ce (diff) |
Refactor domino using FeatureBase and new constants provider
JIRA: FUNCTEST-673
Change-Id: I153fd5ca68deffa6fd140e62f438cf6ee5404f98
Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
Diffstat (limited to 'functest/opnfv_tests/features/domino.py')
-rwxr-xr-x | functest/opnfv_tests/features/domino.py | 65 |
1 files changed, 6 insertions, 59 deletions
diff --git a/functest/opnfv_tests/features/domino.py b/functest/opnfv_tests/features/domino.py index 341648f4..b36220fa 100755 --- a/functest/opnfv_tests/features/domino.py +++ b/functest/opnfv_tests/features/domino.py @@ -14,65 +14,12 @@ # 0.3: add report flag to push results when needed # 0.4: refactoring to match Test abstraction class -import argparse -import os -import sys -import time +import functest.core.feature_base as base -import functest.core.testcase_base as testcase_base -import functest.utils.functest_constants as ft_constants -import functest.utils.functest_logger as ft_logger -import functest.utils.functest_utils as ft_utils - - -class DominoCases(testcase_base.TestcaseBase): - DOMINO_REPO = ft_constants.DOMINO_REPO_DIR - RESULTS_DIR = ft_constants.FUNCTEST_RESULTS_DIR - logger = ft_logger.Logger("domino").getLogger() +class Domino(base.FeatureBase): def __init__(self): - super(DominoCases, self).__init__() - self.project_name = "domino" - self.case_name = "domino-multinode" - - def main(self, **kwargs): - cmd = 'cd %s && ./tests/run_multinode.sh' % self.DOMINO_REPO - log_file = os.path.join(self.RESULTS_DIR, "domino.log") - start_time = time.time() - - ret = ft_utils.execute_command(cmd, - output_file=log_file) - - stop_time = time.time() - if ret == 0: - self.logger.info("domino OK") - status = 'PASS' - else: - self.logger.info("domino FAILED") - status = "FAIL" - - # report status only if tests run (FAIL OR PASS) - self.criteria = status - self.start_time = start_time - self.stop_time = stop_time - self.details = {} - - def run(self): - kwargs = {} - return self.main(**kwargs) - -if __name__ == '__main__': - parser = argparse.ArgumentParser() - parser.add_argument("-r", "--report", - help="Create json result file", - action="store_true") - args = vars(parser.parse_args()) - domino = DominoCases() - try: - result = domino.main(**args) - if result != testcase_base.TestcaseBase.EX_OK: - sys.exit(result) - if args['report']: - sys.exit(domino.push_to_db()) - except Exception: - sys.exit(testcase_base.TestcaseBase.EX_RUN_ERROR) + super(Domino, self).__init__(project='domino', + case='domino-multinode', + repo='dir_repo_domino') + self.cmd = 'cd %s && ./tests/run_multinode.sh' % self.repo |