Skip to content

Commit e01b884

Browse files
Addressing PR comments
1 parent 7f75714 commit e01b884

File tree

3 files changed

+23
-7
lines changed

3 files changed

+23
-7
lines changed

classes/deduction/deduction_reason_types.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,10 @@ def description(self) -> str:
6969
def by_description(cls, description: str) -> Optional["DeductionReasonType"]:
7070
"""
7171
Returns the enum member matching the given description (case-sensitive).
72+
Args:
73+
description (str): The description to match.
74+
Returns:
75+
Optional[DeductionReasonType]: The matching enum member, or None if not found.
7276
"""
7377
for member in cls:
7478
if member.description == description:
@@ -81,6 +85,10 @@ def by_description_case_insensitive(
8185
) -> Optional["DeductionReasonType"]:
8286
"""
8387
Returns the enum member matching the given description (case-insensitive).
88+
Args:
89+
description (str): The description to match.
90+
Returns:
91+
Optional[DeductionReasonType]: The matching enum member, or None if not found.
8492
"""
8593
desc_lower = description.lower()
8694
for member in cls:
@@ -92,6 +100,10 @@ def by_description_case_insensitive(
92100
def by_deduction_code(cls, code: str) -> Optional["DeductionReasonType"]:
93101
"""
94102
Returns the enum member matching the given allowed value (deduction code).
103+
Args:
104+
code (str): The code to match.
105+
Returns:
106+
Optional[DeductionReasonType]: The matching enum member, or None if not found.
95107
"""
96108
code_upper = code.upper()
97109
for member in cls:
@@ -103,6 +115,10 @@ def by_deduction_code(cls, code: str) -> Optional["DeductionReasonType"]:
103115
def by_valid_value_id(cls, valid_value_id: int) -> Optional["DeductionReasonType"]:
104116
"""
105117
Returns the enum member matching the given valid value ID.
118+
Args:
119+
valid_value_id (str): The valid_value_id to match.
120+
Returns:
121+
Optional[DeductionReasonType]: The matching enum member, or None if not found.
106122
"""
107123
for member in cls:
108124
if member.valid_value_id == valid_value_id:

pages/screening_subject_search/advance_fobt_screening_episode_page.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ def check_advance_checkbox(self) -> None:
140140
self.advance_checkbox.check()
141141

142142
def click_amend_diagnosis_date_button(self) -> None:
143-
"""Click the 'Amend Diagnosis Date' button."""
143+
"""Checks the 'Advance FOBT' checkbox and clicks the 'Amend Diagnosis Date' button."""
144144
self.advance_checkbox_v2.check()
145145
self.click(self.amend_diagnosis_date_button)
146146

utils/sspi_change_steps.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@
1010

1111

1212
class SSPIChangeSteps:
13+
def __init__(self) -> None:
14+
self.subject_repo = SubjectRepository()
15+
1316
def sspi_update_to_change_dob_received(
1417
self, nhs_no: str, age_to_change_to: int
1518
) -> None:
@@ -45,7 +48,6 @@ def process_sspi_deduction_by_code(self, nhs_no: str, deduction_code: str) -> No
4548
if DeductionReasonType.by_deduction_code(deduction_code) is None:
4649
raise ValueError(f"Unknown Deduction Code: {deduction_code}")
4750

48-
subject_repo = SubjectRepository()
4951
pi_subject = PISubject().from_subject(subject)
5052

5153
if subject is not None:
@@ -67,7 +69,7 @@ def process_sspi_deduction_by_code(self, nhs_no: str, deduction_code: str) -> No
6769
elif deduction_code in ["LDN", "R/C"]:
6870
# Logical deletion requires a "superseded by" NHS number
6971
subject_criteria: Dict[str, str] = {"Screening Status": "Call"}
70-
superseded_subject = subject_repo.get_matching_subject(
72+
superseded_subject = self.subject_repo.get_matching_subject(
7173
subject_criteria, Subject(), User()
7274
)
7375
if not superseded_subject:
@@ -100,12 +102,11 @@ def reregister_subject_with_latest_gp_practice(self, nhs_no) -> None:
100102
method_name = "reregister_subject_with_latest_gp_practice"
101103
logging.debug(f"start: {method_name}()")
102104

103-
subject_repo = SubjectRepository()
104105
subject = Subject().populate_subject_object_from_nhs_no(nhs_no)
105106
pi_subject = PISubject().from_subject(subject)
106107

107108
if subject is not None:
108-
gp_code = subject_repo.get_latest_gp_practice_for_subject(nhs_no)
109+
gp_code = self.subject_repo.get_latest_gp_practice_for_subject(nhs_no)
109110
logging.debug(f"Set GP code to {gp_code} and remove all deduction details")
110111

111112
pi_subject.gp_practice_code = gp_code
@@ -132,13 +133,12 @@ def handle_update(
132133
"""
133134
logging.debug("start: handle_update(Subject, date)")
134135

135-
subject_repo = SubjectRepository()
136136
pi_subject.pi_reference = "AUTOMATED TEST"
137137
# Check if a date of birth change needs to be made first
138138
if birth_date is not None:
139139
pi_subject.birth_date = birth_date
140140

141141
# Run the update into the DB (SSPI updates are always run as automated process user 2)
142-
subject_repo.update_pi_subject(2, pi_subject)
142+
self.subject_repo.update_pi_subject(2, pi_subject)
143143

144144
logging.debug("exit: handle_update()")

0 commit comments

Comments
 (0)