Skip to content

Commit 35d9638

Browse files
ELI-615 | renamed best_iteration_result to iteration_result_summary
1 parent da3657b commit 35d9638

5 files changed

Lines changed: 29 additions & 27 deletions

File tree

src/eligibility_signposting_api/audit/audit_context.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@
1919
)
2020
from eligibility_signposting_api.audit.audit_service import AuditService
2121
from eligibility_signposting_api.model.eligibility_status import (
22-
BestIterationResult,
2322
CohortGroupResult,
2423
ConditionName,
2524
IterationResult,
25+
IterationResultSummary,
2626
MatchedActionDetail,
2727
Reason,
2828
RuleType,
@@ -63,13 +63,13 @@ def add_request_details(request: Request) -> None:
6363
@staticmethod
6464
def append_audit_condition(
6565
condition_name: ConditionName,
66-
best_iteration_result: BestIterationResult,
66+
iteration_result_summary: IterationResultSummary,
6767
action_detail: MatchedActionDetail,
6868
) -> None:
6969
audit_eligibility_cohorts, audit_eligibility_cohort_groups, audit_actions = [], [], []
70-
best_active_iteration = best_iteration_result.active_iteration
71-
best_candidate = best_iteration_result.iteration_result
72-
best_cohort_results = best_iteration_result.cohort_results
70+
best_active_iteration = iteration_result_summary.active_iteration
71+
best_candidate = iteration_result_summary.iteration_result
72+
best_cohort_results = iteration_result_summary.cohort_results
7373
filter_audit_rules, suitability_audit_rules = [], []
7474

7575
if best_cohort_results:
@@ -94,8 +94,8 @@ def append_audit_condition(
9494
audit_actions = AuditContext.create_audit_actions(action_detail.actions)
9595

9696
audit_condition = AuditCondition(
97-
campaign_id=best_iteration_result.campaign_id,
98-
campaign_version=best_iteration_result.campaign_version,
97+
campaign_id=iteration_result_summary.campaign_id,
98+
campaign_version=iteration_result_summary.campaign_version,
9999
iteration_id=best_active_iteration.id if best_active_iteration else None,
100100
iteration_version=best_active_iteration.version if best_active_iteration else None,
101101
condition_name=condition_name,

src/eligibility_signposting_api/model/eligibility_status.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ class IterationResult:
138138

139139

140140
@dataclass
141-
class BestIterationResult:
141+
class IterationResultSummary:
142142
iteration_result: IterationResult
143143
active_iteration: Iteration | None = None
144144
campaign_id: CampaignID | None = None

src/eligibility_signposting_api/services/calculators/eligibility_calculator.py

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@
1111
from eligibility_signposting_api.audit.audit_context import AuditContext
1212
from eligibility_signposting_api.model import campaign_config, eligibility_status
1313
from eligibility_signposting_api.model.eligibility_status import (
14-
BestIterationResult,
1514
CohortGroupResult,
1615
Condition,
1716
ConditionName,
1817
EligibilityStatus,
1918
IterationResult,
19+
IterationResultSummary,
2020
Reason,
2121
Status,
2222
StatusText,
@@ -94,21 +94,21 @@ def get_eligibility_status(
9494
)
9595
for condition_name, campaign in requested_cc_with_active_iteration:
9696
if campaign is None:
97-
continue
97+
continue # skipping as no active iteration was found.
9898

99-
best_iteration_result = self.get_iteration_result(campaign)
99+
iteration_result_summary = self.evaluate_iteration_result_summary(campaign)
100100

101101
matched_action_detail = self.action_rule_handler.get_actions(
102102
self.person,
103-
best_iteration_result.active_iteration,
104-
best_iteration_result.iteration_result,
103+
iteration_result_summary.active_iteration,
104+
iteration_result_summary.iteration_result,
105105
include_actions_flag=include_actions_flag,
106106
)
107107

108-
best_iteration_result = TokenProcessor.find_and_replace_tokens(self.person, best_iteration_result)
108+
iteration_result_summary = TokenProcessor.find_and_replace_tokens(self.person, iteration_result_summary)
109109
matched_action_detail = TokenProcessor.find_and_replace_tokens(self.person, matched_action_detail)
110110

111-
condition_results[condition_name] = best_iteration_result.iteration_result
111+
condition_results[condition_name] = iteration_result_summary.iteration_result
112112
condition_results[condition_name].actions = matched_action_detail.actions
113113

114114
condition: Condition = self.build_condition(
@@ -119,14 +119,16 @@ def get_eligibility_status(
119119

120120
AuditContext.append_audit_condition(
121121
condition_name,
122-
best_iteration_result,
122+
iteration_result_summary,
123123
matched_action_detail,
124124
)
125125

126126
# Consolidate all the results and return
127127
return eligibility_status.EligibilityStatus(conditions=final_result)
128128

129-
def get_iteration_result(self, campaign_with_active_iteration: CampaignConfig) -> BestIterationResult:
129+
def evaluate_iteration_result_summary(
130+
self, campaign_with_active_iteration: CampaignConfig
131+
) -> IterationResultSummary:
130132
active_iteration = campaign_with_active_iteration.current_iteration
131133
cohort_results: dict[CohortLabel, CohortGroupResult] = self.rule_processor.get_cohort_group_results(
132134
self.person, active_iteration
@@ -138,7 +140,7 @@ def get_iteration_result(self, campaign_with_active_iteration: CampaignConfig) -
138140
active_iteration.status_text, ConditionName(campaign_with_active_iteration.target), status
139141
)
140142

141-
return BestIterationResult(
143+
return IterationResultSummary(
142144
IterationResult(status, status_text, best_cohorts, []),
143145
active_iteration,
144146
campaign_with_active_iteration.id,

src/eligibility_signposting_api/services/processors/action_rule_handler.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,14 +27,14 @@ def get_actions(
2727
self,
2828
person: Person,
2929
active_iteration: Iteration | None,
30-
best_iteration_result: IterationResult,
30+
iteration_result: IterationResult,
3131
*,
3232
include_actions_flag: bool,
3333
) -> MatchedActionDetail:
3434
action_detail = MatchedActionDetail()
3535

3636
if active_iteration is not None and include_actions_flag:
37-
rule_type = best_iteration_result.status.get_action_rule_type()
37+
rule_type = iteration_result.status.get_action_rule_type()
3838
action_detail = self._handle(person, active_iteration, rule_type)
3939

4040
return action_detail

tests/unit/audit/test_audit_context.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@
1515
ActionCode,
1616
ActionDescription,
1717
ActionType,
18-
BestIterationResult,
1918
CohortGroupResult,
2019
ConditionName,
2120
InternalActionCode,
2221
IterationResult,
22+
IterationResultSummary,
2323
MatchedActionDetail,
2424
Reason,
2525
RuleCode,
@@ -147,7 +147,7 @@ def test_append_audit_condition_adds_condition_to_audit_log_on_g_for_actionable_
147147
campaign_config.RuleName("RedirectRuleName1"), campaign_config.RulePriority(1), suggested_actions
148148
)
149149

150-
best_iteration_results = BestIterationResult(
150+
iteration_result_summary = IterationResultSummary(
151151
iteration_result,
152152
iteration,
153153
campaign_details[0],
@@ -158,7 +158,7 @@ def test_append_audit_condition_adds_condition_to_audit_log_on_g_for_actionable_
158158
with app.app_context():
159159
g.audit_log = AuditEvent()
160160

161-
AuditContext.append_audit_condition(condition_name, best_iteration_results, matched_action_detail)
161+
AuditContext.append_audit_condition(condition_name, iteration_result_summary, matched_action_detail)
162162

163163
expected_audit_action = [
164164
AuditAction(
@@ -227,7 +227,7 @@ def test_should_append_audit_suppression_rules_for_actionable_status(app):
227227
)
228228
campaign_details = (CampaignID("CampaignID1"), CampaignVersion(123))
229229

230-
best_iteration_results = BestIterationResult(
230+
iteration_result_summary = IterationResultSummary(
231231
iteration_result,
232232
iteration,
233233
campaign_details[0],
@@ -238,7 +238,7 @@ def test_should_append_audit_suppression_rules_for_actionable_status(app):
238238
with app.app_context():
239239
g.audit_log = AuditEvent()
240240

241-
AuditContext.append_audit_condition(condition_name, best_iteration_results, MatchedActionDetail())
241+
AuditContext.append_audit_condition(condition_name, iteration_result_summary, MatchedActionDetail())
242242

243243
assert g.audit_log.response.condition, condition_name
244244
cond = g.audit_log.response.condition[0]
@@ -288,7 +288,7 @@ def test_should_append_audit_filter_rules_for_not_actionable_status(app):
288288
)
289289
campaign_details = (CampaignID("CampaignID1"), CampaignVersion(123))
290290

291-
best_iteration_results = BestIterationResult(
291+
iteration_result_summary = IterationResultSummary(
292292
iteration_result,
293293
iteration,
294294
campaign_details[0],
@@ -299,7 +299,7 @@ def test_should_append_audit_filter_rules_for_not_actionable_status(app):
299299
with app.app_context():
300300
g.audit_log = AuditEvent()
301301

302-
AuditContext.append_audit_condition(condition_name, best_iteration_results, MatchedActionDetail())
302+
AuditContext.append_audit_condition(condition_name, iteration_result_summary, MatchedActionDetail())
303303

304304
assert g.audit_log.response.condition, condition_name
305305
cond = g.audit_log.response.condition[0]

0 commit comments

Comments
 (0)