summaryrefslogtreecommitdiff
path: root/test/ext/test_declarative_reflection.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/ext/test_declarative_reflection.py')
-rw-r--r--test/ext/test_declarative_reflection.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/ext/test_declarative_reflection.py b/test/ext/test_declarative_reflection.py
index 38dd7cec3..a5f0df2b3 100644
--- a/test/ext/test_declarative_reflection.py
+++ b/test/ext/test_declarative_reflection.py
@@ -153,6 +153,32 @@ class DeferredReflectBase(DeclarativeReflectionBase):
from sqlalchemy.ext.declarative import _MapperConfig
_MapperConfig.configs.clear()
+class DeferredReflectPKFKTest(DeferredReflectBase):
+ @classmethod
+ def define_tables(cls, metadata):
+ Table("a", metadata,
+ Column('id', Integer,
+ primary_key=True, test_needs_autoincrement=True),
+ )
+ Table("b", metadata,
+ Column('id', Integer,
+ ForeignKey('a.id'),
+ primary_key=True),
+ Column('x', Integer, primary_key=True)
+ )
+
+ def test_pk_fk(self):
+ class B(decl.DeferredReflection, fixtures.ComparableEntity,
+ Base):
+ __tablename__ = 'b'
+ a = relationship("A")
+
+ class A(decl.DeferredReflection, fixtures.ComparableEntity,
+ Base):
+ __tablename__ = 'a'
+
+ decl.DeferredReflection.prepare(testing.db)
+
class DeferredReflectionTest(DeferredReflectBase):
@classmethod