mirror of
https://github.com/django/django.git
synced 2025-10-31 09:41:08 +00:00
Fixed #23556 -- Raised a more meaningful error message when migrations refer to an unavailable node
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
from django.test import TestCase
|
||||
from django.db.migrations.graph import MigrationGraph, CircularDependencyError
|
||||
from django.db.migrations.graph import CircularDependencyError, MigrationGraph, NodeNotFoundError
|
||||
|
||||
|
||||
class GraphTests(TestCase):
|
||||
@@ -156,10 +156,10 @@ class GraphTests(TestCase):
|
||||
graph = MigrationGraph()
|
||||
message = "Node ('app_b', '0001') not a valid node"
|
||||
|
||||
with self.assertRaisesMessage(ValueError, message):
|
||||
with self.assertRaisesMessage(NodeNotFoundError, message):
|
||||
graph.forwards_plan(("app_b", "0001"))
|
||||
|
||||
with self.assertRaisesMessage(ValueError, message):
|
||||
with self.assertRaisesMessage(NodeNotFoundError, message):
|
||||
graph.backwards_plan(("app_b", "0001"))
|
||||
|
||||
def test_missing_parent_nodes(self):
|
||||
@@ -175,7 +175,7 @@ class GraphTests(TestCase):
|
||||
graph.add_dependency("app_a.0003", ("app_a", "0003"), ("app_a", "0002"))
|
||||
graph.add_dependency("app_a.0002", ("app_a", "0002"), ("app_a", "0001"))
|
||||
msg = "Migration app_a.0001 dependencies reference nonexistent parent node ('app_b', '0002')"
|
||||
with self.assertRaisesMessage(KeyError, msg):
|
||||
with self.assertRaisesMessage(NodeNotFoundError, msg):
|
||||
graph.add_dependency("app_a.0001", ("app_a", "0001"), ("app_b", "0002"))
|
||||
|
||||
def test_missing_child_nodes(self):
|
||||
@@ -186,5 +186,5 @@ class GraphTests(TestCase):
|
||||
graph = MigrationGraph()
|
||||
graph.add_node(("app_a", "0001"), None)
|
||||
msg = "Migration app_a.0002 dependencies reference nonexistent child node ('app_a', '0002')"
|
||||
with self.assertRaisesMessage(KeyError, msg):
|
||||
with self.assertRaisesMessage(NodeNotFoundError, msg):
|
||||
graph.add_dependency("app_a.0002", ("app_a", "0002"), ("app_a", "0001"))
|
||||
|
||||
Reference in New Issue
Block a user