summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/migrations/test_operations.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/migrations/test_operations.py b/tests/migrations/test_operations.py
index efa16ee7a0..6472fea42c 100644
--- a/tests/migrations/test_operations.py
+++ b/tests/migrations/test_operations.py
@@ -416,6 +416,22 @@ class OperationTests(MigrationTestBase):
operation.database_backwards("test_rmfl", editor, new_state, project_state)
self.assertColumnExists("test_rmfl_pony", "pink")
+ def test_remove_fk(self):
+ """
+ Tests the RemoveField operation on a foreign key.
+ """
+ project_state = self.set_up_test_model("test_rfk", related_model=True)
+ self.assertColumnExists("test_rfk_rider", "pony_id")
+ operation = migrations.RemoveField("Rider", "pony")
+ new_state = project_state.clone()
+ operation.state_forwards("test_rfk", new_state)
+ with connection.schema_editor() as editor:
+ operation.database_forwards("test_rfk", editor, project_state, new_state)
+ self.assertColumnNotExists("test_rfk_rider", "pony_id")
+ with connection.schema_editor() as editor:
+ operation.database_backwards("test_rfk", editor, new_state, project_state)
+ self.assertColumnExists("test_rfk_rider", "pony_id")
+
def test_alter_model_table(self):
"""
Tests the AlterModelTable operation.