summaryrefslogtreecommitdiff
path: root/tests/regressiontests
diff options
context:
space:
mode:
authorAymeric Augustin <aymeric.augustin@m4x.org>2013-02-10 16:15:49 +0100
committerAymeric Augustin <aymeric.augustin@m4x.org>2013-02-16 09:19:04 +0100
commite74e207cce54802f897adcb42149440ee154821e (patch)
tree9522926264ec70b91e31d1cd5f70dcc27760694e /tests/regressiontests
parent91c26eadc9b4efa5399ec0f6c84b56a3f8eb84f4 (diff)
Fixed #17260 -- Added time zone aware aggregation and lookups.
Thanks Carl Meyer for the review. Squashed commit of the following: commit 4f290bdb60b7d8534abf4ca901bd0844612dcbda Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Wed Feb 13 21:21:30 2013 +0100 Used '0:00' instead of 'UTC' which doesn't always exist in Oracle. Thanks Ian Kelly for the suggestion. commit 01b6366f3ce67d57a58ca8f25e5be77911748638 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Wed Feb 13 13:38:43 2013 +0100 Made tzname a parameter of datetime_extract/trunc_sql. This is required to work around a bug in Oracle. commit 924a144ef8a80ba4daeeafbe9efaa826566e9d02 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Wed Feb 13 14:47:44 2013 +0100 Added support for parameters in SELECT clauses. commit b4351d2890cd1090d3ff2d203fe148937324c935 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Mon Feb 11 22:30:22 2013 +0100 Documented backwards incompatibilities in the two previous commits. commit 91ef84713c81bd455f559dacf790e586d08cacb9 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Mon Feb 11 09:42:31 2013 +0100 Used QuerySet.datetimes for the admin's date_hierarchy. commit 0d0de288a5210fa106cd4350961eb2006535cc5c Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Mon Feb 11 09:29:38 2013 +0100 Used QuerySet.datetimes in date-based generic views. commit 9c0859ff7c0b00734afe7fc15609d43d83215072 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sun Feb 10 21:43:25 2013 +0100 Implemented QuerySet.datetimes on Oracle. commit 68ab511a4ffbd2b811bf5da174d47e4dd90f28fc Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sun Feb 10 21:43:14 2013 +0100 Implemented QuerySet.datetimes on MySQL. commit 22d52681d347a8cdf568dc31ed032cbc61d049ef Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sun Feb 10 21:42:29 2013 +0100 Implemented QuerySet.datetimes on SQLite. commit f6800fd04c93722b45f9236976389e0b2fe436f5 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sun Feb 10 21:43:03 2013 +0100 Implemented QuerySet.datetimes on PostgreSQL. commit 0c829c23f4cf4d6804cadcc93032dd4c26b8c65e Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sun Feb 10 21:41:08 2013 +0100 Added datetime-handling infrastructure in the ORM layers. commit 104d82a7778cf3f0f5d03dfa53709c26df45daad Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Mon Feb 11 10:05:55 2013 +0100 Updated null_queries tests to avoid clashing with the __second lookup. commit c01bbb32358201b3ac8cb4291ef87b7612a2b8e6 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sun Feb 10 23:07:41 2013 +0100 Updated tests of .dates(). Replaced .dates() by .datetimes() for DateTimeFields. Replaced dates with datetimes in the expected output for DateFields. commit 50fb7a52462fecf0127b38e7f3df322aeb287c43 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sun Feb 10 21:40:09 2013 +0100 Updated and added tests for QuerySet.datetimes. commit a8451a5004c437190e264667b1e6fb8acc3c1eeb Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sun Feb 10 22:34:46 2013 +0100 Documented the new time lookups and updated the date lookups. commit 29413eab2bd1d5e004598900c0dadc0521bbf4d3 Author: Aymeric Augustin <aymeric.augustin@m4x.org> Date: Sun Feb 10 16:15:49 2013 +0100 Documented QuerySet.datetimes and updated QuerySet.dates.
Diffstat (limited to 'tests/regressiontests')
-rw-r--r--tests/regressiontests/aggregation_regress/tests.py4
-rw-r--r--tests/regressiontests/backends/tests.py6
-rw-r--r--tests/regressiontests/dates/models.py2
-rw-r--r--tests/regressiontests/dates/tests.py38
-rw-r--r--tests/regressiontests/datetimes/__init__.py0
-rw-r--r--tests/regressiontests/datetimes/models.py28
-rw-r--r--tests/regressiontests/datetimes/tests.py83
-rw-r--r--tests/regressiontests/extra_regress/tests.py5
-rw-r--r--tests/regressiontests/generic_views/dates.py15
-rw-r--r--tests/regressiontests/model_inheritance_regress/tests.py4
-rw-r--r--tests/regressiontests/null_queries/models.py3
-rw-r--r--tests/regressiontests/null_queries/tests.py6
-rw-r--r--tests/regressiontests/queries/tests.py24
13 files changed, 168 insertions, 50 deletions
diff --git a/tests/regressiontests/aggregation_regress/tests.py b/tests/regressiontests/aggregation_regress/tests.py
index 596ebbfaec..076567538b 100644
--- a/tests/regressiontests/aggregation_regress/tests.py
+++ b/tests/regressiontests/aggregation_regress/tests.py
@@ -546,8 +546,8 @@ class AggregationTests(TestCase):
qs = Book.objects.annotate(num_authors=Count('authors')).filter(num_authors=2).dates('pubdate', 'day')
self.assertQuerysetEqual(
qs, [
- datetime.datetime(1995, 1, 15, 0, 0),
- datetime.datetime(2007, 12, 6, 0, 0)
+ datetime.date(1995, 1, 15),
+ datetime.date(2007, 12, 6),
],
lambda b: b
)
diff --git a/tests/regressiontests/backends/tests.py b/tests/regressiontests/backends/tests.py
index 313fdc8351..fbe5026e12 100644
--- a/tests/regressiontests/backends/tests.py
+++ b/tests/regressiontests/backends/tests.py
@@ -144,11 +144,11 @@ class DateQuotingTest(TestCase):
updated = datetime.datetime(2010, 2, 20)
models.SchoolClass.objects.create(year=2009, last_updated=updated)
years = models.SchoolClass.objects.dates('last_updated', 'year')
- self.assertEqual(list(years), [datetime.datetime(2010, 1, 1, 0, 0)])
+ self.assertEqual(list(years), [datetime.date(2010, 1, 1)])
- def test_django_extract(self):
+ def test_django_date_extract(self):
"""
- Test the custom ``django_extract method``, in particular against fields
+ Test the custom ``django_date_extract method``, in particular against fields
which clash with strings passed to it (e.g. 'day') - see #12818__.
__: http://code.djangoproject.com/ticket/12818
diff --git a/tests/regressiontests/dates/models.py b/tests/regressiontests/dates/models.py
index e4bffb7199..23350755e7 100644
--- a/tests/regressiontests/dates/models.py
+++ b/tests/regressiontests/dates/models.py
@@ -1,3 +1,5 @@
+from __future__ import unicode_literals
+
from django.db import models
from django.utils.encoding import python_2_unicode_compatible
diff --git a/tests/regressiontests/dates/tests.py b/tests/regressiontests/dates/tests.py
index de28cac436..6c02d597de 100644
--- a/tests/regressiontests/dates/tests.py
+++ b/tests/regressiontests/dates/tests.py
@@ -1,6 +1,6 @@
from __future__ import absolute_import
-from datetime import datetime
+import datetime
from django.test import TestCase
@@ -11,32 +11,32 @@ class DatesTests(TestCase):
def test_related_model_traverse(self):
a1 = Article.objects.create(
title="First one",
- pub_date=datetime(2005, 7, 28),
+ pub_date=datetime.date(2005, 7, 28),
)
a2 = Article.objects.create(
title="Another one",
- pub_date=datetime(2010, 7, 28),
+ pub_date=datetime.date(2010, 7, 28),
)
a3 = Article.objects.create(
title="Third one, in the first day",
- pub_date=datetime(2005, 7, 28),
+ pub_date=datetime.date(2005, 7, 28),
)
a1.comments.create(
text="Im the HULK!",
- pub_date=datetime(2005, 7, 28),
+ pub_date=datetime.date(2005, 7, 28),
)
a1.comments.create(
text="HULK SMASH!",
- pub_date=datetime(2005, 7, 29),
+ pub_date=datetime.date(2005, 7, 29),
)
a2.comments.create(
text="LMAO",
- pub_date=datetime(2010, 7, 28),
+ pub_date=datetime.date(2010, 7, 28),
)
a3.comments.create(
text="+1",
- pub_date=datetime(2005, 8, 29),
+ pub_date=datetime.date(2005, 8, 29),
)
c = Category.objects.create(name="serious-news")
@@ -44,31 +44,31 @@ class DatesTests(TestCase):
self.assertQuerysetEqual(
Comment.objects.dates("article__pub_date", "year"), [
- datetime(2005, 1, 1),
- datetime(2010, 1, 1),
+ datetime.date(2005, 1, 1),
+ datetime.date(2010, 1, 1),
],
lambda d: d,
)
self.assertQuerysetEqual(
Comment.objects.dates("article__pub_date", "month"), [
- datetime(2005, 7, 1),
- datetime(2010, 7, 1),
+ datetime.date(2005, 7, 1),
+ datetime.date(2010, 7, 1),
],
lambda d: d
)
self.assertQuerysetEqual(
Comment.objects.dates("article__pub_date", "day"), [
- datetime(2005, 7, 28),
- datetime(2010, 7, 28),
+ datetime.date(2005, 7, 28),
+ datetime.date(2010, 7, 28),
],
lambda d: d
)
self.assertQuerysetEqual(
Article.objects.dates("comments__pub_date", "day"), [
- datetime(2005, 7, 28),
- datetime(2005, 7, 29),
- datetime(2005, 8, 29),
- datetime(2010, 7, 28),
+ datetime.date(2005, 7, 28),
+ datetime.date(2005, 7, 29),
+ datetime.date(2005, 8, 29),
+ datetime.date(2010, 7, 28),
],
lambda d: d
)
@@ -77,7 +77,7 @@ class DatesTests(TestCase):
)
self.assertQuerysetEqual(
Category.objects.dates("articles__pub_date", "day"), [
- datetime(2005, 7, 28),
+ datetime.date(2005, 7, 28),
],
lambda d: d,
)
diff --git a/tests/regressiontests/datetimes/__init__.py b/tests/regressiontests/datetimes/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/regressiontests/datetimes/__init__.py
diff --git a/tests/regressiontests/datetimes/models.py b/tests/regressiontests/datetimes/models.py
new file mode 100644
index 0000000000..f21376aa1c
--- /dev/null
+++ b/tests/regressiontests/datetimes/models.py
@@ -0,0 +1,28 @@
+from __future__ import unicode_literals
+
+from django.db import models
+from django.utils.encoding import python_2_unicode_compatible
+
+
+@python_2_unicode_compatible
+class Article(models.Model):
+ title = models.CharField(max_length=100)
+ pub_date = models.DateTimeField()
+
+ categories = models.ManyToManyField("Category", related_name="articles")
+
+ def __str__(self):
+ return self.title
+
+@python_2_unicode_compatible
+class Comment(models.Model):
+ article = models.ForeignKey(Article, related_name="comments")
+ text = models.TextField()
+ pub_date = models.DateTimeField()
+ approval_date = models.DateTimeField(null=True)
+
+ def __str__(self):
+ return 'Comment to %s (%s)' % (self.article.title, self.pub_date)
+
+class Category(models.Model):
+ name = models.CharField(max_length=255)
diff --git a/tests/regressiontests/datetimes/tests.py b/tests/regressiontests/datetimes/tests.py
new file mode 100644
index 0000000000..58cb060f6b
--- /dev/null
+++ b/tests/regressiontests/datetimes/tests.py
@@ -0,0 +1,83 @@
+from __future__ import absolute_import
+
+import datetime
+
+from django.test import TestCase
+
+from .models import Article, Comment, Category
+
+
+class DateTimesTests(TestCase):
+ def test_related_model_traverse(self):
+ a1 = Article.objects.create(
+ title="First one",
+ pub_date=datetime.datetime(2005, 7, 28, 9, 0, 0),
+ )
+ a2 = Article.objects.create(
+ title="Another one",
+ pub_date=datetime.datetime(2010, 7, 28, 10, 0, 0),
+ )
+ a3 = Article.objects.create(
+ title="Third one, in the first day",
+ pub_date=datetime.datetime(2005, 7, 28, 17, 0, 0),
+ )
+
+ a1.comments.create(
+ text="Im the HULK!",
+ pub_date=datetime.datetime(2005, 7, 28, 9, 30, 0),
+ )
+ a1.comments.create(
+ text="HULK SMASH!",
+ pub_date=datetime.datetime(2005, 7, 29, 1, 30, 0),
+ )
+ a2.comments.create(
+ text="LMAO",
+ pub_date=datetime.datetime(2010, 7, 28, 10, 10, 10),
+ )
+ a3.comments.create(
+ text="+1",
+ pub_date=datetime.datetime(2005, 8, 29, 10, 10, 10),
+ )
+
+ c = Category.objects.create(name="serious-news")
+ c.articles.add(a1, a3)
+
+ self.assertQuerysetEqual(
+ Comment.objects.datetimes("article__pub_date", "year"), [
+ datetime.datetime(2005, 1, 1),
+ datetime.datetime(2010, 1, 1),
+ ],
+ lambda d: d,
+ )
+ self.assertQuerysetEqual(
+ Comment.objects.datetimes("article__pub_date", "month"), [
+ datetime.datetime(2005, 7, 1),
+ datetime.datetime(2010, 7, 1),
+ ],
+ lambda d: d
+ )
+ self.assertQuerysetEqual(
+ Comment.objects.datetimes("article__pub_date", "day"), [
+ datetime.datetime(2005, 7, 28),
+ datetime.datetime(2010, 7, 28),
+ ],
+ lambda d: d
+ )
+ self.assertQuerysetEqual(
+ Article.objects.datetimes("comments__pub_date", "day"), [
+ datetime.datetime(2005, 7, 28),
+ datetime.datetime(2005, 7, 29),
+ datetime.datetime(2005, 8, 29),
+ datetime.datetime(2010, 7, 28),
+ ],
+ lambda d: d
+ )
+ self.assertQuerysetEqual(
+ Article.objects.datetimes("comments__approval_date", "day"), []
+ )
+ self.assertQuerysetEqual(
+ Category.objects.datetimes("articles__pub_date", "day"), [
+ datetime.datetime(2005, 7, 28),
+ ],
+ lambda d: d,
+ )
diff --git a/tests/regressiontests/extra_regress/tests.py b/tests/regressiontests/extra_regress/tests.py
index 1bc6789edd..194b250c99 100644
--- a/tests/regressiontests/extra_regress/tests.py
+++ b/tests/regressiontests/extra_regress/tests.py
@@ -166,8 +166,9 @@ class ExtraRegressTests(TestCase):
)
self.assertQuerysetEqual(
- RevisionableModel.objects.extra(select={"the_answer": 'id'}).dates('when', 'month'),
- ['datetime.datetime(2008, 9, 1, 0, 0)']
+ RevisionableModel.objects.extra(select={"the_answer": 'id'}).datetimes('when', 'month'),
+ [datetime.datetime(2008, 9, 1, 0, 0)],
+ transform=lambda d: d,
)
def test_values_with_extra(self):
diff --git a/tests/regressiontests/generic_views/dates.py b/tests/regressiontests/generic_views/dates.py
index 0c565daf9f..844b10bbcc 100644
--- a/tests/regressiontests/generic_views/dates.py
+++ b/tests/regressiontests/generic_views/dates.py
@@ -4,7 +4,7 @@ import time
import datetime
from django.core.exceptions import ImproperlyConfigured
-from django.test import TestCase
+from django.test import TestCase, skipUnlessDBFeature
from django.test.utils import override_settings
from django.utils import timezone
from django.utils.unittest import skipUnless
@@ -119,6 +119,7 @@ class ArchiveIndexViewTests(TestCase):
self.assertEqual(res.status_code, 200)
@requires_tz_support
+ @skipUnlessDBFeature('has_zoneinfo_database')
@override_settings(USE_TZ=True, TIME_ZONE='Africa/Nairobi')
def test_aware_datetime_archive_view(self):
BookSigning.objects.create(event_date=datetime.datetime(2008, 4, 2, 12, 0, tzinfo=timezone.utc))
@@ -140,7 +141,7 @@ class YearArchiveViewTests(TestCase):
def test_year_view(self):
res = self.client.get('/dates/books/2008/')
self.assertEqual(res.status_code, 200)
- self.assertEqual(list(res.context['date_list']), [datetime.datetime(2008, 10, 1)])
+ self.assertEqual(list(res.context['date_list']), [datetime.date(2008, 10, 1)])
self.assertEqual(res.context['year'], datetime.date(2008, 1, 1))
self.assertTemplateUsed(res, 'generic_views/book_archive_year.html')
@@ -151,7 +152,7 @@ class YearArchiveViewTests(TestCase):
def test_year_view_make_object_list(self):
res = self.client.get('/dates/books/2006/make_object_list/')
self.assertEqual(res.status_code, 200)
- self.assertEqual(list(res.context['date_list']), [datetime.datetime(2006, 5, 1)])
+ self.assertEqual(list(res.context['date_list']), [datetime.date(2006, 5, 1)])
self.assertEqual(list(res.context['book_list']), list(Book.objects.filter(pubdate__year=2006)))
self.assertEqual(list(res.context['object_list']), list(Book.objects.filter(pubdate__year=2006)))
self.assertTemplateUsed(res, 'generic_views/book_archive_year.html')
@@ -181,7 +182,7 @@ class YearArchiveViewTests(TestCase):
res = self.client.get('/dates/books/%s/allow_future/' % year)
self.assertEqual(res.status_code, 200)
- self.assertEqual(list(res.context['date_list']), [datetime.datetime(year, 1, 1)])
+ self.assertEqual(list(res.context['date_list']), [datetime.date(year, 1, 1)])
def test_year_view_paginated(self):
res = self.client.get('/dates/books/2006/paginated/')
@@ -204,6 +205,7 @@ class YearArchiveViewTests(TestCase):
res = self.client.get('/dates/booksignings/2008/')
self.assertEqual(res.status_code, 200)
+ @skipUnlessDBFeature('has_zoneinfo_database')
@override_settings(USE_TZ=True, TIME_ZONE='Africa/Nairobi')
def test_aware_datetime_year_view(self):
BookSigning.objects.create(event_date=datetime.datetime(2008, 4, 2, 12, 0, tzinfo=timezone.utc))
@@ -225,7 +227,7 @@ class MonthArchiveViewTests(TestCase):
res = self.client.get('/dates/books/2008/oct/')
self.assertEqual(res.status_code, 200)
self.assertTemplateUsed(res, 'generic_views/book_archive_month.html')
- self.assertEqual(list(res.context['date_list']), [datetime.datetime(2008, 10, 1)])
+ self.assertEqual(list(res.context['date_list']), [datetime.date(2008, 10, 1)])
self.assertEqual(list(res.context['book_list']),
list(Book.objects.filter(pubdate=datetime.date(2008, 10, 1))))
self.assertEqual(res.context['month'], datetime.date(2008, 10, 1))
@@ -268,7 +270,7 @@ class MonthArchiveViewTests(TestCase):
# allow_future = True, valid future month
res = self.client.get('/dates/books/%s/allow_future/' % urlbit)
self.assertEqual(res.status_code, 200)
- self.assertEqual(res.context['date_list'][0].date(), b.pubdate)
+ self.assertEqual(res.context['date_list'][0], b.pubdate)
self.assertEqual(list(res.context['book_list']), [b])
self.assertEqual(res.context['month'], future)
@@ -328,6 +330,7 @@ class MonthArchiveViewTests(TestCase):
res = self.client.get('/dates/booksignings/2008/apr/')
self.assertEqual(res.status_code, 200)
+ @skipUnlessDBFeature('has_zoneinfo_database')
@override_settings(USE_TZ=True, TIME_ZONE='Africa/Nairobi')
def test_aware_datetime_month_view(self):
BookSigning.objects.create(event_date=datetime.datetime(2008, 2, 1, 12, 0, tzinfo=timezone.utc))
diff --git a/tests/regressiontests/model_inheritance_regress/tests.py b/tests/regressiontests/model_inheritance_regress/tests.py
index 6855d70071..8f741bbb7f 100644
--- a/tests/regressiontests/model_inheritance_regress/tests.py
+++ b/tests/regressiontests/model_inheritance_regress/tests.py
@@ -134,8 +134,8 @@ class ModelInheritanceTest(TestCase):
obj = Child.objects.create(
name='child',
created=datetime.datetime(2008, 6, 26, 17, 0, 0))
- dates = list(Child.objects.dates('created', 'month'))
- self.assertEqual(dates, [datetime.datetime(2008, 6, 1, 0, 0)])
+ datetimes = list(Child.objects.datetimes('created', 'month'))
+ self.assertEqual(datetimes, [datetime.datetime(2008, 6, 1, 0, 0)])
def test_issue_7276(self):
# Regression test for #7276: calling delete() on a model with
diff --git a/tests/regressiontests/null_queries/models.py b/tests/regressiontests/null_queries/models.py
index 25560fbab7..9070dd4873 100644
--- a/tests/regressiontests/null_queries/models.py
+++ b/tests/regressiontests/null_queries/models.py
@@ -28,4 +28,5 @@ class OuterB(models.Model):
class Inner(models.Model):
first = models.ForeignKey(OuterA)
- second = models.ForeignKey(OuterB, null=True)
+ # second would clash with the __second lookup.
+ third = models.ForeignKey(OuterB, null=True)
diff --git a/tests/regressiontests/null_queries/tests.py b/tests/regressiontests/null_queries/tests.py
index 47c99fbcb3..93e72d55d8 100644
--- a/tests/regressiontests/null_queries/tests.py
+++ b/tests/regressiontests/null_queries/tests.py
@@ -55,17 +55,17 @@ class NullQueriesTests(TestCase):
"""
obj = OuterA.objects.create()
self.assertQuerysetEqual(
- OuterA.objects.filter(inner__second=None),
+ OuterA.objects.filter(inner__third=None),
['<OuterA: OuterA object>']
)
self.assertQuerysetEqual(
- OuterA.objects.filter(inner__second__data=None),
+ OuterA.objects.filter(inner__third__data=None),
['<OuterA: OuterA object>']
)
inner_obj = Inner.objects.create(first=obj)
self.assertQuerysetEqual(
- Inner.objects.filter(first__inner__second=None),
+ Inner.objects.filter(first__inner__third=None),
['<Inner: Inner object>']
)
diff --git a/tests/regressiontests/queries/tests.py b/tests/regressiontests/queries/tests.py
index 9d223970a0..ea54d18451 100644
--- a/tests/regressiontests/queries/tests.py
+++ b/tests/regressiontests/queries/tests.py
@@ -550,37 +550,37 @@ class Queries1Tests(BaseQuerysetTest):
def test_tickets_6180_6203(self):
# Dates with limits and/or counts
self.assertEqual(Item.objects.count(), 4)
- self.assertEqual(Item.objects.dates('created', 'month').count(), 1)
- self.assertEqual(Item.objects.dates('created', 'day').count(), 2)
- self.assertEqual(len(Item.objects.dates('created', 'day')), 2)
- self.assertEqual(Item.objects.dates('created', 'day')[0], datetime.datetime(2007, 12, 19, 0, 0))
+ self.assertEqual(Item.objects.datetimes('created', 'month').count(), 1)
+ self.assertEqual(Item.objects.datetimes('created', 'day').count(), 2)
+ self.assertEqual(len(Item.objects.datetimes('created', 'day')), 2)
+ self.assertEqual(Item.objects.datetimes('created', 'day')[0], datetime.datetime(2007, 12, 19, 0, 0))
def test_tickets_7087_12242(self):
# Dates with extra select columns
self.assertQuerysetEqual(
- Item.objects.dates('created', 'day').extra(select={'a': 1}),
+ Item.objects.datetimes('created', 'day').extra(select={'a': 1}),
['datetime.datetime(2007, 12, 19, 0, 0)', 'datetime.datetime(2007, 12, 20, 0, 0)']
)
self.assertQuerysetEqual(
- Item.objects.extra(select={'a': 1}).dates('created', 'day'),
+ Item.objects.extra(select={'a': 1}).datetimes('created', 'day'),
['datetime.datetime(2007, 12, 19, 0, 0)', 'datetime.datetime(2007, 12, 20, 0, 0)']
)
name="one"
self.assertQuerysetEqual(
- Item.objects.dates('created', 'day').extra(where=['name=%s'], params=[name]),
+ Item.objects.datetimes('created', 'day').extra(where=['name=%s'], params=[name]),
['datetime.datetime(2007, 12, 19, 0, 0)']
)
self.assertQuerysetEqual(
- Item.objects.extra(where=['name=%s'], params=[name]).dates('created', 'day'),
+ Item.objects.extra(where=['name=%s'], params=[name]).datetimes('created', 'day'),
['datetime.datetime(2007, 12, 19, 0, 0)']
)
def test_ticket7155(self):
# Nullable dates
self.assertQuerysetEqual(
- Item.objects.dates('modified', 'day'),
+ Item.objects.datetimes('modified', 'day'),
['datetime.datetime(2007, 12, 19, 0, 0)']
)
@@ -699,7 +699,7 @@ class Queries1Tests(BaseQuerysetTest):
)
# Pickling of DateQuerySets used to fail
- qs = Item.objects.dates('created', 'month')
+ qs = Item.objects.datetimes('created', 'month')
_ = pickle.loads(pickle.dumps(qs))
def test_ticket9997(self):
@@ -1235,8 +1235,8 @@ class Queries3Tests(BaseQuerysetTest):
# field
self.assertRaisesMessage(
AssertionError,
- "'name' isn't a DateField.",
- Item.objects.dates, 'name', 'month'
+ "'name' isn't a DateTimeField.",
+ Item.objects.datetimes, 'name', 'month'
)
class Queries4Tests(BaseQuerysetTest):