From e408cd2c5e3f3bb7ac6dd78ae111da257d766a7e Mon Sep 17 00:00:00 2001 From: David Wobrock Date: Tue, 30 Jul 2019 09:56:26 +0200 Subject: [PATCH] Add SQL analyser logic for adding unique constraint --- django_migration_linter/sql_analyser/base.py | 8 ++++++++ django_migration_linter/sql_analyser/sqlite.py | 4 ++++ 2 files changed, 12 insertions(+) diff --git a/django_migration_linter/sql_analyser/base.py b/django_migration_linter/sql_analyser/base.py index 20fa325..17d3676 100644 --- a/django_migration_linter/sql_analyser/base.py +++ b/django_migration_linter/sql_analyser/base.py @@ -73,6 +73,14 @@ class BaseAnalyser(object): ), "mode": "one_liner", }, + { + "code": "ADD_UNIQUE", + "fn": lambda sql, **kw: re.search( + "ALTER TABLE .* ADD CONSTRAINT .* UNIQUE", sql + ), + "err_msg": "ADDING unique constraint", + "mode": "one_liner", + }, ] migration_tests = [] diff --git a/django_migration_linter/sql_analyser/sqlite.py b/django_migration_linter/sql_analyser/sqlite.py index e4d8a91..11e207c 100644 --- a/django_migration_linter/sql_analyser/sqlite.py +++ b/django_migration_linter/sql_analyser/sqlite.py @@ -48,4 +48,8 @@ class SqliteAnalyser(BaseAnalyser): ), "mode": "transaction", }, + { + "code": "ADD_UNIQUE", + "fn": lambda sql, **kw: sql.startswith("CREATE UNIQUE INDEX"), + }, ]