From 522dd021b2738d15723448808606491063ff2e70 Mon Sep 17 00:00:00 2001 From: Ahmed Nassar Date: Tue, 8 Apr 2025 09:49:09 +0200 Subject: [PATCH] Fixed #35986 -- Fixed test classes with @translation.override decorator. Co-authored-by: Simon Charette --- django/templatetags/tz.py | 4 ++-- tests/forms_tests/tests/test_input_formats.py | 18 +++++++++++++++--- tests/timezones/tests.py | 8 ++++++-- 3 files changed, 23 insertions(+), 7 deletions(-) diff --git a/django/templatetags/tz.py b/django/templatetags/tz.py index 5efd3c7fcf..222c6c52df 100644 --- a/django/templatetags/tz.py +++ b/django/templatetags/tz.py @@ -1,5 +1,5 @@ import zoneinfo -from datetime import datetime, tzinfo +from datetime import datetime, tzinfo, UTC from django.template import Library, Node, TemplateSyntaxError from django.utils import timezone @@ -31,7 +31,7 @@ def utc(value): """ Convert a datetime to UTC. """ - return do_timezone(value, datetime.UTC) + return do_timezone(value, UTC) @register.filter("timezone") diff --git a/tests/forms_tests/tests/test_input_formats.py b/tests/forms_tests/tests/test_input_formats.py index c5023d8d10..30ca53ba4b 100644 --- a/tests/forms_tests/tests/test_input_formats.py +++ b/tests/forms_tests/tests/test_input_formats.py @@ -118,9 +118,13 @@ class LocalizedTimeTests(SimpleTestCase): self.assertEqual(text, "13:30:00") -@translation.override(None) @override_settings(TIME_INPUT_FORMATS=["%I:%M:%S %p", "%I:%M %p"]) class CustomTimeInputFormatsTests(SimpleTestCase): + @classmethod + def setUpClass(cls): + cls.enterClassContext(translation.override(None)) + super().setUpClass() + def test_timeField(self): "TimeFields can parse dates in the default format" f = forms.TimeField() @@ -431,9 +435,13 @@ class LocalizedDateTests(SimpleTestCase): self.assertEqual(text, "21.12.2010") -@translation.override(None) @override_settings(DATE_INPUT_FORMATS=["%d.%m.%Y", "%d-%m-%Y"]) class CustomDateInputFormatsTests(SimpleTestCase): + @classmethod + def setUpClass(cls): + cls.enterClassContext(translation.override(None)) + super().setUpClass() + def test_dateField(self): "DateFields can parse dates in the default format" f = forms.DateField() @@ -752,9 +760,13 @@ class LocalizedDateTimeTests(SimpleTestCase): self.assertEqual(text, "21.12.2010 13:30:00") -@translation.override(None) @override_settings(DATETIME_INPUT_FORMATS=["%I:%M:%S %p %d/%m/%Y", "%I:%M %p %d-%m-%Y"]) class CustomDateTimeInputFormatsTests(SimpleTestCase): + @classmethod + def setUpClass(cls): + cls.enterClassContext(translation.override(None)) + super().setUpClass() + def test_dateTimeField(self): "DateTimeFields can parse dates in the default format" f = forms.DateTimeField() diff --git a/tests/timezones/tests.py b/tests/timezones/tests.py index 815da17026..fd8b49fdef 100644 --- a/tests/timezones/tests.py +++ b/tests/timezones/tests.py @@ -921,9 +921,13 @@ class SerializationTests(SimpleTestCase): self.assertEqual(obj.dt, dt) -@translation.override(None) @override_settings(DATETIME_FORMAT="c", TIME_ZONE="Africa/Nairobi", USE_TZ=True) class TemplateTests(SimpleTestCase): + @classmethod + def setUpClass(cls): + cls.enterClassContext(translation.override(None)) + super().setUpClass() + @requires_tz_support def test_localtime_templatetag_and_filters(self): """ @@ -1324,7 +1328,6 @@ class NewFormsTests(TestCase): self.assertIn("2011-09-01 17:20:30", str(form)) -@translation.override(None) @override_settings( DATETIME_FORMAT="c", TIME_ZONE="Africa/Nairobi", @@ -1334,6 +1337,7 @@ class NewFormsTests(TestCase): class AdminTests(TestCase): @classmethod def setUpTestData(cls): + cls.enterClassContext(translation.override(None)) cls.u1 = User.objects.create_user( password="secret", last_login=datetime.datetime(2007, 5, 30, 13, 20, 10, tzinfo=UTC),