From: Mike Bayer Date: Sun, 17 Nov 2013 17:57:46 +0000 (-0500) Subject: - remember to add the SQLA prefix X-Git-Tag: rel_0_6_1~10 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ffe5a4deb4c4b8039a75e47c6a1489a5cea3a949;p=thirdparty%2Fsqlalchemy%2Falembic.git - remember to add the SQLA prefix - fix the SQLA 0.7 case a bit --- diff --git a/alembic/autogenerate/render.py b/alembic/autogenerate/render.py index 10a45548..8da00f79 100644 --- a/alembic/autogenerate/render.py +++ b/alembic/autogenerate/render.py @@ -9,11 +9,18 @@ log = logging.getLogger(__name__) def _render_potential_expr(value, autogen_context): if isinstance(value, sql.ClauseElement): if compat.sqla_08: - return "text(%r)" % str( - value.compile(dialect=autogen_context['dialect'], - compile_kwargs={'literal_binds': True})) + compile_kw = dict(compile_kwargs={'literal_binds': True}) else: - return str(value.compile(dialect=autogen_context['dialect'])) + compile_kw = {} + + return "%(prefix)stext(%(sql)r)" % { + "prefix": _sqlalchemy_autogenerate_prefix(autogen_context), + "sql": str( + value.compile(dialect=autogen_context['dialect'], + **compile_kw) + ) + } + else: return repr(value) diff --git a/tests/test_autogenerate.py b/tests/test_autogenerate.py index 4716f074..db35e9f8 100644 --- a/tests/test_autogenerate.py +++ b/tests/test_autogenerate.py @@ -1138,13 +1138,13 @@ class AutogenRenderTest(TestCase): eq_ignore_whitespace( autogenerate.render._add_index(idx, autogen_context), """op.create_index('foo_idx', 't', ['x', 'y'], unique=False, """ - """postgresql_where=text("t.y = 'something'"))""" + """postgresql_where=sa.text("t.y = 'something'"))""" ) else: eq_ignore_whitespace( autogenerate.render._add_index(idx, autogen_context), """op.create_index('foo_idx', 't', ['x', 'y'], unique=False, """ - """postgresql_where=text("t.y = %(y_1)s"))""" + """postgresql_where=sa.text('t.y = %(y_1)s'))""" ) # def test_render_add_index_func(self):