Tim Graham
1c3a6cec2a
Refs #28211 -- Added a test for ANDing empty Q()'s.
...
This test passes to due some logic in Node.add().
2017-05-25 09:02:13 -04:00
Simon Charette
4acae21846
Fixed #24254 -- Fixed queries using the __in lookup with querysets using distinct() and order_by().
...
Thanks Tim for the review.
2017-05-11 21:50:07 -04:00
Simon Charette
8ef35468b6
Fixed #28101 -- Fixed a regression with nested __in subquery lookups and to_field.
...
Thanks Kristian Klette for the report and Tim for the help.
2017-04-23 00:21:27 -04:00
Mariusz Felisiak
054a44d6f0
Used NotSupportedError instead of DatabaseError in SQLCompiler.as_sql().
2017-04-10 12:49:27 -04:00
Mariusz Felisiak
f42c7cc87b
Refs #21160 -- Replaced DatabaseFeatures.supports_1000_query_parameters by a DatabaseFeatures.max_query_params.
2017-03-24 18:37:03 +01:00
Bo Marchman
9bbb6e2d25
Fixed #26522 -- Fixed a nondeterministic AssertionError in QuerySet combining.
...
Thanks Andrew Brown for the test case.
2017-03-06 13:40:17 -05:00
Ian Foote
508b5debfb
Refs #11964 -- Made Q objects deconstructible.
2017-02-23 20:47:48 -05:00
Vytis Banaitis
3dcc351691
Refs #23919 -- Used yield from.
2017-02-23 20:06:01 -05:00
François Freitag
e124d2da94
Fixed #26551 -- Fixed negated Q() queries that span relations.
...
Prevented queries from reusing trimmed joins.
2017-02-09 11:20:33 -05:00
Tim Graham
29f607927f
Fixed spelling of "nonexistent".
2017-02-03 08:01:45 -05:00
Vytis Banaitis
8838d4dd49
Refs #23919 -- Replaced kwargs.pop() with keyword-only arguments.
2017-02-01 11:41:56 -05:00
Vytis Banaitis
d1bab24e01
Refs #23919 , #27778 -- Removed obsolete mentions of unicode.
2017-01-26 08:19:27 -05:00
chillaranand
d6eaf7c018
Refs #23919 -- Replaced super(ClassName, self) with super().
2017-01-25 12:23:46 -05:00
Tim Graham
d170c63351
Refs #23919 -- Removed misc references to Python 2.
2017-01-21 20:02:00 -05:00
Simon Charette
cecc079168
Refs #23919 -- Stopped inheriting from object to define new style classes.
2017-01-19 08:39:46 +01:00
Claude Paroz
2b281cc35e
Refs #23919 -- Removed most of remaining six usage
...
Thanks Tim Graham for the review.
2017-01-18 21:33:28 +01:00
Claude Paroz
7b2f2e74ad
Refs #23919 -- Removed six.<various>_types usage
...
Thanks Tim Graham and Simon Charette for the reviews.
2017-01-18 20:18:46 +01:00
Claude Paroz
c716fe8782
Refs #23919 -- Removed six.PY2/PY3 usage
...
Thanks Tim Graham for the review.
2017-01-18 16:21:28 +01:00
Claude Paroz
f3c43ad1fd
Refs #23919 -- Removed python_2_unicode_compatible decorator usage
2017-01-18 13:44:34 +01:00
Claude Paroz
d7b9aaa366
Refs #23919 -- Removed encoding preambles and future imports
2017-01-18 09:55:19 +01:00
Florian Apolloner
84c1826ded
Fixed #27718 -- Added QuerySet.union(), intersection(), difference().
...
Thanks Mariusz Felisiak for review and Oracle assistance.
Thanks Tim Graham for review and writing docs.
2017-01-14 08:32:07 -05:00
Josh Smeaton
bcce6bb7c7
Changed a test to be consistent when run in parallel.
...
This particular test was sometimes failing when running the test suite
in parallel. The `id` was different depending on the order the tests
were run. The test was incorrectly comparing model primary keys rather
than ensuring they didn't change.
2017-01-14 15:41:49 +11:00
Ramin Farajpour Cami
0a63ef3f61
Fixed #27463 -- Fixed E741 flake8 warnings.
2016-11-14 17:40:28 -05:00
za
321e94fa41
Refs #27392 -- Removed "Tests that", "Ensures that", etc. from test docstrings.
2016-11-10 21:30:21 -05:00
Tim Graham
b679a3cdb1
Tested QuerySet compatibility check.
...
cdfdcf4b70
missed this test.
2016-10-14 08:51:04 -04:00
Tim Graham
4cfccc713a
Tested invalid QuerySet.order_by() arguments.
2016-10-13 21:49:19 -04:00
Tim Graham
0627858ada
Fixed a couple ordering dependent tests on Oracle broken by refs #27203 .
2016-09-13 13:57:10 -04:00
Mads Jensen
0c1f71635f
Fixed #27203 -- Replaced assertQuerysetEqual(..., lambda o: o) with assertSequenceEqual().
2016-09-13 10:07:37 -04:00
Adam Chainz
652bcc6f5f
Refs #25415 -- Fixed invalid models in the test suite.
2016-09-09 17:16:42 -04:00
Chris Lamb
97513269d7
Refs #26983 -- Added test for isnull lookup to CharField with primary_key=True.
2016-08-17 21:08:15 -04:00
Johannes Dollinger
46509cf13d
Moved EmpytResultSet to django.core.exceptions.
...
This removes the need for some inner imports.
2016-08-08 10:43:34 -04:00
Claude Paroz
272eccf7ff
Fixed #26983 -- Fixed isnull filtering on ForeignKey with to_field
...
Thanks weidwonder for the report.
2016-08-04 16:05:21 +02:00
Simon Charette
082c52dbed
Refs #25774 , #26348 -- Allowed Trunc functions to operate with time fields.
...
Thanks Josh for the amazing testing setup and Tim for the review.
2016-07-08 12:35:34 -04:00
Tim Graham
c9ae09addf
Replaced use of TestCase.fail() with assertRaises().
...
Also removed try/except/fail antipattern that hides exceptions.
2016-06-28 11:21:26 -04:00
Jon Dufresne
4f336f6652
Fixed #26747 -- Used more specific assertions in the Django test suite.
2016-06-16 14:19:18 -04:00
Josh Smeaton
2a4af0ea43
Fixed #25774 -- Refactor datetime expressions into public API
2016-05-18 20:14:58 +10:00
Claude Paroz
388bb5bd9a
Fixed #22936 -- Obsoleted Field.get_prep_lookup()/get_db_prep_lookup()
...
Thanks Tim Graham for completing the initial patch.
2016-05-04 20:02:01 +02:00
Claude Paroz
188883048e
Fixed wrong field data type in queries test
2016-04-23 20:26:52 +02:00
Tim Graham
92053acbb9
Fixed E128 flake8 warnings in tests/.
2016-04-08 10:12:33 -04:00
Tim Graham
2cd2d18851
Fixed W503 flake8 warnings.
2016-04-04 17:14:26 -04:00
Tim Graham
1c8c0837c6
Sorted single letter imports per the latest version of isort.
2016-03-28 11:45:31 -04:00
Jason Parrott
4c1c93032f
Fixed #26373 -- Fixed reverse lookup crash with a ForeignKey to_field in a subquery.
2016-03-19 17:54:29 -04:00
Anssi Kääriäinen
46ecfb9b3a
Fixed #26196 -- Made sure __in lookups use to_field as default.
...
Thanks Simon Charette for the test.
2016-02-11 11:09:08 -05:00
Hasan
04de436932
Made multiline assertRaises* conform to flake8's E128 rule.
2016-02-04 19:14:10 -05:00
Hasan
26ad01719d
Refs #26022 -- Replaced six.assertRaisesRegex with assertRaisesMessage as appropriate.
2016-01-29 13:37:33 -05:00
Hasan
253adc2b8a
Refs #26022 -- Used context manager version of assertRaisesMessage in tests.
2016-01-29 13:03:39 -05:00
Hasan
3d0dcd7f5a
Refs #26022 -- Used context manager version of assertRaises in tests.
2016-01-29 12:32:18 -05:00
Sergey Fedoseev
69b69f6d60
Fixed #25894 -- Fixed evaluation of zero-length slices of QuerySet.values().
2015-12-15 07:29:35 -05:00
Josh Soref
93452a70e8
Fixed many spelling mistakes in code, comments, and docs.
2015-12-03 12:48:24 -05:00
Tim Graham
9c5e272860
Fixed #25550 -- Deprecated direct assignment to the reverse side of a related set.
2015-10-27 07:57:15 -04:00
Dražen Odobašić
b1e33ceced
Fixed #23395 -- Limited line lengths to 119 characters.
2015-09-12 11:40:50 -04:00
Renato Oliveira
e3720b990a
Fixed #25382 -- Removed obsolete references to DateQuerySet.
2015-09-11 12:16:06 -04:00
Tim Graham
2dc9ec5616
Fixed #24525 -- Fixed AssertionError in some complex queries.
...
Thanks Anssi Kääriäinen for providing the solution.
2015-09-05 07:51:17 -04:00
Tim Graham
233b46f931
Fixed #19263 -- Fixed crash when filtering using __in and an empty QuerySet.
...
Thanks Marcin Biernat for the initial patch and tests.
2015-09-04 07:44:36 -04:00
Maxime Lorant
5153a3bfdc
Fixed #25331 -- Removed trailing blank lines in docstrings.
2015-08-31 17:37:21 -04:00
Tim Graham
75b5de8d5f
Refs #23266 -- Fixed ticket number reference in a queries test.
2015-08-17 17:37:07 -04:00
Simon Charette
12f91f6ebd
Used skipUnlessDBFeature where appropriate.
2015-08-08 11:27:06 -04:00
Flavio Curella
c2e70f0265
Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField
2015-07-27 18:28:13 -04:00
Anssi Kääriäinen
baa732ac9f
Refs #23622 -- Added tests to ensure ordering is retained for distinct on fields subqueries.
...
The ticket was already fixed by
b68212f539
.
Thanks to Beauhurst for commissioning the work on this ticket.
2015-07-20 10:20:21 -04:00
Anssi Kääriäinen
6a9a9e50f2
Fixed test with incorrect assumption about pk values.
...
The test results were dependent on the order in which the
tests were run.
2015-07-20 10:20:21 -04:00
Anssi Kääriäinen
76ac07a909
Refs #24090 -- Added a test for multi-table inheritance + subqueries.
...
Ticket #24090 was already fixed by
b68212f539
, this commit adds tests to
verify this is indeed the case.
Thanks to Beauhurst for commissioning the work on this ticket.
2015-07-13 13:13:54 -04:00
Simon Charette
11e6bf9bdf
Fixed a CaptureQueriesContext usage in queries tests.
2015-07-09 16:00:53 -04:00
Simon Charette
3b0cdb1410
Added a regression test for get() ordering clearing.
2015-07-09 16:00:52 -04:00
Tim Graham
47fcbe506c
Fixed flake8 warnings on Python 3.
2015-06-15 11:27:09 -04:00
Aric Coady
9c2d8cde77
Fixed #24719 -- Restored the ability to use interators as queryset related object filters.
2015-04-28 10:51:27 -04:00
Anssi Kääriäinen
355c5edd93
Fixed #24605 -- Fixed incorrect reference to alias in subquery.
...
Thanks to charettes and priidukull for investigating the issue, and to
kurevin for the report.
2015-04-16 09:22:00 -04:00
Alex Wilson
99d40c6f65
Fixed #24277 -- Added exception when dict used in QuerySet filtering
2015-04-14 13:28:53 -04:00
Anssi Kääriäinen
b68212f539
Refs #24267 -- Implemented lookups for related fields
...
Previously related fields didn't implement get_lookup, instead
related fields were treated specially. This commit removed some of
the special handling. In particular, related fields return Lookup
instances now, too.
Other notable changes in this commit is removal of support for
annotations in names_to_path().
2015-03-25 08:05:22 -04:00
Michael Blatherwick
00e667728b
Fixed #23697 -- Improved ForeignObject.get_lookup_constraint() error message.
2015-03-23 10:31:57 -04:00
Tim Graham
0ed7d15563
Sorted imports with isort; refs #23860 .
2015-02-06 08:16:28 -05:00
Anssi Kääriäinen
20b74b10be
Added a test for refs #24279
...
This issue was fixed in afe0bb7b13
.
2015-02-06 07:43:59 -05:00
Anssi Kääriäinen
7145c8a62a
Removed EverythingNode
...
At the same time, made sure that empty nodes in where clause match
everything.
2015-02-04 09:26:40 -05:00
Loic Bistuer
4c3bfe9053
Fixed #24211 -- Removed ValuesQuerySet() and ValuesListQuerySet().
...
Thanks Anssi Kääriäinen, Marc Tamlyn, and Tim Graham for the reviews.
2015-01-30 22:02:58 +07:00
Adam Taylor
039465a6a7
Fixed typos in code comments.
2015-01-20 12:18:03 -05:00
Tim Graham
2cd00424c4
Removed support for callable QuerySet arguments per deprecation timeline; refs #11629 .
2015-01-18 14:01:25 -05:00
Anssi Kääriäinen
0c7633178f
Fixed #24020 -- Refactored SQL compiler to use expressions
...
Refactored compiler SELECT, GROUP BY and ORDER BY generation.
While there, also refactored select_related() implementation
(get_cached_row() and get_klass_info() are now gone!).
Made get_db_converters() method work on expressions instead of
internal_type. This allows the backend converters to target
specific expressions if need be.
Added query.context, this can be used to set per-query state.
Also changed the signature of database converters. They now accept
context as an argument.
2015-01-08 14:07:54 -05:00
Daniel Pyrathon
fb48eb0581
Fixed #12663 -- Formalized the Model._meta API for retrieving fields.
...
Thanks to Russell Keith-Magee for mentoring this Google Summer of
Code 2014 project and everyone else who helped with the patch!
2015-01-06 19:25:12 -05:00
Tim Graham
837fc2d8cd
Fixed a queries test on Python 2 broken after importing six.moves.range().
2014-12-31 09:50:47 -05:00
Tim Graham
63dee96cc7
Fixed test from refs #23758 .
2014-12-31 09:19:04 -05:00
Piotr Pawlaczek
41fc1c0b5e
Fixed #23758 -- Allowed more than 5 levels of subqueries
...
Refactored bump_prefix() to avoid infinite loop and allow more than
than 5 subquires by extending the alphabet to use multi-letters.
2014-12-31 08:48:28 -05:00
Diego Guimarães
222699d224
Refs #23947 -- Fixed queries test execution order dependency.
...
Specify an id to avoid conflict with objects created in setUpTestData.
2014-12-15 12:25:55 -05:00
Thomas Chaumeny
26dd518b5c
Refactored some tests to take advantage of refs #20392 .
2014-12-03 10:37:12 -05:00
Anssi Kääriäinen
ab89414f40
Fixed #23853 -- Added Join class to replace JoinInfo
...
Also removed Query.join_map. This structure was used to speed up join
reuse calculation. Initial benchmarking shows that this isn't actually
needed. If there are use cases where the removal has real-world
performance implications, it should be relatively straightforward to
reintroduce it as map {alias: [Join-like objects]}.
2014-11-28 07:30:26 -05:00
Anssi Kääriäinen
5c481db295
Fixed #23605 -- Fixed nested subquery regression
...
Added relabeled_clone() method to sql.Query to fix the problem. It
manifested itself in rare cases where at least double nested subquery's
filter condition might target non-existing alias.
Thanks to Trac alias ris for reporting the problem.
2014-11-20 13:38:08 -05:00
Josh Smeaton
f61256da3a
Renamed qn to compiler
2014-11-16 13:19:34 +01:00
Berker Peksag
f7969b0920
Fixed #23620 -- Used more specific assertions in the Django test suite.
2014-11-03 11:56:37 -05:00
Collin Anderson
ae7cb992bc
Fixed #23721 -- check_related_objects without calling __iter__
...
Refs #14334
2014-10-28 10:13:50 +02:00
Gabe Jackson
0e16c3e3cd
Fixed #23396 -- Ensured ValueQuerySets are not checked by check_related_objects.
2014-10-21 10:02:51 -04:00
Thomas Chaumeny
b2aad7b836
Replaced set([foo, ...]) by {foo, ...} literals. Refs PR 3282.
...
Thanks Collin Anderson for the review.
2014-09-29 00:01:38 +07:00
Matt Robenolt
ef5f9b6ae8
Fixed #23460 -- Added literal `%s` support to extra() QuerySets.
2014-09-26 13:01:27 -04:00
Thomas Chaumeny
e008a10c2f
Fixed #23443 -- Corrected erroneous FieldError message.
...
Thanks Tim Graham for the review.
2014-09-19 01:01:31 +07:00
Andrew Torpedov
bc06d2c11c
Fixed #23313 -- Corrected repr(RawQuery) with dict parameters.
2014-08-29 07:22:08 -04:00
Anubhav Joshi
cdfdcf4b70
Fixed #23266 -- Prevented queries caused by type checking lookup values
...
Small modifications done by committer.
2014-08-11 09:51:57 +03:00
Rajiv Makhijani
f0b358880a
Fixed #23259 -- Corrected insertion order of extra() select_params
...
A regression caused queries to produce incorrect results for cases where
extra(select) is excluded by values() but included by extra(order_by)
The regression was caused by 2f35c6f10f
.
2014-08-11 09:33:18 +03:00
Anubhav Joshi
011abb7d96
Fixed #19671 -- Added warnings that null and validators are ignored for ManyToManyField.
...
Thanks Loic Bistuer and Tim Graham for help and review.
2014-07-09 16:01:09 -04:00
Anubhav Joshi
34ba86706f
Fixed #14334 -- Query relation lookups now check object types.
...
Thanks rpbarlow for the suggestion; and loic, akaariai, and jorgecarleitao
for reviews.
2014-07-01 06:12:58 -04:00
zsoldosp
7e2c804c94
Split tests.basic.ModelTests in several tests; refs #18586 .
2014-06-25 15:39:56 -04:00
Alex Gaynor
1dcc603eff
Fixed several typos in Django
2014-05-28 17:39:14 -07:00
Anssi Kääriäinen
3b7c66a3ac
Fixed #22466 -- ordering by reverse foreign key
...
Ordering by reverse foreign key was broken by custom lookups patch
(commit 20bab2cf9d
).
Thanks to everybody who helped solving this issue. Special thanks to
Trac alias takis for reporting this.
2014-05-05 15:28:07 +03:00
Anssi Kääriäinen
5e1f4656b9
Fixed #22429 -- Incorrect SQL when using ~Q and F
2014-05-05 13:02:11 +03:00