mirror of
https://github.com/django/django.git
synced 2024-12-23 01:25:58 +00:00
Fixed #25215 -- Solved reference to forms.HStoreField in declaration of HStoreField
Correct test which was using the model field in a test form.
This commit is contained in:
parent
770449e24b
commit
9f73009e98
@ -43,4 +43,4 @@ class HStoreField(forms.CharField):
|
|||||||
# the same as an empty dict, if the data or initial value we get
|
# the same as an empty dict, if the data or initial value we get
|
||||||
# is None, replace it w/ {}.
|
# is None, replace it w/ {}.
|
||||||
initial_value = self.to_python(initial)
|
initial_value = self.to_python(initial)
|
||||||
return super(forms.HStoreField, self).has_changed(initial_value, data)
|
return super(HStoreField, self).has_changed(initial_value, data)
|
||||||
|
@ -21,3 +21,6 @@ Bugfixes
|
|||||||
|
|
||||||
* Prevented an exception in ``TestCase.setUpTestData()`` from leaking the
|
* Prevented an exception in ``TestCase.setUpTestData()`` from leaking the
|
||||||
transaction (:ticket:`25176`).
|
transaction (:ticket:`25176`).
|
||||||
|
|
||||||
|
* Fixed ``has_changed()`` method in
|
||||||
|
:class:`django.contrib.postgres.forms.HStoreField`.
|
||||||
|
@ -191,12 +191,21 @@ class TestFormField(PostgreSQLTestCase):
|
|||||||
form_field = model_field.formfield()
|
form_field = model_field.formfield()
|
||||||
self.assertIsInstance(form_field, forms.HStoreField)
|
self.assertIsInstance(form_field, forms.HStoreField)
|
||||||
|
|
||||||
def test_empty_field_has_not_changed(self):
|
def test_field_has_changed(self):
|
||||||
class HStoreFormTest(Form):
|
class HStoreFormTest(Form):
|
||||||
f1 = HStoreField()
|
f1 = forms.HStoreField()
|
||||||
form_w_hstore = HStoreFormTest()
|
form_w_hstore = HStoreFormTest()
|
||||||
self.assertFalse(form_w_hstore.has_changed())
|
self.assertFalse(form_w_hstore.has_changed())
|
||||||
|
|
||||||
|
form_w_hstore = HStoreFormTest({'f1': '{"a": 1}'})
|
||||||
|
self.assertTrue(form_w_hstore.has_changed())
|
||||||
|
|
||||||
|
form_w_hstore = HStoreFormTest({'f1': '{"a": 1}'}, initial={'f1': '{"a": 1}'})
|
||||||
|
self.assertFalse(form_w_hstore.has_changed())
|
||||||
|
|
||||||
|
form_w_hstore = HStoreFormTest({'f1': '{"a": 2}'}, initial={'f1': '{"a": 1}'})
|
||||||
|
self.assertTrue(form_w_hstore.has_changed())
|
||||||
|
|
||||||
|
|
||||||
class TestValidator(PostgreSQLTestCase):
|
class TestValidator(PostgreSQLTestCase):
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user