diff options
| author | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2022-04-29 20:16:34 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-04-29 20:16:34 +0200 |
| commit | b34238addceb6b2d40181b625da3b7b7104abfcd (patch) | |
| tree | beb7e98040ad1a4ec73d5932a6708e2b39cb9d33 /tests | |
| parent | 562e3bc09aa094a2ebbd3890fa233d04daafa8c9 (diff) | |
Fixed #33670 -- Fixed altering primary key on SQLite.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/schema/tests.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/schema/tests.py b/tests/schema/tests.py index 049e604480..3fe41f5336 100644 --- a/tests/schema/tests.py +++ b/tests/schema/tests.py @@ -3584,6 +3584,21 @@ class SchemaTests(TransactionTestCase): ) self.assertEqual(self.get_primary_key(Tag._meta.db_table), "slug") + def test_alter_primary_key_the_same_name(self): + with connection.schema_editor() as editor: + editor.create_model(Thing) + + old_field = Thing._meta.get_field("when") + new_field = CharField(max_length=2, primary_key=True) + new_field.set_attributes_from_name("when") + new_field.model = Thing + with connection.schema_editor() as editor: + editor.alter_field(Thing, old_field, new_field, strict=True) + self.assertEqual(self.get_primary_key(Thing._meta.db_table), "when") + with connection.schema_editor() as editor: + editor.alter_field(Thing, new_field, old_field, strict=True) + self.assertEqual(self.get_primary_key(Thing._meta.db_table), "when") + def test_context_manager_exit(self): """ Ensures transaction is correctly closed when an error occurs |
