Add `comment attribute to :class:.Column __repr__` method.

Fixes #4138

Change-Id: Ia93f7d7b1d2f38509421725fbe152a2ff163d5f3
This commit is contained in:
Federico Caselli
2020-04-11 20:50:37 +02:00
parent 43bcb0de1e
commit 35b74d8a33
3 changed files with 24 additions and 0 deletions
+5
View File
@@ -0,0 +1,5 @@
.. change::
:tags: schema
:tickets: 4138
Add ``comment`` attribute to :class:`.Column` ``__repr__`` method.
+2
View File
@@ -1382,6 +1382,8 @@ class Column(DialectKWArgs, SchemaItem, ColumnClause):
kwarg.append("default")
if self.server_default:
kwarg.append("server_default")
if self.comment:
kwarg.append("comment")
return "Column(%s)" % ", ".join(
[repr(self.name)]
+ [repr(self.type)]
+17
View File
@@ -32,6 +32,7 @@ from sqlalchemy import UniqueConstraint
from sqlalchemy.engine import default
from sqlalchemy.schema import AddConstraint
from sqlalchemy.schema import CreateIndex
from sqlalchemy.schema import DefaultClause
from sqlalchemy.schema import DropIndex
from sqlalchemy.sql import naming
from sqlalchemy.sql import operators
@@ -627,6 +628,22 @@ class MetaDataTest(fixtures.TestBase, ComparesTables):
(Sequence("my_seq"), "Sequence('my_seq')"),
(Sequence("my_seq", start=5), "Sequence('my_seq', start=5)"),
(Column("foo", Integer), "Column('foo', Integer(), table=None)"),
(
Column(
"foo",
Integer,
primary_key=True,
nullable=False,
onupdate=1,
default=42,
server_default="42",
comment="foo",
),
"Column('foo', Integer(), table=None, primary_key=True, "
"nullable=False, onupdate=%s, default=%s, server_default=%s, "
"comment='foo')"
% (ColumnDefault(1), ColumnDefault(42), DefaultClause("42"),),
),
(
Table("bar", MetaData(), Column("x", String)),
"Table('bar', MetaData(bind=None), "