diff options
author | Michael Manfre | 2022-11-20 13:14:49 -0500 |
---|---|---|
committer | GitHub | 2022-11-20 11:14:49 -0700 |
commit | f8f4fa8665ef61caf5266c980046305f3b779c6d (patch) | |
tree | db66d7e5e83b6d828db38f246b154e75a0d087b2 /activities | |
parent | 6b7082a194a19579430e426ffc4bce52ffd336e9 (diff) | |
download | takahe-f8f4fa8665ef61caf5266c980046305f3b779c6d.tar.gz takahe-f8f4fa8665ef61caf5266c980046305f3b779c6d.tar.bz2 takahe-f8f4fa8665ef61caf5266c980046305f3b779c6d.zip |
Fix bug in timedeltashort and add tests
Diffstat (limited to 'activities')
-rw-r--r-- | activities/templatetags/activity_tags.py | 4 | ||||
-rw-r--r-- | activities/tests/templatetags/__init__.py | 0 | ||||
-rw-r--r-- | activities/tests/templatetags/test_activity_tags.py | 21 |
3 files changed, 23 insertions, 2 deletions
diff --git a/activities/templatetags/activity_tags.py b/activities/templatetags/activity_tags.py index cbbae57..571e2d6 100644 --- a/activities/templatetags/activity_tags.py +++ b/activities/templatetags/activity_tags.py @@ -26,8 +26,8 @@ def timedeltashort(value: datetime.datetime): hours = seconds // (60 * 60) text = f"{hours:0n}h" elif days < 365: - text = f"{days:0n}h" + text = f"{days:0n}d" else: - years = days // 365.25 + years = max(days // 365.25, 1) text = f"{years:0n}y" return text diff --git a/activities/tests/templatetags/__init__.py b/activities/tests/templatetags/__init__.py new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/activities/tests/templatetags/__init__.py diff --git a/activities/tests/templatetags/test_activity_tags.py b/activities/tests/templatetags/test_activity_tags.py new file mode 100644 index 0000000..987c008 --- /dev/null +++ b/activities/tests/templatetags/test_activity_tags.py @@ -0,0 +1,21 @@ +from datetime import timedelta + +from django.utils import timezone + +from activities.templatetags.activity_tags import timedeltashort + + +def test_timedeltashort_regress(): + assert timedeltashort(None) == "" + assert timedeltashort("") == "" + + value = timezone.now() + + assert timedeltashort(value) == "0s" + assert timedeltashort(value - timedelta(seconds=2)) == "2s" + assert timedeltashort(value - timedelta(minutes=2)) == "2m" + assert timedeltashort(value - timedelta(hours=2)) == "2h" + assert timedeltashort(value - timedelta(days=2)) == "2d" + assert timedeltashort(value - timedelta(days=364)) == "364d" + assert timedeltashort(value - timedelta(days=365)) == "1y" + assert timedeltashort(value - timedelta(days=366)) == "1y" |