1
0
mirror of https://github.com/django/django.git synced 2025-10-24 06:06:09 +00:00

Fixed #27914 -- Added support for nested classes in Field.deconstruct()/__repr__().

This commit is contained in:
chillaranand
2017-06-14 18:11:02 +05:30
committed by Tim Graham
parent 9f4e0fde0a
commit fb0f987f7d
2 changed files with 16 additions and 2 deletions

View File

@@ -9,6 +9,11 @@ from .models import (
)
class Nested():
class Field(models.Field):
pass
class BasicFieldTests(TestCase):
def test_show_hidden_initial(self):
@@ -33,6 +38,10 @@ class BasicFieldTests(TestCase):
f = models.fields.CharField()
self.assertEqual(repr(f), '<django.db.models.fields.CharField>')
def test_field_repr_nested(self):
"""__repr__() uses __qualname__ for nested class support."""
self.assertEqual(repr(Nested.Field()), '<model_fields.tests.Nested.Field>')
def test_field_name(self):
"""
A defined field name (name="fieldname") is used instead of the model
@@ -85,6 +94,11 @@ class BasicFieldTests(TestCase):
field._get_default
pickle.dumps(field)
def test_deconstruct_nested_field(self):
"""deconstruct() uses __qualname__ for nested class support."""
name, path, args, kwargs = Nested.Field().deconstruct()
self.assertEqual(path, 'model_fields.tests.Nested.Field')
class ChoicesTests(SimpleTestCase):