summaryrefslogtreecommitdiff
path: root/tests/utils_tests
diff options
context:
space:
mode:
authornessita <124304+nessita@users.noreply.github.com>2023-04-13 13:16:33 -0300
committerGitHub <noreply@github.com>2023-04-13 13:16:33 -0300
commit813015d67e2557fa859a07930a9becec4e5f64a0 (patch)
treea4f970c99ddf26a631cbd72c5a55857d97e1d256 /tests/utils_tests
parent09767420879b7542e48589e9003966ed31279e7b (diff)
downloaddjango-813015d67e2557fa859a07930a9becec4e5f64a0.tar.gz
Fixed #34483 -- Fixed timesince()/timeuntil() with timezone-aware dates and interval less than 1 day.
Regression in 8d67e16493c903adc9d049141028bc0fff43f8c8. Thanks Lorenzo Peña for the report.
Diffstat (limited to 'tests/utils_tests')
-rw-r--r--tests/utils_tests/test_timesince.py17
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/utils_tests/test_timesince.py b/tests/utils_tests/test_timesince.py
index 242e582f9e..d54fce2be6 100644
--- a/tests/utils_tests/test_timesince.py
+++ b/tests/utils_tests/test_timesince.py
@@ -1,4 +1,5 @@
import datetime
+import zoneinfo
from django.test import TestCase
from django.test.utils import override_settings, requires_tz_support
@@ -241,6 +242,22 @@ class TimesinceTests(TestCase):
with self.assertRaisesMessage(ValueError, msg):
timesince(self.t, self.t, depth=0)
+ @requires_tz_support
+ def test_less_than_a_day_with_zoneinfo(self):
+ now_with_zoneinfo = timezone.now().astimezone(
+ zoneinfo.ZoneInfo(key="Asia/Kathmandu") # UTC+05:45
+ )
+ tests = [
+ (now_with_zoneinfo, "0\xa0minutes"),
+ (now_with_zoneinfo - self.onemicrosecond, "0\xa0minutes"),
+ (now_with_zoneinfo - self.onesecond, "0\xa0minutes"),
+ (now_with_zoneinfo - self.oneminute, "1\xa0minute"),
+ (now_with_zoneinfo - self.onehour, "1\xa0hour"),
+ ]
+ for value, expected in tests:
+ with self.subTest(value):
+ self.assertEqual(timesince(value), expected)
+
@requires_tz_support
@override_settings(USE_TZ=True)