From c0603bc1d6c8ccedcc087a5aae2acd191e7e456f Mon Sep 17 00:00:00 2001 From: Fang Lin Date: Thu, 22 Dec 2022 12:41:35 -0800 Subject: [PATCH] tidy (#19) refactored --- uw_hrp/models.py | 34 +++++++++++++++------------------- uw_hrp/tests/test_models.py | 28 +++++++++++++++++++--------- 2 files changed, 34 insertions(+), 28 deletions(-) diff --git a/uw_hrp/models.py b/uw_hrp/models.py index ff6fb7d..ad033f3 100644 --- a/uw_hrp/models.py +++ b/uw_hrp/models.py @@ -27,11 +27,9 @@ def get_emp_program_job_class(job_classification_summaries): summary.get("JobClassification")): emp_program_name = summary["JobClassification"].get("Name") if " - " in emp_program_name: - name_data = emp_program_name.split(" - ", 1) - emp_program_name = name_data[1] - + emp_program_name = emp_program_name.split(" - ", 1)[1] if " (" in emp_program_name: - return emp_program_name.split(" (", 1)[0] + emp_program_name = emp_program_name.split(" (", 1)[0] return emp_program_name.strip() @@ -168,9 +166,9 @@ def __init__(self, *args, **kwargs): if (data.get("OrganizationDetails") is not None and len(data["OrganizationDetails"])): for org_det in data["OrganizationDetails"]: - if (org_det.get("Organization") and - org_det["Organization"].get("Name") and - org_det.get("Type") and + if (org_det.get("Organization") is not None and + org_det["Organization"].get("Name") is not None and + org_det.get("Type") is not None and org_det["Type"].get("Name") == "Cost Center"): self.budget_code = org_det["Organization"]["Name"] @@ -181,8 +179,8 @@ def __init__(self, *args, **kwargs): self.end_date = parse_date(data.get("PositionVacateDate")) self.start_date = parse_date(data.get("StartDate")) - if (data.get("SupervisoryOrganization") and - data["SupervisoryOrganization"].get("Name")): + if (data.get("SupervisoryOrganization") is not None and + data["SupervisoryOrganization"].get("Name") is not None): self.org_code, self.org_name = get_org_code_name( data["SupervisoryOrganization"]["Name"]) @@ -232,16 +230,14 @@ def __init__(self, *args, **kwargs): if not (self.employee_status and self.employee_status.is_active): return - active_positions = data.get("EmploymentDetails") - if active_positions is not None and len(active_positions) > 0: - for emp_detail in active_positions: - position = EmploymentDetails(data=emp_detail) - if position and position.is_primary: - self.primary_job_title = position.job_title - self.primary_manager_id = position.supervisor_eid - self.primary_position = position - else: - self.other_active_positions.append(position) + for emp_detail in data.get("EmploymentDetails"): + position = EmploymentDetails(data=emp_detail) + if position and position.is_primary: + self.primary_job_title = position.job_title + self.primary_manager_id = position.supervisor_eid + self.primary_position = position + else: + self.other_active_positions.append(position) class Person(models.Model): diff --git a/uw_hrp/tests/test_models.py b/uw_hrp/tests/test_models.py index 4f0835c..8d78034 100644 --- a/uw_hrp/tests/test_models.py +++ b/uw_hrp/tests/test_models.py @@ -16,20 +16,30 @@ def test_parse_date(self): self.assertIsNotNone(parse_date("2017-09-16T07:00:00.000Z")) def test_get_emp_program_job_class(self): - data = [{ - "JobClassification": { - "Name": "S - Stipend (Employment Program)", - "WID": "" + data = [ + { + "JobClassification": { + "Name": "S - Stipend (Employment Program)", + "WID": "" + }, + "JobClassificationGroup": { + "Name": "Employment Program", + "WID": "" + } }, - "JobClassificationGroup": { - "Name": "Employment Program", - "WID": "" + { + "JobClassification": { + "Name": "0180 - Hourly, Overt, Prem (Fina (Object-Codes))" + }, + "JobClassificationGroup": { + "Name": "Financial Account Codes (Object-Codes)" + } } - }] + ] self.assertEqual(get_emp_program_job_class(data), 'Stipend') def test_get_org_code_name(self): - data = "CAS: Chemistry: Theberge JM Student ()" + data = "CAS: Chemistry: Theberge JM Student (...())" code, name = get_org_code_name(data) self.assertEqual(code, "CAS") self.assertEqual(name, "Chemistry: Theberge JM Student")