From b25c1371f82911ea26b8c893b6612bb5ae0c8c19 Mon Sep 17 00:00:00 2001 From: SerenaFeng Date: Thu, 1 Mar 2018 20:03:59 +0800 Subject: leverage data_files to eliminate so many hardcoded abs_path_seekings 1. mv conf/ userconfig/ compliance/ patch to etc/ 2. after installation etc/ will be put under /etc/dovetail 3. leveraging /etc/dovetail in coding Change-Id: Icf9cb00ff7fc7cf35755f60d3e258b23e2c70839 Signed-off-by: SerenaFeng --- dovetail/cli/commands/cli_testcase.py | 30 ++++++++---------------------- 1 file changed, 8 insertions(+), 22 deletions(-) (limited to 'dovetail/cli') diff --git a/dovetail/cli/commands/cli_testcase.py b/dovetail/cli/commands/cli_testcase.py index a498d495..6fe789f7 100644 --- a/dovetail/cli/commands/cli_testcase.py +++ b/dovetail/cli/commands/cli_testcase.py @@ -7,37 +7,23 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## import os -import sys -import yaml + import click -import six +import yaml -import dovetail.utils.dovetail_utils as dt_utils -from dovetail.utils.dovetail_config import DovetailConfig as dt_cfg +from dovetail import constants from dovetail.testcase import Testsuite +from dovetail.utils.dovetail_config import DovetailConfig as dt_cfg +import dovetail.utils.dovetail_utils as dt_utils class CliTestcase(object): @classmethod def testsuite_load(cls): - dt_cfg.load_config_files() + dt_cfg.load_config_files(constants.CONF_PATH) Testsuite.load() - @classmethod - def get_path(cls, path): - if isinstance(path, six.string_types): - dt_cfg.load_config_files() - dovetail_dir = os.path.abspath( - os.path.join(os.path.dirname(__file__), - os.pardir, os.pardir)) - relative_path = dt_cfg.dovetail_config[path] - abs_path = os.path.join(dovetail_dir, relative_path) - else: - click.echo("input %s is not a string" % path) - sys.exit(1) - return abs_path - def list_testcase(self, testsuite): self.testsuite_load() if testsuite: @@ -75,14 +61,14 @@ class CliTestcase(object): click.echo("No testsuite defined yet in dovetail!!!") def show_testcase(self, testcase): - abs_testcase_path = self.get_path('TESTCASE_PATH') + abs_testcase_path = constants.TESTCASE_PATH if testcase.startswith("dovetail."): testcase_yml = testcase[9:] + '.yml' else: testcase_yml = testcase + '.yml' for root, dirs, files in os.walk(abs_testcase_path): if testcase_yml in files: - testcase_path = abs_testcase_path + testcase_yml + testcase_path = os.path.join(abs_testcase_path, testcase_yml) with open(testcase_path, 'r') as stream: try: click.echo(stream.read()) -- cgit 1.2.3-korg