Anssi Kääriäinen
6af05e7a0f
Fixed model.__eq__ and __hash__ for no pk value cases
...
The __eq__ method now considers two instances without primary key value
equal only when they have same id(). The __hash__ method raises
TypeError for no primary key case.
Fixed #18864 , fixed #18250
Thanks to Tim Graham for docs review.
2013-08-22 17:24:07 +03:00
Anssi Kääriäinen
8d65b6082c
Fixed #20955 -- select_related regression
...
In cases where the same connection (from model A to model B along the
same field) was needed multiple times in a select_related query, the
join setup code mistakenly reused an existing join.
2013-08-22 10:51:07 +03:00
Tim Graham
f7290581fe
Fixed a regression with get_or_create and virtual fields.
...
refs #20429
Thanks Simon Charette for the report and review.
2013-08-21 08:30:21 -04:00
Ramiro Morales
a5cf5da50d
Switched mail tests to SimpleTestCase.
2013-08-21 07:48:16 -03:00
Ramiro Morales
ececbe77ff
Fixed #12422 -- Don't override global email charset behavior for utf-8.
...
Thanks simonb for the report, Claude Paroz and Susan Tan for their work
on a fix.
2013-08-21 07:44:20 -03:00
Anssi Kääriäinen
b065aeb17f
Fixed #20946 -- model inheritance + m2m failure
...
Cleaned up the internal implementation of m2m fields by removing
related.py _get_fk_val(). The _get_fk_val() was doing the wrong thing
if asked for the foreign key value on foreign key to parent model's
primary key when child model had different primary key field.
2013-08-21 08:32:19 +03:00
Ramiro Morales
deebb1a977
Import test case classes from their public API module.
2013-08-20 22:23:41 -03:00
Ramiro Morales
f9d1d5dc13
Fixed #18967 -- Don't base64-encode message/rfc822 attachments.
...
Thanks Michael Farrell for the report and his work on the fix.
2013-08-20 22:17:26 -03:00
Florian Apolloner
96346ed5ad
Fixed #20933 -- Allowed loaddata to load fixtures from relative paths.
2013-08-20 21:25:57 +02:00
Anssi Kääriäinen
86f4459f9e
Fixed invalid testing fixture
2013-08-20 17:48:02 +03:00
Anssi Kääriäinen
1ed77e7782
Fixed #20820 -- Model inheritance + m2m fixture loading regression
...
Tests by Tim Graham, report from jeroen.pulles@redslider.net .
2013-08-20 16:54:05 +03:00
Anssi Kääriäinen
8dc76c4b91
Fixed test failure caused by different NULL ordering between backends
2013-08-20 11:33:44 +03:00
Anssi Kääriäinen
905409855c
Fixed #14056 -- Made sure LEFT JOIN aren't trimmed in ORDER BY
...
If LEFT JOINs are required for correct results, then trimming the join
can lead to incorrect results. Consider case:
TBL A: ID | TBL B: ID A_ID
1 1 1
2
Now A.order_by('b__a') did use a join to B, and B's a_id column. This
was seen to contain the same value as A's id, and so the join was
trimmed. But this wasn't correct as the join is LEFT JOIN, and for row
A.id = 2 the B.a_id column is NULL.
2013-08-20 10:55:00 +03:00
Anssi Kääriäinen
b53ed351b3
Fixed #14043 -- Made sure nullable o2o delete works as expected
...
There was an old complaint about nullable one-to-one field cascading
even when the o2o field was saved to None value before the deletion.
Added an test to verify this doesn't happen.
Also some PEP 8 cleanup.
2013-08-20 09:50:37 +03:00
Simon Charette
e55ca60903
Fixed #20943 -- Weakly reference senders when caching their associated receivers
2013-08-20 01:53:58 -04:00
Simon Charette
fdbf492946
Fixed an aggregation test failure on MySQL.
2013-08-19 20:39:30 -04:00
Rainer Koirikivi
3c03004050
Fixed #20640 -- Avoided NoReverseMatch in get_deleted_objects
...
The default delete action resulted in a NoReverseMatch if it were to
list any Model with a ModelAdmin with `get_urls` overridden to remove
the change url. Catching the error and not displaying the link in that
case, as was already done for models with no registered admins.
Thanks Keryn Knight for the report.
2013-08-19 12:01:33 -04:00
Anssi Kääriäinen
58c6d0209d
Fixed #12807 -- EmptyResultSet ORed condition
...
The EmptyResultSet wasn't treated correctly so the end results was
incorrect, too. The bug had been already fixed in master so only tests
added.
2013-08-19 16:24:45 +03:00
Anssi Kääriäinen
7bc57a6d71
Fixed #11881 -- removed junk from aggregation subqueries
...
There were clauses that weren't needed in the subqueries. These were
ORDER BY, SELECT FOR UPDATE and related selections.
2013-08-19 16:15:09 +03:00
Anssi Kääriäinen
7737305a4f
Fixed #12886 -- aggregation over sliced queryset
2013-08-19 16:00:17 +03:00
Anssi Kääriäinen
7d28bed13b
PEP 8 cleanup
2013-08-19 14:16:10 +03:00
Anssi Kääriäinen
630b9df42f
Fixed #12567 -- Incorrect SQL in model inheritance case
...
An isnull lookup produced incorrect SQL. This was already fixed
earlier, so only tests added.
2013-08-19 14:10:03 +03:00
Anssi Kääriäinen
3844089edc
Fixed #20777 -- Admin proxy model deletion regression
...
Added proxy_models tests by Harm Geerts <github@geertswei.nl>.
2013-08-19 09:51:41 +03:00
Anssi Kääriäinen
4668c142dc
Made Model.__eq__ consider proxy models equivalent
...
Fixed #11892 , fixed #16458 , fixed #14492 .
2013-08-19 09:51:28 +03:00
Alex Gaynor
aa01c99f55
Merge pull request #1479 from nickbruun/ticket_20924
...
Proxy __len__ and __contains__ for LazyObject
2013-08-18 09:41:43 -07:00
Claude Paroz
165f44aaaa
Combine consecutive with statements
...
Python 2.7 allows to combine several 'with' instructions.
2013-08-16 20:12:10 +02:00
Alasdair Nicol
22c6497f99
Fixed #20895 -- Made check management command warn if a BooleanField does not have a default value
...
Thanks to Collin Anderson for the suggestion and Tim Graham for
reviewing the patch.
2013-08-15 19:47:26 -04:00
Nick Bruun
b9ef96e73c
Regression test and patch for ticket #20924 .
2013-08-15 20:59:58 +02:00
Jonathan Slenders
ff410565bf
Fixed #20709 -- Allowed {% widthratio %} to accept an "as" parameter.
...
Thanks clay.evil@ for the suggestion.
2013-08-14 12:40:19 -04:00
Florian Apolloner
4e50e40654
Removed unneeded conditional_escapes from the testsuite.
2013-08-13 22:22:46 +02:00
Matt Johnson
907ef9d0d1
Fixed #20555 -- Make subwidget id attribute available
...
In `BoundField.__iter__`, the widget's id attribute is now passed to
each subwidget. A new id_for_label property was added to ChoiceInput.
2013-08-13 13:23:05 -04:00
Jacob Kaplan-Moss
cbe6d5568f
Apply autoescaping to AdminURLFieldWidget.
...
This is a security fix; disclosure to follow shortly.
2013-08-13 11:06:41 -05:00
Anssi Kääriäinen
09a5f5aabe
Fixed test failure on MySQL
...
The fix for #20874 caused a MySQL specific failure.
2013-08-13 15:37:08 +03:00
Loic Bistuer
163a34ce4b
Fixed #20883 -- Made model inheritance find parent links in abstract parents
2013-08-13 15:14:11 +03:00
Anssi Kääriäinen
dcdc579d16
Fixed #20874 -- bump_prefix() in nested subqueries
...
Also made some cleanup to build_filter() code by introducing submethods
solve_lookup_type() and prepare_lookup_value().
2013-08-13 14:11:52 +03:00
Ramiro Morales
6c12cd15e9
Unlocalize line numbers and ids in debug 500 view.
...
While using USE_L10N, line numbers and IDs were printed as comma (or
locale equivalent) separated values.
Thanks Kronuz for the report and intial patch.
Fixes #20861 .
2013-08-12 21:59:27 -03:00
Tim Graham
71b5617c24
Fixed #17778 -- Prevented class attributes on context from resolving as template variables.
...
Thanks KyleMac for the report, regebro for the patch, and Aymeric for the test.
2013-08-12 12:41:39 -04:00
Mel Collins
6bdb3b1135
Fixed #13518 -- Added FILE_UPLOAD_DIRECTORY_PERMISSIONS setting
...
This setting does for new directories what FILE_UPLOAD_PERMISSIONS
does for new files.
Thanks jacob@ for the suggestion.
2013-08-12 07:15:59 -04:00
Ramiro Morales
22af1394c6
Expand testing of Test LiveServerTestCase static files serving.
2013-08-10 16:32:07 -03:00
Ramiro Morales
cb92e3391b
Test that django.views.static.serve() generates 404 status codes.
...
Also, change tests to be based on SimpleTestCase.
2013-08-10 16:00:22 -03:00
Bojan Mihelac
0cac4fbf69
Fixed #18356 -- Gave the test client signals.template_rendered call a unique dispatch_uid
...
This prevents the test client context from being lost when the client
is used in a nested fashion.
2013-08-09 12:22:42 -04:00
Tim Graham
9c711ee3a6
Fixed test failures on Python 3 - refs #12288
2013-08-09 09:12:15 -04:00
Tim Graham
b575d690bb
Fixed test failures introduced by #12288
2013-08-09 08:34:37 -04:00
SusanTan
2ac89012d8
Fixed #12288 -- Added unique validation for INSTALLED_APPS
2013-08-09 08:08:34 -04:00
Marc Tamlyn
1c4a9bd9ad
Revert change to the default Form.clean()
...
This means it doesn't break for people who are doing
`cleaned_data = super(FooForm, self).clean()`.
2013-08-08 14:27:48 +01:00
Marc Tamlyn
fb1dd6b13a
Form.clean() does not need to return cleaned_data.
...
If it does, that will be used as the cleaned_data. The default
implementation has been changed to match this change.
2013-08-08 14:05:55 +01:00
Anssi Kääriäinen
c7739e30b2
Fixed #17424 -- annotate() + exclude() bug
...
The bug was already fixed by 01b9c3d519
,
so only tests added.
At the same time promote_joins()'s uncoditional flag is gone, it isn't
needed for anything any more.
2013-08-07 12:53:33 +03:00
Collin Anderson
d53e574676
Fixed #20865 -- Fixed raw_id_fields to work with callable limit_choices_to.
2013-08-06 13:41:52 -04:00
Alex Cucu
1c64a0f29e
Fixed #19918 -- Modified select_for_update to run on the write database.
2013-08-06 09:50:59 -04:00
Tai Lee
1280675834
Fixed #15511 -- Allow optional fields on ``MultiValueField` subclasses.
...
The `MultiValueField` class gets a new ``require_all_fields`` argument that
defaults to ``True``. If set to ``False``, individual fields can be made
optional, and a new ``incomplete`` validation error will be raised if any
required fields have empty values.
The ``incomplete`` error message can be defined on a `MultiValueField`
subclass or on each individual field. Skip duplicate errors.
2013-08-06 08:50:47 -04:00