diff options
| author | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2017-12-05 21:11:20 +0100 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2017-12-05 22:34:56 +0100 |
| commit | 741711f8a28147f9d9d67a7a0aa7783dd238b1ea (patch) | |
| tree | 00aa7481ad1e8a78bcddfc9eac37e7dbc2f75499 /tests/schema/tests.py | |
| parent | 73ab7438668a65b1fe8e0df6351096c42a06fa08 (diff) | |
[2.0.x] Refs #28876 -- Fixed incorrect foreign key constraint name for models with quoted db_table.
Thanks Simon Charette and Tim Graham for the review and Carlos E. C.
Leite for the report.
Backport of fc48047586a8f92262f55d9d2bfb976325844b23 from master
Diffstat (limited to 'tests/schema/tests.py')
| -rw-r--r-- | tests/schema/tests.py | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/schema/tests.py b/tests/schema/tests.py index 3d3bc4983f..4781a6bb3c 100644 --- a/tests/schema/tests.py +++ b/tests/schema/tests.py @@ -1914,6 +1914,28 @@ class SchemaTests(TransactionTestCase): with connection.schema_editor() as editor: editor.add_field(BookWithLongName, new_field) + @isolate_apps('schema') + @skipUnlessDBFeature('supports_foreign_keys') + def test_add_foreign_key_quoted_db_table(self): + class Author(Model): + class Meta: + db_table = '"table_author_double_quoted"' + app_label = 'schema' + + class Book(Model): + author = ForeignKey(Author, CASCADE) + + class Meta: + app_label = 'schema' + + with connection.schema_editor() as editor: + editor.create_model(Author) + editor.create_model(Book) + if connection.vendor == 'mysql': + self.assertForeignKeyExists(Book, 'author_id', '"table_author_double_quoted"') + else: + self.assertForeignKeyExists(Book, 'author_id', 'table_author_double_quoted') + def test_add_foreign_object(self): with connection.schema_editor() as editor: editor.create_model(BookForeignObj) |
