diff options
Diffstat (limited to 'test/ext/test_declarative_reflection.py')
| -rw-r--r-- | test/ext/test_declarative_reflection.py | 26 |
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 |
