diff options
| author | Aymeric Augustin <aymeric.augustin@m4x.org> | 2013-09-21 22:50:33 +0200 |
|---|---|---|
| committer | Aymeric Augustin <aymeric.augustin@m4x.org> | 2013-09-21 23:11:04 +0200 |
| commit | e76dd4cd1a12f610698b8aa8854b0e0e1dfb21a2 (patch) | |
| tree | e5c30d639379e394d4a4273db550f560081d04e6 | |
| parent | ece8d6521771635fb5e15d1093524b4f848608fa (diff) | |
[1.6.x] Fixed #21074 -- Added tests for localized datetime fields.
Fields must render values in the current time zone.
This commit only contains tests because this ticket was just a symptom of
a regression from #18777 that was fixed separately.
Backport of 5444a9c from master.
| -rw-r--r-- | tests/timezones/forms.py | 9 | ||||
| -rw-r--r-- | tests/timezones/tests.py | 14 |
2 files changed, 22 insertions, 1 deletions
diff --git a/tests/timezones/forms.py b/tests/timezones/forms.py index 45fb1d080b..d99c9b77d5 100644 --- a/tests/timezones/forms.py +++ b/tests/timezones/forms.py @@ -8,7 +8,16 @@ class EventForm(forms.Form): class EventSplitForm(forms.Form): dt = forms.SplitDateTimeField() +class EventLocalizedForm(forms.Form): + dt = forms.DateTimeField(localize=True) + class EventModelForm(forms.ModelForm): class Meta: model = Event fields = '__all__' + +class EventLocalizedModelForm(forms.ModelForm): + class Meta: + model = Event + fields = '__all__' + localized_fields = '__all__' diff --git a/tests/timezones/tests.py b/tests/timezones/tests.py index 844bdb83fe..0233ea5029 100644 --- a/tests/timezones/tests.py +++ b/tests/timezones/tests.py @@ -27,7 +27,7 @@ from django.utils import timezone from django.utils.tzinfo import FixedOffset from django.utils.unittest import skipIf, skipUnless -from .forms import EventForm, EventSplitForm, EventModelForm +from .forms import EventForm, EventSplitForm, EventLocalizedForm, EventModelForm, EventLocalizedModelForm from .models import Event, MaybeEvent, Session, SessionEvent, Timestamp, AllDayEvent @@ -1037,11 +1037,23 @@ class NewFormsTests(TestCase): self.assertEqual(form.cleaned_data['dt'], datetime.datetime(2011, 9, 1, 10, 20, 30, tzinfo=UTC)) @requires_tz_support + def test_localized_form(self): + form = EventLocalizedForm(initial={'dt': datetime.datetime(2011, 9, 1, 13, 20, 30, tzinfo=EAT)}) + with timezone.override(ICT): + self.assertIn("2011-09-01 17:20:30", str(form)) + + @requires_tz_support def test_model_form(self): EventModelForm({'dt': '2011-09-01 13:20:30'}).save() e = Event.objects.get() self.assertEqual(e.dt, datetime.datetime(2011, 9, 1, 10, 20, 30, tzinfo=UTC)) + @requires_tz_support + def test_localized_model_form(self): + form = EventLocalizedModelForm(instance=Event(dt=datetime.datetime(2011, 9, 1, 13, 20, 30, tzinfo=EAT))) + with timezone.override(ICT): + self.assertIn("2011-09-01 17:20:30", str(form)) + @override_settings(DATETIME_FORMAT='c', TIME_ZONE='Africa/Nairobi', USE_L10N=False, USE_TZ=True, PASSWORD_HASHERS=('django.contrib.auth.hashers.SHA1PasswordHasher',)) |
