From 5a35fb240001657b49bd13771fe5b5edc12276fb Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Thu, 20 Nov 2014 20:21:06 -0500 Subject: Repair include_object to accommodate new objects The tests in tests/sqlalchemy/test_migrations.py which expect to see changes in unique constraints fail due to the assumption that the "include_object" feature of Alembic only deals with the 'table' and 'column' constructs. As Alembic 0.7.0 has added include_object support for 'index' and 'unique_constraint', this method should not be limiting itself to not include objects that it's testing for. Tests won't pass on Alembic 0.7.0 without this patch. Change-Id: Ia71446bb8c0b248c6310534deb290524e3946987 (cherry picked from commit 549ba15e3055d269c6323e6b8b6d072925ad0007) --- tests/sqlalchemy/test_migrations.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tests/sqlalchemy/test_migrations.py b/tests/sqlalchemy/test_migrations.py index df331d4..4828d5a 100644 --- a/tests/sqlalchemy/test_migrations.py +++ b/tests/sqlalchemy/test_migrations.py @@ -232,7 +232,10 @@ class ModelsMigrationSyncMixin(test.BaseTestCase): self.metadata_migrations.create_all(bind=engine) def include_object(self, object_, name, type_, reflected, compare_to): - return type_ == 'table' and name == 'testtbl' or type_ == 'column' + if type_ == 'table': + return name == 'testtbl' + else: + return True def _test_models_not_sync(self): self.metadata_migrations.clear() @@ -261,7 +264,7 @@ class ModelsMigrationSyncMixin(test.BaseTestCase): 'Models and migration scripts aren\'t in sync:')) self.assertIn('testtbl', msg) self.assertIn('spam', msg) - self.assertIn('eggs', msg) + self.assertIn('eggs', msg) # test that the unique constraint is added self.assertIn('foo', msg) self.assertIn('bar', msg) self.assertIn('bool_wo_default', msg) -- cgit v1.2.1