X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=functest%2Futils%2Ffunctest_utils.py;h=e4845c629be37270e0d1251ab2d2531c0fca8aa0;hb=3592444c8abcaca3312d831fd610d82bffd627ea;hp=2d4a652d81de4f3f43b58b140f20c87e4472c074;hpb=3718b1de246a72e4cd1d10efdaa861643544db61;p=functest.git diff --git a/functest/utils/functest_utils.py b/functest/utils/functest_utils.py index 2d4a652d8..e4845c629 100644 --- a/functest/utils/functest_utils.py +++ b/functest/utils/functest_utils.py @@ -21,13 +21,13 @@ import requests import yaml from git import Repo +import time +import functools + import functest.utils.functest_logger as ft_logger logger = ft_logger.Logger("functest_utils").getLogger() -REPOS_DIR = os.getenv('repos_dir') -FUNCTEST_REPO = ("%s/functest" % REPOS_DIR) - # ---------------------------------------------------------- # @@ -326,7 +326,7 @@ def get_deployment_dir(): Returns current Rally deployment directory """ deployment_name = get_functest_config('rally.deployment_name') - rally_dir = get_functest_config('general.directories.dir_rally_inst') + rally_dir = get_functest_config('general.dir.dir_rally_inst') cmd = ("rally deployment list | awk '/" + deployment_name + "/ {print $2}'") p = subprocess.Popen(cmd, shell=True, @@ -342,7 +342,7 @@ def get_deployment_dir(): def get_dict_by_test(testname): - with open(get_testcases_file()) as f: + with open(get_testcases_file_dir()) as f: testcases_yaml = yaml.safe_load(f) for dic_tier in testcases_yaml.get("tiers"): @@ -421,25 +421,8 @@ def merge_dicts(dict1, dict2): yield (k, dict2[k]) -def check_test_result(test_name, ret, start_time, stop_time): - def get_criteria_value(): - return get_criteria_by_test(test_name).split('==')[1].strip() - - status = 'FAIL' - if str(ret) == get_criteria_value(): - status = 'PASS' - - details = { - 'timestart': start_time, - 'duration': round(stop_time - start_time, 1), - 'status': status, - } - - return status, details - - -def get_testcases_file(): - return FUNCTEST_REPO + "/functest/ci/testcases.yaml" +def get_testcases_file_dir(): + return get_functest_config('general.functest.testcases_yaml') def get_functest_yaml(): @@ -447,3 +430,21 @@ def get_functest_yaml(): functest_yaml = yaml.safe_load(f) f.close() return functest_yaml + + +def print_separator(): + logger.info("==============================================") + + +def timethis(func): + """Measure the time it takes for a function to complete""" + @functools.wraps(func) + def timed(*args, **kwargs): + ts = time.time() + result = func(*args, **kwargs) + te = time.time() + elapsed = '{0}'.format(te - ts) + logger.info('{f}(*{a}, **{kw}) took: {t} sec'.format( + f=func.__name__, a=args, kw=kwargs, t=elapsed)) + return result, elapsed + return timed