From e0fd18b33a440274c7e73c4c93b2bbb4e23bd03a Mon Sep 17 00:00:00 2001 From: Mike Bayer Date: Sun, 12 Jul 2015 15:43:47 -0400 Subject: - factor out autogen_context as a dictionary within the tests, localize to the fixtures module where we can fix it in one place --- tests/_autogen_fixtures.py | 8 ++++- tests/test_autogen_diffs.py | 78 ++++++++++++++++++--------------------------- 2 files changed, 38 insertions(+), 48 deletions(-) diff --git a/tests/_autogen_fixtures.py b/tests/_autogen_fixtures.py index 98848b5..e4262c6 100644 --- a/tests/_autogen_fixtures.py +++ b/tests/_autogen_fixtures.py @@ -191,12 +191,18 @@ class AutogenTest(_ComparesFKs): 'imports': set(), 'connection': connection, 'dialect': connection.dialect, - 'context': context + 'context': context, + 'metadata': self.m2, + 'object_filters': _default_object_filters } def tearDown(self): self.conn.close() + def _update_context(self, **kw): + self.autogen_context.update(**kw) + return self.autogen_context + class AutogenFixtureTest(_ComparesFKs): diff --git a/tests/test_autogen_diffs.py b/tests/test_autogen_diffs.py index cade594..11596d0 100644 --- a/tests/test_autogen_diffs.py +++ b/tests/test_autogen_diffs.py @@ -15,8 +15,7 @@ from alembic.testing import assert_raises_message from alembic.testing.mock import Mock from alembic.testing import eq_ from alembic.util import CommandError -from ._autogen_fixtures import \ - AutogenTest, AutogenFixtureTest, _default_object_filters +from ._autogen_fixtures import AutogenTest, AutogenFixtureTest py3k = sys.version_info >= (3, ) @@ -70,11 +69,10 @@ class AutogenCrossSchemaTest(AutogenTest, TestBase): return name == "t3" else: return True - self.autogen_context.update({ - 'object_filters': [include_object], - 'include_schemas': True, - 'metadata': self.m2 - }) + self._update_context( + object_filters=[include_object], + include_schemas=True, + ) uo = ops.UpgradeOps(ops=[]) autogenerate._produce_net_changes(self.autogen_context, uo) @@ -90,11 +88,10 @@ class AutogenCrossSchemaTest(AutogenTest, TestBase): else: return True - self.autogen_context.update({ - 'object_filters': [include_object], - 'include_schemas': True, - 'metadata': self.m2 - }) + self._update_context( + object_filters=[include_object], + include_schemas=True, + ) uo = ops.UpgradeOps(ops=[]) autogenerate._produce_net_changes(self.autogen_context, uo) @@ -108,11 +105,10 @@ class AutogenCrossSchemaTest(AutogenTest, TestBase): return name == "t1" else: return True - self.autogen_context.update({ - 'object_filters': [include_object], - 'include_schemas': True, - 'metadata': self.m2 - }) + self._update_context( + object_filters=[include_object], + include_schemas=True, + ) uo = ops.UpgradeOps(ops=[]) autogenerate._produce_net_changes(self.autogen_context, uo) @@ -127,11 +123,10 @@ class AutogenCrossSchemaTest(AutogenTest, TestBase): return name == "t2" else: return True - self.autogen_context.update({ - 'object_filters': [include_object], - 'include_schemas': True, - 'metadata': self.m2 - }) + self._update_context( + object_filters=[include_object], + include_schemas=True, + ) uo = ops.UpgradeOps(ops=[]) autogenerate._produce_net_changes(self.autogen_context, uo) diffs = uo.as_diffs() @@ -273,9 +268,8 @@ class AutogenerateDiffTest(ModelOne, AutogenTest, TestBase): metadata = self.m2 uo = ops.UpgradeOps(ops=[]) - ctx = self.autogen_context.copy() - ctx['metadata'] = self.m2 - ctx['object_filters'] = _default_object_filters + ctx = self.autogen_context + autogenerate._produce_net_changes( ctx, uo ) @@ -467,7 +461,6 @@ class AutogenerateDiffTest(ModelOne, AutogenTest, TestBase): assert not uo.has_changes() def test_dont_barf_on_already_reflected(self): - diffs = [] from sqlalchemy.util import OrderedSet inspector = Inspector.from_engine(self.bind) uo = ops.UpgradeOps(ops=[]) @@ -491,11 +484,9 @@ class AutogenerateDiffTestWSchema(ModelOne, AutogenTest, TestBase): metadata = self.m2 - self.autogen_context.update({ - 'object_filters': _default_object_filters, - 'include_schemas': True, - 'metadata': self.m2 - }) + self._update_context( + include_schemas=True, + ) uo = ops.UpgradeOps(ops=[]) autogenerate._produce_net_changes(self.autogen_context, uo) @@ -579,8 +570,8 @@ class AutogenerateCustomCompareTypeTest(AutogenTest, TestBase): self.context._user_compare_type = my_compare_type uo = ops.UpgradeOps(ops=[]) - ctx = self.autogen_context.copy() - ctx['metadata'] = self.m2 + + ctx = self.autogen_context autogenerate._produce_net_changes(ctx, uo) first_table = self.m2.tables['sometable'] @@ -604,8 +595,7 @@ class AutogenerateCustomCompareTypeTest(AutogenTest, TestBase): self.context._user_compare_type = my_compare_type diffs = [] - ctx = self.autogen_context.copy() - ctx['metadata'] = self.m2 + ctx = self.autogen_context diffs = [] autogenerate._produce_net_changes(ctx, diffs) @@ -616,8 +606,7 @@ class AutogenerateCustomCompareTypeTest(AutogenTest, TestBase): my_compare_type.return_value = True self.context._user_compare_type = my_compare_type - ctx = self.autogen_context.copy() - ctx['metadata'] = self.m2 + ctx = self.autogen_context uo = ops.UpgradeOps(ops=[]) autogenerate._produce_net_changes(ctx, uo) diffs = uo.as_diffs() @@ -648,8 +637,7 @@ class PKConstraintUpgradesIgnoresNullableTest(AutogenTest, TestBase): def test_no_change(self): diffs = [] - ctx = self.autogen_context.copy() - ctx['metadata'] = self.m2 + ctx = self.autogen_context autogenerate._produce_net_changes(ctx, diffs) eq_(diffs, []) @@ -688,8 +676,7 @@ class AutogenKeyTest(AutogenTest, TestBase): uo = ops.UpgradeOps(ops=[]) - ctx = self.autogen_context.copy() - ctx['metadata'] = self.m2 + ctx = self.autogen_context autogenerate._produce_net_changes(ctx, uo) diffs = uo.as_diffs() eq_(diffs[0][0], "add_table") @@ -718,8 +705,7 @@ class AutogenVersionTableTest(AutogenTest, TestBase): def test_no_version_table(self): diffs = [] - ctx = self.autogen_context.copy() - ctx['metadata'] = self.m2 + ctx = self.autogen_context autogenerate._produce_net_changes(ctx, diffs) eq_(diffs, []) @@ -730,8 +716,7 @@ class AutogenVersionTableTest(AutogenTest, TestBase): self.version_table_name, self.m2, Column('x', Integer), schema=self.version_table_schema) - ctx = self.autogen_context.copy() - ctx['metadata'] = self.m2 + ctx = self.autogen_context autogenerate._produce_net_changes(ctx, diffs) eq_(diffs, []) @@ -782,8 +767,7 @@ class AutogenerateDiffOrderTest(AutogenTest, TestBase): before their parent tables """ - ctx = self.autogen_context.copy() - ctx['metadata'] = self.m2 + ctx = self.autogen_context uo = ops.UpgradeOps(ops=[]) autogenerate._produce_net_changes(ctx, uo) diffs = uo.as_diffs() -- cgit v1.2.1