summaryrefslogtreecommitdiff
path: root/tests/test_autogen_render.py
diff options
context:
space:
mode:
authormike bayer <mike_mp@zzzcomputing.com>2019-09-19 00:13:42 +0000
committerGerrit Code Review <gerrit@bbpush.zzzcomputing.com>2019-09-19 00:13:42 +0000
commit31296d923fbbf9876f6ed797a66021b5236b720c (patch)
tree3640f597ded0985e9d998a67e36d4bb98586fbbf /tests/test_autogen_render.py
parent42fcb706101255639db0c01c7308efb93d97bf8a (diff)
parentbc0df6ccb81a7722d4c73f019bded66cc09362fd (diff)
downloadalembic-31296d923fbbf9876f6ed797a66021b5236b720c.tar.gz
Merge "Support autogenerate for add_column kwargs"
Diffstat (limited to 'tests/test_autogen_render.py')
-rw-r--r--tests/test_autogen_render.py33
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/test_autogen_render.py b/tests/test_autogen_render.py
index 3c28a03..b31c3f8 100644
--- a/tests/test_autogen_render.py
+++ b/tests/test_autogen_render.py
@@ -22,6 +22,7 @@ from sqlalchemy import Numeric
from sqlalchemy import PrimaryKeyConstraint
from sqlalchemy import String
from sqlalchemy import Table
+from sqlalchemy import testing
from sqlalchemy import text
from sqlalchemy import types
from sqlalchemy import Unicode
@@ -89,6 +90,23 @@ class AutogenRenderTest(TestBase):
"['active', 'code'], unique=False)",
)
+ @testing.emits_warning("Can't validate argument ")
+ def test_render_add_index_custom_kwarg(self):
+ t = Table(
+ "test",
+ MetaData(),
+ Column("id", Integer, primary_key=True),
+ Column("active", Boolean()),
+ Column("code", String(255)),
+ )
+ idx = Index(None, t.c.active, t.c.code, somedialect_foobar="option")
+ op_obj = ops.CreateIndexOp.from_index(idx)
+ eq_ignore_whitespace(
+ autogenerate.render_op_text(self.autogen_context, op_obj),
+ "op.create_index(op.f('ix_test_active'), 'test', "
+ "['active', 'code'], unique=False, somedialect_foobar='option')",
+ )
+
def test_render_add_index_batch(self):
"""
autogenerate.render._add_index
@@ -1057,6 +1075,21 @@ class AutogenRenderTest(TestBase):
"server_default='5', nullable=True))",
)
+ @testing.requires.sqlalchemy_13
+ @testing.emits_warning("Can't validate argument ")
+ def test_render_add_column_custom_kwarg(self):
+ col = Column(
+ "x", Integer, server_default="5", somedialect_foobar="option"
+ )
+ Table("foo", MetaData(), col)
+
+ op_obj = ops.AddColumnOp.from_column(col)
+ eq_ignore_whitespace(
+ autogenerate.render_op_text(self.autogen_context, op_obj),
+ "op.add_column('foo', sa.Column('x', sa.Integer(), "
+ "server_default='5', nullable=True, somedialect_foobar='option'))",
+ )
+
def test_render_add_column_system(self):
# this would never actually happen since "system" columns
# can't be added in any case. Howver it will render as