Tests the RenameField operation.
(self)
| 3401 | ) |
| 3402 | |
| 3403 | def test_rename_field(self): |
| 3404 | """ |
| 3405 | Tests the RenameField operation. |
| 3406 | """ |
| 3407 | project_state = self.set_up_test_model("test_rnfl") |
| 3408 | operation = migrations.RenameField("Pony", "pink", "blue") |
| 3409 | self.assertEqual(operation.describe(), "Rename field pink on Pony to blue") |
| 3410 | self.assertEqual( |
| 3411 | operation.formatted_description(), "~ Rename field pink on Pony to blue" |
| 3412 | ) |
| 3413 | self.assertEqual(operation.migration_name_fragment, "rename_pink_pony_blue") |
| 3414 | new_state = project_state.clone() |
| 3415 | operation.state_forwards("test_rnfl", new_state) |
| 3416 | self.assertIn("blue", new_state.models["test_rnfl", "pony"].fields) |
| 3417 | self.assertNotIn("pink", new_state.models["test_rnfl", "pony"].fields) |
| 3418 | # Rename field. |
| 3419 | self.assertColumnExists("test_rnfl_pony", "pink") |
| 3420 | self.assertColumnNotExists("test_rnfl_pony", "blue") |
| 3421 | with connection.schema_editor() as editor: |
| 3422 | operation.database_forwards("test_rnfl", editor, project_state, new_state) |
| 3423 | self.assertColumnExists("test_rnfl_pony", "blue") |
| 3424 | self.assertColumnNotExists("test_rnfl_pony", "pink") |
| 3425 | # Reversal. |
| 3426 | with connection.schema_editor() as editor: |
| 3427 | operation.database_backwards("test_rnfl", editor, new_state, project_state) |
| 3428 | self.assertColumnExists("test_rnfl_pony", "pink") |
| 3429 | self.assertColumnNotExists("test_rnfl_pony", "blue") |
| 3430 | # Deconstruction. |
| 3431 | definition = operation.deconstruct() |
| 3432 | self.assertEqual(definition[0], "RenameField") |
| 3433 | self.assertEqual(definition[1], []) |
| 3434 | self.assertEqual( |
| 3435 | definition[2], |
| 3436 | {"model_name": "Pony", "old_name": "pink", "new_name": "blue"}, |
| 3437 | ) |
| 3438 | |
| 3439 | def test_rename_field_unique_together(self): |
| 3440 | project_state = self.set_up_test_model("test_rnflut", unique_together=True) |
nothing calls this directly
no test coverage detected