summaryrefslogtreecommitdiff
path: root/test/sql/test_metadata.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2013-01-27 11:23:59 -0500
committerMike Bayer <mike_mp@zzzcomputing.com>2013-01-27 11:23:59 -0500
commite26b28224d7c1745a8a2892372e1f5a8862e792c (patch)
tree6598b8cbd336c1901538974a92dbaa823e822b09 /test/sql/test_metadata.py
parent8ca42e38b3cec03298844b6634b16363673bf825 (diff)
downloadsqlalchemy-e26b28224d7c1745a8a2892372e1f5a8862e792c.tar.gz
Fixed bug where :meth:`.Table.tometadata` would fail if a
:class:`.Column` had both a foreign key as well as an alternate ".key" name for the column. Also in 0.7.10. [ticket:2643]
Diffstat (limited to 'test/sql/test_metadata.py')
-rw-r--r--test/sql/test_metadata.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/sql/test_metadata.py b/test/sql/test_metadata.py
index 4627a9662..f8256bca7 100644
--- a/test/sql/test_metadata.py
+++ b/test/sql/test_metadata.py
@@ -349,6 +349,18 @@ class MetaDataTest(fixtures.TestBase, ComparesTables):
finally:
meta.drop_all(testing.db)
+ def test_col_key_fk_parent_tometadata(self):
+ # test #2643
+ m1 = MetaData()
+ a = Table('a', m1, Column('x', Integer))
+ b = Table('b', m1, Column('x', Integer, ForeignKey('a.x'), key='y'))
+ assert b.c.y.references(a.c.x)
+
+ m2 = MetaData()
+ b2 = b.tometadata(m2)
+ a2 = a.tometadata(m2)
+ assert b2.c.y.references(a2.c.x)
+
def test_pickle_metadata_sequence_restated(self):
m1 = MetaData()
Table('a', m1,