From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 8823110E620 for ; Thu, 13 Jul 2023 07:51:02 +0000 (UTC) Received: from linux.intel.com (maurocar-mobl2.ger.corp.intel.com [10.252.27.144]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by linux.intel.com (Postfix) with ESMTPS id 367D9580E3C for ; Thu, 13 Jul 2023 00:51:00 -0700 (PDT) Received: from maurocar by linux.intel.com with local (Exim 4.96) (envelope-from ) id 1qJr6I-0044Ti-0N for igt-dev@lists.freedesktop.org; Thu, 13 Jul 2023 09:50:58 +0200 From: Mauro Carvalho Chehab To: igt-dev@lists.freedesktop.org Date: Thu, 13 Jul 2023 09:50:47 +0200 Message-Id: <20230713075054.970457-8-mauro.chehab@linux.intel.com> In-Reply-To: <20230713075054.970457-1-mauro.chehab@linux.intel.com> References: <20230713075054.970457-1-mauro.chehab@linux.intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [igt-dev] [PATCH i-g-t v3 07/14] scripts/test_list.py: don't rely on file name to parse config List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: igt-dev-bounces@lists.freedesktop.org Sender: "igt-dev" List-ID: From: Mauro Carvalho Chehab Currently, config_fname should not be empty, as the class init will fail. Make the logic more generic to prepare to optionally pass the configuration dict directly. Reviewed-by: Kamil Konieczny Signed-off-by: Mauro Carvalho Chehab --- scripts/test_list.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/scripts/test_list.py b/scripts/test_list.py index ac77d6523672..465c73c3bdef 100644 --- a/scripts/test_list.py +++ b/scripts/test_list.py @@ -255,7 +255,6 @@ class TestList: self.filenames = file_list self.plan_filenames = [] self.props = {} - self.config_fname = config_fname self.built_testlist = built_testlist self.level_count = 0 self.field_list = {} @@ -274,6 +273,9 @@ class TestList: with open(config_fname, 'r', encoding='utf8') as handle: self.config = json.load(handle) + config_origin = config_fname + cfg_path = os.path.realpath(os.path.dirname(config_fname)) + "/" + self.__add_field(None, 0, 0, self.config["fields"]) sublevel_count = [ 0 ] * self.level_count @@ -314,12 +316,12 @@ class TestList: files = self.config["files"] exclude_file_glob = self.config.get("exclude_files", []) for cfg_file in exclude_file_glob: - cfg_file = os.path.realpath(os.path.dirname(config_fname)) + "/" + cfg_file + cfg_file = cfg_path + cfg_file for fname in glob.glob(cfg_file): exclude_files.append(fname) for cfg_file in files: - cfg_file = os.path.realpath(os.path.dirname(config_fname)) + "/" + cfg_file + cfg_file = cfg_path + cfg_file for fname in glob.glob(cfg_file): if fname in exclude_files: continue @@ -335,7 +337,7 @@ class TestList: implemented_class = "Implemented" files = self.config["planning_files"] for cfg_file in files: - cfg_file = os.path.realpath(os.path.dirname(config_fname)) + "/" + cfg_file + cfg_file = cfg_path + cfg_file for fname in glob.glob(cfg_file): self.plan_filenames.append(fname) has_planned = True @@ -363,12 +365,12 @@ class TestList: continue self.__add_file_documentation(fname, implemented_class, field_re, - test_tag, subtest_tag) + test_tag, subtest_tag, config_origin) if include_plan: for fname in self.plan_filenames: self.__add_file_documentation(fname, planned_class, field_re, - test_tag, subtest_tag) + test_tag, subtest_tag, config_origin) # # ancillary methods @@ -1003,7 +1005,7 @@ class TestList: # def __add_file_documentation(self, fname, implemented_class, field_re, - test_tag, subtest_tag): + test_tag, subtest_tag, config_origin): """Adds the contents of test/subtest documentation form a file""" @@ -1215,7 +1217,7 @@ class TestList: file_line.rstrip(r"\n") sys.exit(f"{fname}:{file_ln + 1}: Error: unrecognized line. Need to add field at %s?\n\t==> %s" % - (self.config_fname, file_line)) + (config_origin, file_line)) def show_subtests(self, sort_field): -- 2.40.1