summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAymeric Augustin <aymeric.augustin@m4x.org>2012-02-27 21:15:25 +0000
committerAymeric Augustin <aymeric.augustin@m4x.org>2012-02-27 21:15:25 +0000
commitce88b57b9aca0325e5b90944019f602a92f93475 (patch)
treeb26b62ac775c44519b2a37a7348621c88d4f86a1 /tests
parent7061da514ada660a7b6c34e7eccf3940afec67fa (diff)
Fixed #17755 -- Ensured datetime objects that bypass the model layer (for instance, in raw SQL queries) are converted to UTC before sending them to the database when time zone support is enabled. Thanks Anssi for the report.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17596 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'tests')
-rw-r--r--tests/modeltests/timezones/tests.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/modeltests/timezones/tests.py b/tests/modeltests/timezones/tests.py
index 818405971c..a8d2c0c332 100644
--- a/tests/modeltests/timezones/tests.py
+++ b/tests/modeltests/timezones/tests.py
@@ -263,6 +263,15 @@ class LegacyDatabaseTests(BaseDateTimeTests):
self.assertQuerysetEqual(Event.objects.dates('dt', 'day'),
[datetime.datetime(2011, 1, 1)], transform=lambda d: d)
+ def test_raw_sql(self):
+ # Regression test for #17755
+ dt = datetime.datetime(2011, 9, 1, 13, 20, 30)
+ event = Event.objects.create(dt=dt)
+ self.assertQuerysetEqual(
+ Event.objects.raw('SELECT * FROM timezones_event WHERE dt = %s', [dt]),
+ [event],
+ transform=lambda d: d)
+
LegacyDatabaseTests = override_settings(USE_TZ=False)(LegacyDatabaseTests)
@@ -473,6 +482,15 @@ class NewDatabaseTests(BaseDateTimeTests):
datetime.datetime(2011, 1, 1, tzinfo=UTC)],
transform=lambda d: d)
+ def test_raw_sql(self):
+ # Regression test for #17755
+ dt = datetime.datetime(2011, 9, 1, 13, 20, 30, tzinfo=EAT)
+ event = Event.objects.create(dt=dt)
+ self.assertQuerysetEqual(
+ Event.objects.raw('SELECT * FROM timezones_event WHERE dt = %s', [dt]),
+ [event],
+ transform=lambda d: d)
+
def test_null_datetime(self):
# Regression for #17294
e = MaybeEvent.objects.create()