Iulia Chiriac
75ed590032
Fixed #24636 -- Added model field validation for decimal places and max digits.
2015-09-18 14:30:20 -04:00
Dražen Odobašić
b1e33ceced
Fixed #23395 -- Limited line lengths to 119 characters.
2015-09-12 11:40:50 -04:00
Aymeric Augustin
b799a50c8e
Serialized some tests that interact with the filesystem.
...
Considering the APIs exercised by these test cases, it's hard to make
them independent.
2015-09-09 23:01:17 +02:00
Tim Graham
064d4b1cb0
Fixed #25320 -- Reverted ManyToManyField.null to False for backwards compatibility.
...
Thanks Tom Christie for the report and review.
2015-09-01 07:59:39 -04:00
Maxime Lorant
5153a3bfdc
Fixed #25331 -- Removed trailing blank lines in docstrings.
2015-08-31 17:37:21 -04:00
Tim Graham
5980b05c1f
Fixed #25160 -- Moved unsaved model instance data loss check to Model.save()
...
This mostly reverts 5643a3b51b
and
81e1a35c36
.
Thanks Carl Meyer for review.
2015-08-10 08:51:32 -04:00
Tim Graham
770449e24b
Removed unused Field.get_flatchoices() method.
...
Unused since c2ba59fc1d
(Django 1.0).
Thanks Andy Baker for the report.
2015-08-03 13:08:24 -04:00
Flavio Curella
c2e70f0265
Fixed #21127 -- Started deprecation toward requiring on_delete for ForeignKey/OneToOneField
2015-07-27 18:28:13 -04:00
Tim Graham
b60375d4bb
Fixed #25129 -- Made model instance defaults work with migrations (refs #24919 ).
2015-07-21 09:19:40 -04:00
Edward Henderson
f8cc464452
Fixed #16501 -- Added an allow_unicode parameter to SlugField.
...
Thanks Flavio Curella and Berker Peksag for the initial patch.
2015-07-17 13:48:58 -04:00
Tim Graham
47fcbe506c
Fixed flake8 warnings on Python 3.
2015-06-15 11:27:09 -04:00
Cole Maclean
20ff296cb1
Fixed #24859 -- Made QuerySet.get() with UUIDField raise TypeError on bad value.
...
For consistency with AutoField.
2015-06-06 19:46:05 -04:00
Rolo
19e67c6cd1
Fixed #24677 -- Made TextField.to_python() return a string.
...
This is consistent with CharField.
2015-06-04 09:02:54 -04:00
Jon Dufresne
44f3ee7716
Fixed #9596 -- Added date transform for DateTimeField.
2015-06-02 08:49:10 -04:00
Simon Charette
be67400b47
Refs #24652 -- Used SimpleTestCase where appropriate.
2015-05-20 13:46:13 -04:00
Abhaya Agarwal
7c7b855106
[1.8.x] Refs #24698 , #24712 -- Forwardported ForeignKey.get_db_prep_value() test and release notes.
...
Fixed in master by b68212f539
.
Forwardport of 290c9d6654
from stable/1.8.x
2015-05-12 19:42:42 -04:00
Alasdair Nicol
eaeea6f947
Fixed #24714 -- Used more specific assertions than assertEqual in tests.
2015-04-28 09:31:04 -04:00
Alasdair Nicol
d91321e8be
Used assertIsInstance in tests.
2015-04-27 08:40:36 -04:00
Yoong Kang Lim
36eab95e7f
Fixed #24667 --- Repaired model_fields cardinality test
2015-04-20 09:40:01 -04:00
Jon Dufresne
97bb48d9ba
Fixed model_fields tests to use django TestCase.
2015-04-15 08:19:25 -04:00
Jay Wineinger
923da0274a
Fixed #24611 -- Fixed update() crash with related UUID pk object.
2015-04-13 12:18:24 -04:00
Alex Hill
720ff740e7
Fixed #24215 -- Refactored lazy model operations
...
This adds a new method, Apps.lazy_model_operation(), and a helper function,
lazy_related_operation(), which together supersede add_lazy_relation() and
make lazy model operations the responsibility of the App registry. This
system no longer uses the class_prepared signal.
2015-03-25 16:48:17 -04:00
Anssi Kääriäinen
8f30556329
Renamed Field.rel attribute to remote_field
...
Field.rel is now deprecated. Rel objects have now also remote_field
attribute. This means that self == self.remote_field.remote_field.
In addition, made the Rel objects a bit more like Field objects. Still,
marked ManyToManyFields as null=True.
2015-03-25 08:16:12 -04:00
David Szotten
80e3444eca
Fixed #24483 -- Prevented keepdb from breaking with generator choices.
...
If Field.choices is provided as an iterator, consume it in __init__ instead
of using itertools.tee (which ends up holding everything in memory
anyway). Fixes a bug where deconstruct() was consuming the iterator but
bypassing the call to `tee`.
2015-03-24 11:42:53 -04:00
Aymeric Augustin
934400759d
Guaranteed removal of temporary files during tests.
...
Dropped the DJANGO_TEST_TEMP_DIR environment variable.
Before this change, proper removal depended on the developer passing
dir=os.environ['DJANGO_TEST_TMP_DIR'] to tempfile functions.
2015-02-23 16:55:26 +01:00
Michael Angeletti
ea3168dc6c
Fixed #24376 -- added verbose_name arg to UUIDField
2015-02-21 13:27:49 -05:00
Marc Tamlyn
4755f8fc25
Fixed #24343 -- Ensure db converters are used for foreign keys.
...
Joint effort between myself, Josh, Anssi and Shai.
2015-02-20 11:35:51 +00:00
Loic Bistuer
18c0aaa912
Fixed #24289 -- Reversed usage of Field.many_to_one and one_to_many.
...
Thanks Carl Meyer and Tim Graham for the reviews and to all involved
in the discussion.
2015-02-14 02:28:24 +07:00
Josh Smeaton
de0241eb98
Fixed #24319 -- Added validation for UUID model field
2015-02-13 09:45:53 +11:00
Simon Charette
9239f1dda7
Refs #24215 -- Prevented pending lookup pollution by abstract models.
2015-02-12 13:07:09 -05:00
Tim Graham
2d7c27d387
Fixed #24302 -- Added DurationField.formfield()
2015-02-09 10:20:01 -05:00
Collin Anderson
db77915c9f
Fixed E265 comment style
2015-02-06 09:30:35 -05:00
Tim Graham
0ed7d15563
Sorted imports with isort; refs #23860 .
2015-02-06 08:16:28 -05:00
Tim Graham
0f54cf28c0
Added UUIDField.deconstruct()
2015-02-05 19:15:02 -05:00
Anssi Kääriäinen
8adc59038c
Fixed #23617 -- Added get_pk_value_on_save()
...
The method is mainly intended for use with UUIDField. For UUIDField we
want to call the field's default even when primary key value is
explicitly set to None to match the behavior of AutoField.
Thanks to Marc Tamlyn and Tim Graham for review.
2015-02-03 09:23:44 -05:00
Adam Taylor
039465a6a7
Fixed typos in code comments.
2015-01-20 12:18:03 -05:00
Tim Graham
33457cd3b0
Removed IPAddressField per deprecation timeline; refs #20439 .
2015-01-19 11:12:57 -05:00
Marc Tamlyn
39d95fb6ad
Fixed #24092 -- Widened base field support for ArrayField.
...
Several issues resolved here, following from a report that a base_field
of GenericIpAddressField was failing.
We were using get_prep_value instead of get_db_prep_value in ArrayField
which was bypassing any extra modifications to the value being made in
the base field's get_db_prep_value. Changing this broke datetime
support, so the postgres backend has gained the relevant operation
methods to send dates/times/datetimes directly to the db backend instead
of casting them to strings. Similarly, a new database feature has been
added allowing the uuid to be passed directly to the backend, as we do
with timedeltas.
On the other side, psycopg2 expects an Inet() instance for IP address
fields, so we add a value_to_db_ipaddress method to wrap the strings on
postgres. We also have to manually add a database adapter to psycopg2,
as we do not wish to use the built in adapter which would turn
everything into Inet() instances.
Thanks to smclenithan for the report.
2015-01-16 16:15:16 -05:00
Claude Paroz
68a439a18d
Removed supports_binary_field flag as all backends support them
...
It was mainly for MySQL on Python 3, but now the current
recommended MySQL driver for Python 3 (mysqlclient) does support
binary fields, it is unneeded. Refs #20377 .
2015-01-11 23:34:47 +01:00
Michał Modzelewski
ee86e59051
Refs #2443 -- Allowed creation of objects with NULL DurationFields
2015-01-07 08:33:26 -05:00
Josh Smeaton
5a4ac4ead9
Fixed #24078 -- Removed empty strings from GenericIPAddressField
2015-01-07 08:08:36 -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
749d23251b
Removed warning handling that should have been removed in refs #23891 .
2015-01-06 18:33:55 -05:00
Tim Graham
40a8504357
Fixed #23891 -- Moved deprecation of IPAddressField to system check framework.
...
Thanks Markus Holtermann for review.
2015-01-01 13:30:52 -05:00
Claude Paroz
51890ce889
Applied ignore_warnings to Django tests
2014-12-30 18:16:25 +01:00
Marc Tamlyn
57554442fe
Fixed #2443 -- Added DurationField.
...
A field for storing periods of time - modeled in Python by timedelta. It
is stored in the native interval data type on PostgreSQL and as a bigint
of microseconds on other backends.
Also includes significant changes to the internals of time related maths
in expressions, including the removal of DateModifierNode.
Thanks to Tim and Josh in particular for reviews.
2014-12-20 18:28:29 +00:00
Carl Meyer
c72eb80d11
Fixed #23455 -- Accept either bytes or text for related_name, convert to text.
2014-12-12 12:50:39 -07:00
Diego Guimarães
f39b0421b4
Fixed #23338 -- Added warning when unique=True on ForeigKey
...
Thanks Jonathan Lindén for the initial patch, and Tim Graham
and Gabe Jackson for the suggestions.
2014-11-27 19:42:30 -05:00
Berker Peksag
f7969b0920
Fixed #23620 -- Used more specific assertions in the Django test suite.
2014-11-03 11:56:37 -05:00
Marc Tamlyn
ed7821231b
Fixed #19463 -- Added UUIDField
...
Uses native support in postgres, and char(32) on other backends.
2014-09-16 10:08:09 +01:00
Tim Graham
fcd42a4819
Removed code that assumed BooleanField could be null.
...
Such a field will no longer pass model validation.
2014-08-05 07:49:53 -04:00
Tim Graham
9a922dcad1
Fixed flake8 warnings.
2014-07-31 08:06:46 -04:00
Florian Apolloner
4453c80634
Fixed the previous commit for Python3.
2014-07-30 22:22:04 +02:00
areski
97a38de230
Fixed #23112 -- Field.get_choices tries to index an iterable
2014-07-30 21:35:02 +02:00
Tim Graham
34c60c42b6
Fixed flake8 errors.
2014-07-30 12:58:53 -04:00
Florian Apolloner
2f73b527dd
Fixed #23098 -- Checked that lazy choices are not evaluated too soon
...
Thanks Matthieu Agopian for the report.
2014-07-27 13:31:25 +02:00
Claude Paroz
809362518d
Created import-time test temp dirs in known location
...
Refs #17215 . In the same spirit as 5de31cb8cb
.
2014-06-23 14:54:25 +02:00
Loic Bistuer
b7de5f5d3f
Fixed a few ResourceWarning in the test suite. Refs #22680 .
2014-05-26 03:23:17 +07:00
Vlad Starostin
1be03aff5c
Fixed #18389 -- Fixed the way contribute_to_class is called
...
Now this method is only called only if the object is an instance.
This allows to have field classes as model class attributes.
2014-05-16 10:40:07 -04:00
Aymeric Augustin
c70a61eb49
Replaced vendor checks by three feature flags.
2014-05-08 22:11:15 +02:00
Alex Gaynor
2bcb8bfc8d
Fix many many typos in comments throughout the codebase
2014-04-26 10:18:45 -07:00
Erik Romijn
75c0d4ea3a
Fixed queries that may return unexpected results on MySQL due to typecasting.
...
This is a security fix; disclosure to follow shortly.
2014-04-21 18:11:26 -04:00
Aymeric Augustin
2791fbf59d
Used more specific test assertions.
2014-04-09 22:20:22 +02:00
Simon Charette
1506c71a95
Fixed #12030 -- Validate integer field range at the model level.
...
Thanks to @timgraham for the review.
2014-03-25 14:31:20 -04:00
Tim Graham
4965a77407
Removed PIL compatability layer per deprecation timeline.
...
refs #19934 .
2014-03-21 10:54:53 -04:00
Shai Berger
4b4c704517
Skip test for saving microseconds on backends which do not support it.
2014-03-13 00:28:05 +02:00
Shai Berger
6983201cfb
Fixed #20292 : Pass datetime objects (not formatted dates) as params to Oracle
...
This seems worthwhile in its own right, but also works around an Oracle
bug (in versions 10 -- 11.1) where the use of Unicode would reset the
date/time formats, causing ORA-01843 errors.
Thanks Trac users CarstenF for the report, jtiai for the initial patch,
and everyone who contributed to the discussion on the ticket.
2014-03-12 23:43:45 +02:00
Shai Berger
fc79c3fb3d
Flake8 corrections
2014-03-12 20:34:05 +02:00
Shai Berger
d181384e5f
Fixed test failure on Oracle: model_fields.tests.test_float_validates_object
...
Failing test introduced in fix for refs #22210 .
2014-03-12 20:17:43 +02:00
Daniel Pyrathon
819e09b848
Fixed #22210 -- Saving model instances to non-related fields.
...
Previously, saving a model instance to a non-related field (in
particular a FloatField) would silently convert the model to an Integer
(the pk) and save it. This is undesirable behaviour, and likely to cause
confusion so the validatio has been hardened.
Thanks to @PirosB3 for the patch and @jarshwah for the review.
2014-03-10 15:25:18 +00:00
Chris Wilson
95c74b9d69
Fixed #22206 -- Passed models.TextField.max_length to forms.CharField.maxlength
2014-03-05 20:09:28 +01:00
Rodolfo Carvalho
0d91225892
Fixed many typos in comments and docstrings.
...
Thanks Piotr Kasprzyk for help with the patch.
2014-03-03 07:38:09 -05:00
Albert Wang
8bbdcc76e4
Fixed #19299 -- Fixed Nullification of Foreign Keys To CharFields
...
Thanks tunixman for the report and Baptiste Mispelon and
Shai Berger for reviews.
2014-02-15 09:47:32 -05:00
Russell Keith-Magee
d818e0c9b2
Fixed #16905 -- Added extensible checks (nee validation) framework
...
This is the result of Christopher Medrela's 2013 Summer of Code project.
Thanks also to Preston Holmes, Tim Graham, Anssi Kääriäinen, Florian
Apolloner, and Alex Gaynor for review notes along the way.
Also: Fixes #8579 , fixes #3055 , fixes #19844 .
2014-01-20 10:45:21 +08:00
Vajrasky Kok
16d73d7416
Fixed #21512 -- Added more complete information about Pillow and PIL in model_fields and model_forms tests.
2013-11-26 10:18:54 +01:00
Jason Myers
7a61c68c50
PEP8 cleanup
...
Signed-off-by: Jason Myers <jason@jasonamyers.com>
2013-11-02 23:50:49 -05:00
Alasdair Nicol
b289fcf1bf
Fixed #21288 -- Fixed E126 pep8 warnings
2013-10-21 08:31:30 -04:00
Tim Graham
96d1d4e292
Removed unused local variables in tests.
2013-10-19 08:31:38 -04:00
Alasdair Nicol
a800036981
Fixed #21287 -- Fixed E123 pep8 warnings
2013-10-18 10:07:39 +01:00
Simon Charette
948d209ada
Fixed #21217 -- Avoid connecting `(pre|post)_init` signals to abstract senders.
2013-10-04 16:23:06 -04:00
Erik Romijn
1a63092981
Fixed #20439 -- Started deprecation of IPAddressField
2013-09-28 10:55:32 +02:00
Tim Graham
2fd03b39ab
Removed references to django.utils.unittest which is PendingDeprecation
2013-09-03 09:55:21 -04:00
Carl Meyer
7211741fc5
Fixed #20999 - Allow overriding formfield class with choices, without subclass restrictions.
...
Refs #18162 . Thanks claudep and mjtamlyn for review.
2013-08-30 17:43:10 -06:00
Simon Charette
36bbe3b7c5
Altered test introduced in f19a3669b8
for the sake of readability. refs #14786
2013-08-29 14:50:55 -04:00
Tim Graham
f19a3669b8
Fixed #14786 -- Fixed get_db_prep_lookup calling get_prep_value twice if prepared is False.
...
Thanks homm for the report and Aramgutang and lrekucki for work on
the patch.
2013-08-29 11:13:34 -04: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
Alex Couper
1123f45511
Fixed #20649 -- Allowed blank field display to be defined in the initial list of choices.
2013-07-31 14:12:03 -04:00
Tai Lee
31e6d58d46
Fixed #20348 -- Consistently handle Promise objects in model fields.
...
All Promise objects were passed to force_text() deep in ORM query code.
Not only does this make it difficult or impossible for developers to
prevent or alter this behaviour, but it is also wrong for non-text
fields.
This commit changes `Field.get_prep_value()` from a no-op to one that
resolved Promise objects. All subclasses now call super() method first
to ensure that they have a real value to work with.
2013-07-31 15:54:17 +03:00
Claude Paroz
5c1143910e
Removed most of absolute_import imports
...
Should be unneeded with Python 2.7 and up.
Added some unicode_literals along the way.
2013-07-29 20:28:13 +02:00
Tim Graham
f2cb94f1c0
Fixed #20740 -- GenericIPAddressField should pass protocol to formfield()
...
Thanks Jeff250.
2013-07-12 16:05:14 -04:00
Aymeric Augustin
cfcf4b3605
Stopped using django.utils.unittest in the test suite.
...
Refs #20680 .
2013-07-01 14:29:33 +02:00
Claude Paroz
ea3fe78a9d
Fixed #20660 -- Do not try to delete an unset FieldFile
...
Thanks stanislas.guerra at gmail.com for the report and
Baptiste Mispelon for the review.
2013-06-29 18:08:39 +02:00
Marc Tamlyn
09f8652765
Use assertIsInstance in tests.
...
Gives much nicer errors when it fails.
2013-05-21 10:42:15 +01:00
Daniel Lindsley
33793f7c3e
Fixed #19934 - Use of Pillow is now preferred over PIL.
...
This starts the deprecation period for PIL (support to end in 1.8).
2013-05-14 19:32:04 -07:00
Carl Meyer
9012833af8
Fixed #17365 , #17366 , #18727 -- Switched to discovery test runner.
...
Thanks to Preston Timmons for the bulk of the work on the patch, especially
updating Django's own test suite to comply with the requirements of the new
runner. Thanks also to Jannis Leidel and Mahdi Yusuf for earlier work on the
patch and the discovery runner.
Refs #11077 , #17032 , and #18670 .
2013-05-10 23:08:45 -04:00
Aymeric Augustin
7476d96f83
Marked tests of BinaryFields as expected failures on MySQL and Python 3.
...
Current ports of MySQLdb are very buggy in this area.
2013-05-08 15:48:39 +02:00
Preston Timmons
44293c5c05
Modified model_fields for unittest2 discovery.
2013-04-12 15:11:12 -06:00
Aymeric Augustin
e16c48e001
Fixed #15124 -- Changed the default for BooleanField.
...
Thanks to the many contributors who updated and improved the patch over
the life of this ticket.
2013-03-24 13:47:01 +01:00
Claude Paroz
8ee1eddb7e
Add a BinaryField model field
...
Thanks Michael Jung, Charl Botha and Florian Apolloner for review
and help on the patch.
2013-03-02 10:29:02 +01:00
Florian Apolloner
89f40e3624
Merged regressiontests and modeltests into the test root.
2013-02-26 14:36:57 +01:00