[Checkins] SVN: z3c.sqlalchemy/trunk/src/z3c/sqlalchemy/tests/testSQLAlchemy.py test for associated mappers

Andreas Jung andreas at andreas-jung.com
Sun May 13 10:19:44 EDT 2007


Log message for revision 75715:
  test for associated mappers
  

Changed:
  U   z3c.sqlalchemy/trunk/src/z3c/sqlalchemy/tests/testSQLAlchemy.py

-=-
Modified: z3c.sqlalchemy/trunk/src/z3c/sqlalchemy/tests/testSQLAlchemy.py
===================================================================
--- z3c.sqlalchemy/trunk/src/z3c/sqlalchemy/tests/testSQLAlchemy.py	2007-05-13 14:15:45 UTC (rev 75714)
+++ z3c.sqlalchemy/trunk/src/z3c/sqlalchemy/tests/testSQLAlchemy.py	2007-05-13 14:19:44 UTC (rev 75715)
@@ -40,7 +40,7 @@
 
         cur.execute("""CREATE TABLE user(id int4 primary key,"""
                     """                  firstname varchar(255),"""
-                    """                  lasttname varchar(255)"""
+                    """                  lastname varchar(255)"""
                     """)""")
 
         try:
@@ -153,7 +153,30 @@
         wrapper2 = getSAWrapper('test.wrapper3')
         self.assertEqual(wrapper, wrapper2)
 
+        
+    def testMapperGetMapper(self):
 
+        def getModel(md):
+
+            model = Model()
+            model.add('user', table=sqlalchemy.Table('user', md, autoload=True), relations=('skills',))
+            model.add('skills', table=sqlalchemy.Table('skills', 
+                                                       md, 
+                                                       sqlalchemy.ForeignKeyConstraint(('user_id',), ('user.id',)),
+                                                       autoload=True, 
+                                                       ))
+            return model
+
+        db = createSAWrapper('sqlite:///test', model=getModel)
+        User = db.getMapper('user')
+        session = db.session
+        session.save(User(id=1,firstname='foo', lastname='bar'))
+        session.flush()
+        user = session.query(User).select_by(firstname='foo')[0]
+        Skill = user.getMapper('skills')
+        user.skills.append(Skill(id=1, name='Zope'))
+        session.flush()
+
 def test_suite():
     from unittest import TestSuite, makeSuite
     suite = TestSuite()



More information about the Checkins mailing list