Skip to content

Commit c8ceb3f

Browse files
committed
review
1 parent ab4d59a commit c8ceb3f

File tree

2 files changed

+14
-5
lines changed

2 files changed

+14
-5
lines changed

src/hope/apps/utils/age_at_registration.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,10 @@ def calculate_age_at_registration(
1111
try:
1212
birth_date_parsed = parser.parse(birth_date).date()
1313
created_at_date = created_at.date()
14-
# return None if birth_date is future date
15-
if birth_date_parsed > created_at_date:
14+
calculated_age_years = relativedelta(created_at_date, birth_date_parsed).years
15+
# return None if age is less then 0
16+
if calculated_age_years > 0:
1617
return None
17-
return relativedelta(created_at_date, birth_date_parsed).years
18+
return calculated_age_years
1819
except ValueError:
1920
return None

tests/unit/apps/utils/test_age_at_registration.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,22 @@
33
from hope.apps.utils.age_at_registration import calculate_age_at_registration
44

55

6-
def test_calculate_age_at_registration() -> None:
7-
# ValueError
6+
def test_calculate_age_at_registration_value_error() -> None:
87
result = calculate_age_at_registration(datetime(2026, 10, 10), "ValueErrorHere")
98
assert result is None
109

10+
11+
def test_calculate_age_at_registration_future_birthday() -> None:
1112
# birthdate in future
1213
result = calculate_age_at_registration(datetime(2026, 10, 10), "9999-10-10")
1314
assert result is None
1415

16+
17+
def test_calculate_age_at_registration_zero() -> None:
18+
result = calculate_age_at_registration(datetime(2023, 12, 12), "2023-12-12")
19+
assert result == 0
20+
21+
22+
def test_calculate_age_at_registration() -> None:
1523
result = calculate_age_at_registration(datetime(2025, 10, 10), "2000-10-10")
1624
assert result == 25

0 commit comments

Comments
 (0)