mirror of
https://git.hiabuto.net/C3MA/CCMA.git
synced 2026-07-01 03:04:52 +02:00
Update member UI and related app changes
This commit is contained in:
@@ -113,3 +113,28 @@ def test_housekeeper_reports_invalid_member_dates(tmp_path) -> None:
|
||||
assert len(invalid) == 1
|
||||
assert invalid[0].member_id == member.member_id
|
||||
assert "Geburtsdatum" in invalid[0].detail
|
||||
|
||||
|
||||
def test_housekeeper_can_treat_selected_member_fields_as_optional(tmp_path) -> None:
|
||||
repository = MemberRepository(tmp_path)
|
||||
repository.initialize()
|
||||
member = repository.create_member(first_name="Optional", last_name="Fields")
|
||||
member.status = "active"
|
||||
repository.save_member(member)
|
||||
settings = HousekeeperSettings.from_values(
|
||||
birthday_days_before=0,
|
||||
birthday_days_after=0,
|
||||
anniversary_days_before=0,
|
||||
anniversary_days_after=0,
|
||||
anniversary_intervals="1Y",
|
||||
optional_member_fields=("nickname", "email", "phone", "birth_date"),
|
||||
)
|
||||
|
||||
findings = Housekeeper(repository, settings).run(today=date(2026, 6, 21))
|
||||
|
||||
codes = {finding.code for finding in findings}
|
||||
assert "missing_birth_date" not in codes
|
||||
assert "missing_member_field:nickname" not in codes
|
||||
assert "missing_member_field:email" not in codes
|
||||
assert "missing_member_field:phone" not in codes
|
||||
assert "missing_member_field:street" in codes
|
||||
|
||||
Reference in New Issue
Block a user