diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2006-06-22 04:29:55 +0000 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2006-06-22 04:29:55 +0000 |
| commit | 0ab010867f39e6ae20af23b36b3b78f9948ec181 (patch) | |
| tree | 9d745ab8b1281e97eb2ead5947eca16336d5c763 /test | |
| parent | bb1fde2042f389e7a21f070b11fdbe7c5c5cd535 (diff) | |
| download | sqlalchemy-0ab010867f39e6ae20af23b36b3b78f9948ec181.tar.gz | |
more compilation fixes
Diffstat (limited to 'test')
| -rw-r--r-- | test/orm/alltests.py | 16 | ||||
| -rw-r--r-- | test/orm/compile.py | 37 |
2 files changed, 45 insertions, 8 deletions
diff --git a/test/orm/alltests.py b/test/orm/alltests.py index cfbfdb70b..6bcad2c15 100644 --- a/test/orm/alltests.py +++ b/test/orm/alltests.py @@ -18,14 +18,14 @@ def suite(): 'orm.cycles', 'orm.poly_linked_list', - 'orm.entity', - 'orm.compile', - 'orm.manytomany', - 'orm.onetoone', - 'orm.inheritance', - 'orm.inheritance2', - 'orm.inheritance3', - 'orm.polymorph' + 'orm.entity', + 'orm.compile', + 'orm.manytomany', + 'orm.onetoone', + 'orm.inheritance', + 'orm.inheritance2', + 'orm.inheritance3', + 'orm.polymorph' ) alltests = unittest.TestSuite() for name in modules_to_test: diff --git a/test/orm/compile.py b/test/orm/compile.py index c927ae53b..007edd596 100644 --- a/test/orm/compile.py +++ b/test/orm/compile.py @@ -117,5 +117,42 @@ class CompileTest(testbase.AssertMixin): except exceptions.ArgumentError, e: assert str(e).index("Backrefs do not match") > -1 + def testthree(self): + metadata = BoundMetaData(testbase.db) + node_table = Table("node", metadata, + Column('node_id', Integer, primary_key=True), + Column('name_index', Integer, nullable=True), + ) + node_name_table = Table("node_name", metadata, + Column('node_name_id', Integer, primary_key=True), + Column('node_id', Integer, ForeignKey('node.node_id')), + Column('host_id', Integer, ForeignKey('host.host_id')), + Column('name', String(64), nullable=False), + ) + host_table = Table("host", metadata, + Column('host_id', Integer, primary_key=True), + Column('hostname', String(64), nullable=False, + unique=True), + ) + metadata.create_all() + try: + node_table.insert().execute(node_id=1, node_index=5) + class Node(object):pass + class NodeName(object):pass + class Host(object):pass + + node_mapper = mapper(Node, node_table) + host_mapper = mapper(Host, host_table) + node_name_mapper = mapper(NodeName, node_name_table, + properties = { + 'node' : relation(Node, backref=backref('names')), + 'host' : relation(Host), + } + ) + sess = create_session() + assert sess.query(Node).get(1).names == [] + finally: + metadata.drop_all() + if __name__ == '__main__': testbase.main() |
