From 0af0542542f3ba1d8af0d4e6b901eaed34cd2b2b Mon Sep 17 00:00:00 2001 From: Konstantin Althaus Date: Mon, 15 Apr 2024 13:00:00 +0200 Subject: [PATCH] refactor: safely import test case workitem type --- src/pylero/test_run.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/pylero/test_run.py b/src/pylero/test_run.py index 175b1fa..bdfa8ed 100644 --- a/src/pylero/test_run.py +++ b/src/pylero/test_run.py @@ -940,12 +940,14 @@ def __create_incident_report( status = "open" project = Project(project_id) tconf = project.get_tests_configuration() + defect_wi_type = tconf.defect_work_item_type + test_case_wi_type = tconf.test_case_work_item_type - defectWorkItemType = tconf.defect_work_item_type - testCaseWorkItemType = tconf.test_case_work_item_type - workItemModule = importlib.import_module("pylero.work_item") try: - test_case_class = getattr(workItemModule, testCaseWorkItemType) + work_item_module = importlib.import_module("pylero.work_item") + wi_class_names = getattr(work_item_module, "workitems") + test_case_class_name = wi_class_names[test_case_wi_type] + test_case_class = getattr(work_item_module, test_case_class_name) test_case = test_case_class( project_id=self.project_id, work_item_id=test_case_id ) @@ -964,14 +966,14 @@ def __create_incident_report( try: incident_report = _WorkItem.create( - project_id, defectWorkItemType, title, description, status, **kwarg_dict + project_id, defect_wi_type, title, description, status, **kwarg_dict ) except PyleroLibException as e: msg = "\n".join( [ ( f"Failed to create the work item {title} in" - f"project {project_id} of type {defectWorkItemType}." + f"project {project_id} of type {defect_wi_type}." ), f"Error: {e}", ]