Fix SA 1.0 compat

This commit is contained in:
Konsta Vesterinen
2015-05-06 11:07:33 +03:00
parent 59c346e02b
commit 48064bac1d
2 changed files with 12 additions and 5 deletions

View File

@@ -357,9 +357,9 @@ def is_indexed_foreign_key(constraint):
:param constraint: ForeignKeyConstraint object to check the indexes :param constraint: ForeignKeyConstraint object to check the indexes
""" """
return any( return any(
set(column.name for column in index.columns) set(constraint.columns.keys())
== ==
set(constraint.columns) set(column.name for column in index.columns)
for index for index
in constraint.table.indexes in constraint.table.indexes
) )

View File

@@ -1,3 +1,5 @@
from itertools import chain
import sqlalchemy as sa import sqlalchemy as sa
from sqlalchemy_utils.functions import non_indexed_foreign_keys from sqlalchemy_utils.functions import non_indexed_foreign_keys
@@ -43,8 +45,13 @@ class TestFindNonIndexedForeignKeys(TestCase):
'article' in 'article' in
fks fks
) )
column_names = [ column_names = list(chain(
column_name for column_name in fks['article'][0].columns.keys() *(
] names for names in (
fk.columns.keys()
for fk in fks['article']
)
)
))
assert 'category_id' in column_names assert 'category_id' in column_names
assert 'author_id' not in column_names assert 'author_id' not in column_names