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

Replaced migration state render() by apps cached property

Refs #23745.
This commit is contained in:
Claude Paroz
2014-11-05 10:43:31 +01:00
parent 4ee06ec3fc
commit a159b1facd
9 changed files with 140 additions and 162 deletions

View File

@@ -201,7 +201,7 @@ class StateTests(TestCase):
]
))
new_apps = project_state.render()
new_apps = project_state.apps
self.assertEqual(new_apps.get_model("migrations", "Tag")._meta.get_field_by_name("name")[0].max_length, 100)
self.assertEqual(new_apps.get_model("migrations", "Tag")._meta.get_field_by_name("hidden")[0].null, False)
@@ -330,7 +330,7 @@ class StateTests(TestCase):
project_state.add_model_state(ModelState.from_model(D))
project_state.add_model_state(ModelState.from_model(E))
project_state.add_model_state(ModelState.from_model(F))
final_apps = project_state.render()
final_apps = project_state.apps
self.assertEqual(len(final_apps.get_models()), 6)
# Now make an invalid ProjectState and make sure it fails
@@ -340,7 +340,7 @@ class StateTests(TestCase):
project_state.add_model_state(ModelState.from_model(C))
project_state.add_model_state(ModelState.from_model(F))
with self.assertRaises(InvalidBasesError):
project_state.render()
project_state.apps
def test_render_unique_app_labels(self):
"""
@@ -360,8 +360,7 @@ class StateTests(TestCase):
project_state = ProjectState()
project_state.add_model_state(ModelState.from_model(A))
project_state.add_model_state(ModelState.from_model(B))
final_apps = project_state.render()
self.assertEqual(len(final_apps.get_models()), 2)
self.assertEqual(len(project_state.apps.get_models()), 2)
def test_equality(self):
"""
@@ -432,20 +431,19 @@ class StateTests(TestCase):
project_state.add_model_state(ModelState.from_model(Author))
project_state.add_model_state(ModelState.from_model(Book))
project_state.add_model_state(ModelState.from_model(Magazine))
rendered_state = project_state.render()
self.assertEqual(len(rendered_state.get_models()), 3)
self.assertEqual(len(project_state.apps.get_models()), 3)
# now make an invalid one with a ForeignKey
project_state = ProjectState()
project_state.add_model_state(ModelState.from_model(Book))
with self.assertRaises(ValueError):
rendered_state = project_state.render()
project_state.apps
# and another with ManyToManyField
project_state = ProjectState()
project_state.add_model_state(ModelState.from_model(Magazine))
with self.assertRaises(ValueError):
rendered_state = project_state.render()
project_state.apps
def test_real_apps(self):
"""
@@ -465,12 +463,12 @@ class StateTests(TestCase):
project_state = ProjectState()
project_state.add_model_state(ModelState.from_model(TestModel))
with self.assertRaises(ValueError):
project_state.render()
project_state.apps
# If we include the real app it should succeed
project_state = ProjectState(real_apps=["contenttypes"])
project_state.add_model_state(ModelState.from_model(TestModel))
rendered_state = project_state.render()
rendered_state = project_state.apps
self.assertEqual(
len([x for x in rendered_state.get_models() if x._meta.app_label == "migrations"]),
1,
@@ -538,4 +536,4 @@ class ModelStateTests(TestCase):
project_state = ProjectState()
project_state.add_model_state(state)
with self.assertRaisesMessage(InvalidBasesError, "Cannot resolve bases for [<ModelState: 'app.Model'>]"):
project_state.render()
project_state.apps