From: Morgan Richomme Date: Wed, 14 Dec 2016 07:36:41 +0000 (+0100) Subject: Adapt Domino to FeatureBase X-Git-Tag: danube.1.RC1~207^2 X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=commitdiff_plain;h=af55d9094132d6800d8064a00fb3bf5d6110494f;p=functest.git Adapt Domino to FeatureBase JIRA: FUNCTEST-547 Change-Id: Ib1a0c4d2e556db0fd54094eda74046c671c84a55 Signed-off-by: Morgan Richomme --- diff --git a/functest/opnfv_tests/features/domino.py b/functest/opnfv_tests/features/domino.py index 341648f4b..b36220fa0 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