Loading django/db/backends/schema.py +2 −0 Original line number Diff line number Diff line Loading @@ -367,6 +367,8 @@ class BaseDatabaseSchemaEditor(object): """ Renames the table a model points to. """ if old_db_table == new_db_table: return self.execute(self.sql_rename_table % { "old_table": self.quote_name(old_db_table), "new_table": self.quote_name(new_db_table), Loading tests/migrations/test_operations.py +20 −0 Original line number Diff line number Diff line Loading @@ -769,6 +769,26 @@ class OperationTests(OperationTestBase): self.assertTableExists("test_almota_pony") self.assertTableNotExists("test_almota_pony_2") def test_alter_model_table_noop(self): """ Tests the AlterModelTable operation if the table name is not changed. """ project_state = self.set_up_test_model("test_almota") # Test the state alteration operation = migrations.AlterModelTable("Pony", "test_almota_pony") new_state = project_state.clone() operation.state_forwards("test_almota", new_state) self.assertEqual(new_state.models["test_almota", "pony"].options["db_table"], "test_almota_pony") # Test the database alteration self.assertTableExists("test_almota_pony") with connection.schema_editor() as editor: operation.database_forwards("test_almota", editor, project_state, new_state) self.assertTableExists("test_almota_pony") # And test reversal with connection.schema_editor() as editor: operation.database_backwards("test_almota", editor, new_state, project_state) self.assertTableExists("test_almota_pony") def test_alter_field(self): """ Tests the AlterField operation. Loading Loading
django/db/backends/schema.py +2 −0 Original line number Diff line number Diff line Loading @@ -367,6 +367,8 @@ class BaseDatabaseSchemaEditor(object): """ Renames the table a model points to. """ if old_db_table == new_db_table: return self.execute(self.sql_rename_table % { "old_table": self.quote_name(old_db_table), "new_table": self.quote_name(new_db_table), Loading
tests/migrations/test_operations.py +20 −0 Original line number Diff line number Diff line Loading @@ -769,6 +769,26 @@ class OperationTests(OperationTestBase): self.assertTableExists("test_almota_pony") self.assertTableNotExists("test_almota_pony_2") def test_alter_model_table_noop(self): """ Tests the AlterModelTable operation if the table name is not changed. """ project_state = self.set_up_test_model("test_almota") # Test the state alteration operation = migrations.AlterModelTable("Pony", "test_almota_pony") new_state = project_state.clone() operation.state_forwards("test_almota", new_state) self.assertEqual(new_state.models["test_almota", "pony"].options["db_table"], "test_almota_pony") # Test the database alteration self.assertTableExists("test_almota_pony") with connection.schema_editor() as editor: operation.database_forwards("test_almota", editor, project_state, new_state) self.assertTableExists("test_almota_pony") # And test reversal with connection.schema_editor() as editor: operation.database_backwards("test_almota", editor, new_state, project_state) self.assertTableExists("test_almota_pony") def test_alter_field(self): """ Tests the AlterField operation. Loading