Skip to content

Commit c804777

Browse files
Use attribute type "PERSON", not "PERSON#5123456789".
1 parent 607f29a commit c804777

File tree

4 files changed

+10
-8
lines changed

4 files changed

+10
-8
lines changed

src/eligibility_signposting_api/services/eligibility_services.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ def get_attribute_value(iteration_rule: IterationRule, person_data: list[dict[st
7171
match iteration_rule.attribute_level:
7272
case RuleAttributeLevel.PERSON:
7373
person: dict[str, Any] | None = next(
74-
(r for r in person_data if r.get("ATTRIBUTE_TYPE", "").startswith("PERSON")), None
74+
(r for r in person_data if r.get("ATTRIBUTE_TYPE", "") == "PERSON"), None
7575
)
7676
attribute_value = person.get(iteration_rule.attribute_name) if person else None
7777
case _:

tests/integration/conftest.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ def persisted_person(eligibility_table: Any, faker: Faker) -> Generator[tuple[NH
229229
eligibility_table.put_item(
230230
Item={
231231
"NHS_NUMBER": f"PERSON#{nhs_number}",
232-
"ATTRIBUTE_TYPE": f"PERSON#{nhs_number}",
232+
"ATTRIBUTE_TYPE": "PERSON",
233233
"DATE_OF_BIRTH": date_of_birth.strftime("%Y%m%d"),
234234
"POSTCODE": postcode,
235235
}
@@ -238,7 +238,7 @@ def persisted_person(eligibility_table: Any, faker: Faker) -> Generator[tuple[NH
238238
Item={"NHS_NUMBER": f"PERSON#{nhs_number}", "ATTRIBUTE_TYPE": "COHORTS", "COHORT_MAP": {}}
239239
)
240240
yield nhs_number, date_of_birth, postcode
241-
eligibility_table.delete_item(Key={"NHS_NUMBER": f"PERSON#{nhs_number}", "ATTRIBUTE_TYPE": f"PERSON#{nhs_number}"})
241+
eligibility_table.delete_item(Key={"NHS_NUMBER": f"PERSON#{nhs_number}", "ATTRIBUTE_TYPE": "PERSON"})
242242
eligibility_table.delete_item(Key={"NHS_NUMBER": f"PERSON#{nhs_number}", "ATTRIBUTE_TYPE": "COHORTS"})
243243

244244

tests/integration/repo/test_eligibility_repo.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ def test_person_found(eligibility_table: Any, persisted_person: tuple[NHSNumber,
2323
contains_inanyorder(
2424
{
2525
"NHS_NUMBER": f"PERSON#{nhs_number}",
26-
"ATTRIBUTE_TYPE": f"PERSON#{nhs_number}",
26+
"ATTRIBUTE_TYPE": "PERSON",
2727
"DATE_OF_BIRTH": date_of_birth.strftime("%Y%m%d"),
2828
"POSTCODE": postcode,
2929
},

tests/unit/services/test_eligibility_services.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,10 +58,11 @@ def test_simple_rule_eligible(faker: Faker):
5858
return_value=[
5959
{
6060
"NHS_NUMBER": f"PERSON#{nhs_number}",
61-
"ATTRIBUTE_TYPE": f"PERSON#{nhs_number}",
61+
"ATTRIBUTE_TYPE": "PERSON",
6262
"DATE_OF_BIRTH": date_of_birth.strftime("%Y%m%d"),
6363
"POSTCODE": postcode,
64-
}
64+
},
65+
{"NHS_NUMBER": f"PERSON#{nhs_number}", "ATTRIBUTE_TYPE": "COHORT", "COHORT_MAP": {}},
6566
]
6667
)
6768
rules_repo.get_campaign_configs = MagicMock(
@@ -113,10 +114,11 @@ def test_simple_rule_ineligible(faker: Faker):
113114
return_value=[
114115
{
115116
"NHS_NUMBER": f"PERSON#{nhs_number}",
116-
"ATTRIBUTE_TYPE": f"PERSON#{nhs_number}",
117+
"ATTRIBUTE_TYPE": "PERSON",
117118
"DATE_OF_BIRTH": date_of_birth.strftime("%Y%m%d"),
118119
"POSTCODE": postcode,
119-
}
120+
},
121+
{"NHS_NUMBER": f"PERSON#{nhs_number}", "ATTRIBUTE_TYPE": "COHORT", "COHORT_MAP": {}},
120122
]
121123
)
122124
rules_repo.get_campaign_configs = MagicMock(

0 commit comments

Comments
 (0)