#8510 closed (fixed)
Date filtering no longer works with integers
Reported by: | Owned by: | Malcolm Tredinnick | |
---|---|---|---|
Component: | Database layer (models, ORM) | Version: | dev |
Severity: | Keywords: | ||
Cc: | boobsd@… | Triage Stage: | Accepted |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
Tested with r8507, on Debian Etch, sqlite and Python 2.4.4
====================================================================== FAIL: Doctest: modeltests.reserved_names.models.__test__.API_TESTS ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/django/test/_doctest.py", line 2180, in runTest raise self.failureException(self.format_failure(new.getvalue())) AssertionError: Failed doctest test for modeltests.reserved_names.models.__test__.API_TESTS File "/srv/lib/django-trunk/tests/modeltests/reserved_names/models.py", line unknown line number, in API_TESTS ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/modeltests/reserved_names/models.py", line ?, in modeltests.reserved_names.models.__test__.API_TESTS Failed example: Thing.objects.filter(where__month=1) Expected: [<Thing: a>] Got: [] ====================================================================== FAIL: Doctest: modeltests.basic.models.__test__.API_TESTS ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/django/test/_doctest.py", line 2180, in runTest raise self.failureException(self.format_failure(new.getvalue())) AssertionError: Failed doctest test for modeltests.basic.models.__test__.API_TESTS File "/srv/lib/django-trunk/tests/modeltests/basic/models.py", line unknown line number, in API_TESTS ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/modeltests/basic/models.py", line ?, in modeltests.basic.models.__test__.API_TESTS Failed example: Article.objects.get(pub_date__year=2005, pub_date__month=7) Exception raised: Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/django/test/_doctest.py", line 1267, in __run compileflags, 1) in test.globs File "<doctest modeltests.basic.models.__test__.API_TESTS[14]>", line 1, in ? Article.objects.get(pub_date__year=2005, pub_date__month=7) File "/usr/lib/python2.4/site-packages/django/db/models/manager.py", line 81, in get return self.get_query_set().get(*args, **kwargs) File "/usr/lib/python2.4/site-packages/django/db/models/query.py", line 300, in get raise self.model.DoesNotExist("%s matching query does not exist." DoesNotExist: Article matching query does not exist. ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/modeltests/basic/models.py", line ?, in modeltests.basic.models.__test__.API_TESTS Failed example: Article.objects.get(pub_date__year=2005, pub_date__month=7, pub_date__day=28) Exception raised: Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/django/test/_doctest.py", line 1267, in __run compileflags, 1) in test.globs File "<doctest modeltests.basic.models.__test__.API_TESTS[15]>", line 1, in ? Article.objects.get(pub_date__year=2005, pub_date__month=7, pub_date__day=28) File "/usr/lib/python2.4/site-packages/django/db/models/manager.py", line 81, in get return self.get_query_set().get(*args, **kwargs) File "/usr/lib/python2.4/site-packages/django/db/models/query.py", line 300, in get raise self.model.DoesNotExist("%s matching query does not exist." DoesNotExist: Article matching query does not exist. ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/modeltests/basic/models.py", line ?, in modeltests.basic.models.__test__.API_TESTS Failed example: Article.objects.filter(pub_date__year=2005, pub_date__month=7) Expected: [<Article: Area woman programs in Python>] Got: [] ====================================================================== FAIL: Doctest: regressiontests.model_regress.models.__test__.API_TESTS ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/django/test/_doctest.py", line 2180, in runTest raise self.failureException(self.format_failure(new.getvalue())) AssertionError: Failed doctest test for regressiontests.model_regress.models.__test__.API_TESTS File "/srv/lib/django-trunk/tests/regressiontests/model_regress/models.py", line unknown line number, in API_TESTS ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/regressiontests/model_regress/models.py", line ?, in regressiontests.model_regress.models.__test__.API_TESTS Failed example: [p.when for p in Party.objects.filter(when__month = 1)] Expected: [datetime.date(1999, 1, 1)] Got: [] ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/regressiontests/model_regress/models.py", line ?, in regressiontests.model_regress.models.__test__.API_TESTS Failed example: [p.when for p in Party.objects.filter(when__month = 12)] Expected: [datetime.date(1999, 12, 31), datetime.date(1998, 12, 31)] Got: [] ====================================================================== FAIL: Doctest: regressiontests.mail.tests ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/django/test/_doctest.py", line 2180, in runTest raise self.failureException(self.format_failure(new.getvalue())) AssertionError: Failed doctest test for regressiontests.mail.tests File "/srv/lib/django-trunk/tests/regressiontests/mail/tests.py", line 1, in tests ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/regressiontests/mail/tests.py", line 12, in regressiontests.mail.tests Failed example: message['Subject'] Expected: <email.header.Header instance...> Got: <email.Header.Header instance at 0x2aaaabbda710> ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/regressiontests/mail/tests.py", line 27, in regressiontests.mail.tests Failed example: message['Subject'] Expected: <email.header.Header instance...> Got: <email.Header.Header instance at 0x2aaaabbe4290> ---------------------------------------------------------------------- Ran 449 tests in 303.805s FAILED (failures=4)
Change History (13)
comment:1 by , 16 years ago
Summary: | Tests fail with r8507 → Tests fail after [8494] |
---|
comment:2 by , 16 years ago
comment:4 by , 16 years ago
So [8494] actually triggered this (see below). And I opened another ticket for the other failure, see #8511.
====================================================================== FAIL: Doctest: modeltests.reserved_names.models.__test__.API_TESTS ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/django/test/_doctest.py", line 2180, in runTest raise self.failureException(self.format_failure(new.getvalue())) AssertionError: Failed doctest test for modeltests.reserved_names.models.__test__.API_TESTS File "/srv/lib/django-trunk/tests/modeltests/reserved_names/models.py", line unknown line number, in API_TESTS ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/modeltests/reserved_names/models.py", line ?, in modeltests.reserved_names.models.__test__.API_TESTS Failed example: Thing.objects.filter(where__month=1) Expected: [<Thing: a>] Got: [] ====================================================================== FAIL: Doctest: modeltests.basic.models.__test__.API_TESTS ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/django/test/_doctest.py", line 2180, in runTest raise self.failureException(self.format_failure(new.getvalue())) AssertionError: Failed doctest test for modeltests.basic.models.__test__.API_TESTS File "/srv/lib/django-trunk/tests/modeltests/basic/models.py", line unknown line number, in API_TESTS ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/modeltests/basic/models.py", line ?, in modeltests.basic.models.__test__.API_TESTS Failed example: Article.objects.get(pub_date__year=2005, pub_date__month=7) Exception raised: Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/django/test/_doctest.py", line 1267, in __run compileflags, 1) in test.globs File "<doctest modeltests.basic.models.__test__.API_TESTS[14]>", line 1, in ? Article.objects.get(pub_date__year=2005, pub_date__month=7) File "/usr/lib/python2.4/site-packages/django/db/models/manager.py", line 81, in get return self.get_query_set().get(*args, **kwargs) File "/usr/lib/python2.4/site-packages/django/db/models/query.py", line 300, in get raise self.model.DoesNotExist("%s matching query does not exist." DoesNotExist: Article matching query does not exist. ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/modeltests/basic/models.py", line ?, in modeltests.basic.models.__test__.API_TESTS Failed example: Article.objects.get(pub_date__year=2005, pub_date__month=7, pub_date__day=28) Exception raised: Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/django/test/_doctest.py", line 1267, in __run compileflags, 1) in test.globs File "<doctest modeltests.basic.models.__test__.API_TESTS[15]>", line 1, in ? Article.objects.get(pub_date__year=2005, pub_date__month=7, pub_date__day=28) File "/usr/lib/python2.4/site-packages/django/db/models/manager.py", line 81, in get return self.get_query_set().get(*args, **kwargs) File "/usr/lib/python2.4/site-packages/django/db/models/query.py", line 300, in get raise self.model.DoesNotExist("%s matching query does not exist." DoesNotExist: Article matching query does not exist. ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/modeltests/basic/models.py", line ?, in modeltests.basic.models.__test__.API_TESTS Failed example: Article.objects.filter(pub_date__year=2005, pub_date__month=7) Expected: [<Article: Area woman programs in Python>] Got: [] ====================================================================== FAIL: Doctest: regressiontests.model_regress.models.__test__.API_TESTS ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/python2.4/site-packages/django/test/_doctest.py", line 2180, in runTest raise self.failureException(self.format_failure(new.getvalue())) AssertionError: Failed doctest test for regressiontests.model_regress.models.__test__.API_TESTS File "/srv/lib/django-trunk/tests/regressiontests/model_regress/models.py", line unknown line number, in API_TESTS ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/regressiontests/model_regress/models.py", line ?, in regressiontests.model_regress.models.__test__.API_TESTS Failed example: [p.when for p in Party.objects.filter(when__month = 1)] Expected: [datetime.date(1999, 1, 1)] Got: [] ---------------------------------------------------------------------- File "/srv/lib/django-trunk/tests/regressiontests/model_regress/models.py", line ?, in regressiontests.model_regress.models.__test__.API_TESTS Failed example: [p.when for p in Party.objects.filter(when__month = 12)] Expected: [datetime.date(1999, 12, 31), datetime.date(1998, 12, 31)] Got: []
comment:5 by , 16 years ago
Cc: | added |
---|
Yes, after [8494]
MyModel.objects.get(pub_date__month=11, pub_date__day=18, slug=blahblah)
return DoesNotExist exception, but before [8494] this works correct.
comment:6 by , 16 years ago
Triage Stage: | Unreviewed → Accepted |
---|
follow-up: 8 comment:7 by , 16 years ago
It appears that after [8494] month and day filtering work with strings but not integers, so the following returns the desired objects:
MyModel.objects.get(pub_date__month='11', pub_date__day='18')
comment:8 by , 16 years ago
comment:9 by , 16 years ago
Component: | Uncategorized → Database wrapper |
---|
comment:10 by , 16 years ago
Summary: | Tests fail after [8494] → Date filtering no longer works with integers |
---|
Both strings and integers should be valid there. It's not immediately clear why it's stopped working, but it is a bug.
Changing bug title to something more self-explanatory about the real problem.
comment:11 by , 16 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
comment:12 by , 16 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Hmmm, some errors disappear below r8494 but this is still there with r8493: