--- /dev/null
+from testbase import PersistTest
+import unittest, sys
+
+import sqlalchemy.databases.sqlite as sqllite
+
+db = sqllite.engine('querytest.db', echo = True)
+
+from sqlalchemy.sql import *
+from sqlalchemy.schema import *
+
+class QueryTest(PersistTest):
+
+ def setUp(self):
+ self.users = Table('users', db,
+ Column('user_id', INT, primary_key = True),
+ Column('user_name', VARCHAR(20)),
+ )
+ self.users.build()
+
+
+ def testinsert(self):
+ c = db.connection()
+ self.users.insert().execute(user_id = 7, user_name = 'jack')
+ print repr(self.users.select().execute().fetchall())
+
+ def testupdate(self):
+ c = db.connection()
+
+ self.users.insert().execute(user_id = 7, user_name = 'jack')
+ print repr(self.users.select().execute().fetchall())
+
+ self.users.update(self.users.c.user_id == 7).execute(user_name = 'fred')
+ print repr(self.users.select().execute().fetchall())
+
+ def testtransaction(self):
+ def dostuff():
+ self.users.insert().execute(user_id = 7, user_name = 'john')
+ self.users.insert().execute(user_id = 8, user_name = 'jack')
+
+ db.transaction(dostuff)
+ print repr(self.users.select().execute().fetchall())
+
+
+ def tearDown(self):
+ self.users.drop()
+
+if __name__ == "__main__":
+ unittest.main()