From 5b23472699688c5e79e14564f23d9b10bd41b93e Mon Sep 17 00:00:00 2001 From: SerenaFeng Date: Fri, 2 Sep 2016 23:33:22 +0800 Subject: solve bidirectional dependencies between ci and utils modules Ci module's run_tests.py references utils module's functest_utils, and functest_utils references ci module's tier_handler. Form a bidirectional dependencies between two packages. JIRA: FUNCTEST-456 Change-Id: Idbdd4896fb1ec786fcfd656832bfe2d4048a8278 Signed-off-by: SerenaFeng --- utils/functest_utils.py | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) (limited to 'utils') diff --git a/utils/functest_utils.py b/utils/functest_utils.py index 644ad1a1..4a98a866 100644 --- a/utils/functest_utils.py +++ b/utils/functest_utils.py @@ -7,23 +7,21 @@ # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 # -from datetime import datetime as dt import json import os import re -import requests import shutil import subprocess import sys import urllib2 - -import functest.ci.tier_builder as tb -import functest.utils.functest_logger as ft_logger +from datetime import datetime as dt import dns.resolver -from git import Repo +import requests import yaml +from git import Repo +import functest.utils.functest_logger as ft_logger logger = ft_logger.Logger("functest_utils").getLogger() @@ -350,15 +348,16 @@ def get_deployment_dir(): def get_criteria_by_test(testname): - criteria = "" - file = get_testcases_file() - tiers = tb.TierBuilder("", "", file) - for tier in tiers.get_tiers(): - for test in tier.get_tests(): - if test.get_name() == testname: - criteria = test.get_criteria() - - return criteria + with open(get_testcases_file()) as f: + testcases_yaml = yaml.safe_load(f) + + for dic_tier in testcases_yaml.get("tiers"): + for dic_testcase in dic_tier['testcases']: + if dic_testcase['name'] == testname: + return dic_testcase['criteria'] + + logger.error('Project %s is not defined in testcases.yaml' % testname) + return None # ---------------------------------------------------------- -- cgit 1.2.3-korg