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
|
||||
# is None, replace it w/ {}.
|
||||
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
|
||||
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()
|
||||
self.assertIsInstance(form_field, forms.HStoreField)
|
||||
|
||||
def test_empty_field_has_not_changed(self):
|
||||
def test_field_has_changed(self):
|
||||
class HStoreFormTest(Form):
|
||||
f1 = HStoreField()
|
||||
f1 = forms.HStoreField()
|
||||
form_w_hstore = HStoreFormTest()
|
||||
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):
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user