]> git.ipfire.org Git - thirdparty/sqlalchemy/alembic.git/commitdiff
- correct for bad booleans coming from SQLA metadata/reflection for the index.unique...
authorMike Bayer <mike_mp@zzzcomputing.com>
Mon, 7 Oct 2013 15:21:33 +0000 (11:21 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Mon, 7 Oct 2013 15:21:33 +0000 (11:21 -0400)
alembic/autogenerate/compare.py
tests/test_autogenerate.py

index 074ab35fa7d19b1a1b7d5fc4b2f998529f4b9dcb..2b2e39b108d9d582764988bfdfa11130ea74a006 100644 (file)
@@ -256,7 +256,9 @@ def _compare_indexes(schema, tname, object_filters, conn_table,
         conn_exps = [exp.name for exp in conn_index.expressions]
         meta_exps = [exp.name for exp in meta_index.expressions]
 
-        if meta_index.unique is not conn_index.unique \
+        # convert between both Nones (SQLA ticket #2825) on the metadata
+        # side and zeroes on the reflection side.
+        if bool(meta_index.unique) is not bool(conn_index.unique) \
                 or meta_exps != conn_exps:
             diffs.append(("remove_index", conn_index))
             diffs.append(("add_index", meta_index))
index 132003bc8508420f94e736346dd60efb023007f4..7517ce8368dff32c23bb86f82d68306a3c1b8e3d 100644 (file)
@@ -763,7 +763,8 @@ class AutogenerateUniqueIndexTest(AutogenTest, TestCase):
 
         Table('address', m,
             Column('id', Integer, primary_key=True),
-            Column('email_address', String(100), nullable=False)
+            Column('email_address', String(100), nullable=False),
+            Column('qpr', String(10), index=True),
         )
 
         Table('order', m,
@@ -793,6 +794,7 @@ class AutogenerateUniqueIndexTest(AutogenTest, TestCase):
         Table('address', m,
             Column('id', Integer, primary_key=True),
             Column('email_address', String(100), nullable=False),
+            Column('qpr', String(10), index=True),
             UniqueConstraint("email_address", name="uq_email_address")
         )