summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2015-02-24 23:05:33 +0000
committerGerrit Code Review <review@openstack.org>2015-02-24 23:05:33 +0000
commit24521798bc2e089c29f7d611015403ef5746399b (patch)
tree24e2af1b3beee6f33903826c66a642ef14d58fce
parentbf40e79a6a560ec688fba461af6791ec11937145 (diff)
parentb9caaae4fccb1d6f8dea575ff318975fe197edde (diff)
downloadsqlalchemy-migrate-24521798bc2e089c29f7d611015403ef5746399b.tar.gz
Merge "script: strip comments in SQL statements"
-rw-r--r--migrate/tests/versioning/test_script.py10
-rw-r--r--migrate/versioning/script/sql.py1
2 files changed, 11 insertions, 0 deletions
diff --git a/migrate/tests/versioning/test_script.py b/migrate/tests/versioning/test_script.py
index 954bc0d..20e6af0 100644
--- a/migrate/tests/versioning/test_script.py
+++ b/migrate/tests/versioning/test_script.py
@@ -281,6 +281,16 @@ class TestSqlScript(fixture.Pathed, fixture.DB):
for script_pattern in (
"BEGIN TRANSACTION; %s; COMMIT;",
"BEGIN; %s; END TRANSACTION;",
+ "/* comment */BEGIN TRANSACTION; %s; /* comment */COMMIT;",
+ "/* comment */ BEGIN TRANSACTION; %s; /* comment */ COMMIT;",
+ """
+-- comment
+BEGIN TRANSACTION;
+
+%s;
+
+-- comment
+COMMIT;""",
):
test_statement = ("CREATE TABLE TEST1 (field1 int); "
diff --git a/migrate/versioning/script/sql.py b/migrate/versioning/script/sql.py
index 4b0536d..862bc9f 100644
--- a/migrate/versioning/script/sql.py
+++ b/migrate/versioning/script/sql.py
@@ -54,6 +54,7 @@ class SqlScript(base.BaseScript):
# not all drivers reliably handle multistatement queries or
# commands passed to .execute(), so split them and execute one
# by one
+ text = sqlparse.format(text, strip_comments=True, strip_whitespace=True)
for statement in sqlparse.split(text):
if statement:
if re.match(ignored_regex, statement):