summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/testing/suite
diff options
context:
space:
mode:
authormike bayer <mike_mp@zzzcomputing.com>2017-03-17 14:16:27 -0400
committerGerrit Code Review <gerrit@awstats.zzzcomputing.com>2017-03-17 14:16:27 -0400
commitd96fc5d02a921820aa5973daf66445c880ca6cd4 (patch)
treea7b3a47cca6e9a5af48dda6b3d92e3ba3f0b2418 /lib/sqlalchemy/testing/suite
parent9974e9a46bdf6c570c650aa911b76c2dcfd9327b (diff)
parentfadb8d61babb76ef7bdbc98279096a8900c7328d (diff)
downloadsqlalchemy-d96fc5d02a921820aa5973daf66445c880ca6cd4.tar.gz
Merge "Implement comments for tables, columns"
Diffstat (limited to 'lib/sqlalchemy/testing/suite')
-rw-r--r--lib/sqlalchemy/testing/suite/test_reflection.py46
1 files changed, 44 insertions, 2 deletions
diff --git a/lib/sqlalchemy/testing/suite/test_reflection.py b/lib/sqlalchemy/testing/suite/test_reflection.py
index 572cc4a0a..a761c0882 100644
--- a/lib/sqlalchemy/testing/suite/test_reflection.py
+++ b/lib/sqlalchemy/testing/suite/test_reflection.py
@@ -102,6 +102,11 @@ class ComponentReflectionTest(fixtures.TablesTest):
schema=schema,
test_needs_fk=True,
)
+ Table('comment_test', metadata,
+ Column('id', sa.Integer, primary_key=True, comment='id comment'),
+ Column('data', sa.String(20), comment='data comment'),
+ schema=schema,
+ comment='the test table comment')
if testing.requires.index_reflection.enabled:
cls.define_index(metadata, users)
@@ -203,8 +208,11 @@ class ComponentReflectionTest(fixtures.TablesTest):
answer = ['email_addresses_v', 'users_v']
eq_(sorted(table_names), answer)
else:
- table_names = insp.get_table_names(schema,
- order_by=order_by)
+ table_names = [
+ t for t in insp.get_table_names(
+ schema,
+ order_by=order_by) if t not in ('comment_test', )]
+
if order_by == 'foreign_key':
answer = ['users', 'email_addresses', 'dingalings']
eq_(table_names, answer)
@@ -235,6 +243,40 @@ class ComponentReflectionTest(fixtures.TablesTest):
def test_get_table_names_fks(self):
self._test_get_table_names(order_by='foreign_key')
+ @testing.requires.comment_reflection
+ def test_get_comments(self):
+ self._test_get_comments()
+
+ @testing.requires.comment_reflection
+ @testing.requires.schemas
+ def test_get_comments_with_schema(self):
+ self._test_get_comments(testing.config.test_schema)
+
+ def _test_get_comments(self, schema=None):
+ insp = inspect(testing.db)
+
+ eq_(
+ insp.get_table_comment("comment_test", schema=schema),
+ {"text": "the test table comment"}
+ )
+
+ eq_(
+ insp.get_table_comment("users", schema=schema),
+ {"text": None}
+ )
+
+ eq_(
+ [
+ {"name": rec['name'], "comment": rec['comment']}
+ for rec in
+ insp.get_columns("comment_test", schema=schema)
+ ],
+ [
+ {'comment': 'id comment', 'name': 'id'},
+ {'comment': 'data comment', 'name': 'data'}
+ ]
+ )
+
@testing.requires.table_reflection
@testing.requires.schemas
def test_get_table_names_with_schema(self):