mirror of
https://github.com/sqlalchemy/sqlalchemy.git
synced 2026-05-14 12:47:22 -04:00
would help if commit() worked too...
This commit is contained in:
@@ -31,10 +31,10 @@ class TLSession(object):
|
||||
def commit(self):
|
||||
if self.__tcount == 1:
|
||||
try:
|
||||
self._trans.commit()
|
||||
self.__trans.commit()
|
||||
finally:
|
||||
del self.__transaction
|
||||
del self._trans
|
||||
del self.__trans
|
||||
self.__tcount = 0
|
||||
elif self.__tcount > 1:
|
||||
self.__tcount -= 1
|
||||
|
||||
+26
-4
@@ -102,8 +102,28 @@ class TLTransactionTest(testbase.PersistTest):
|
||||
tlengine.execute(users.insert(), user_id=3, user_name='user3')
|
||||
tlengine.rollback()
|
||||
|
||||
result = tlengine.execute("select * from query_users")
|
||||
assert len(result.fetchall()) == 0
|
||||
external_connection = tlengine.connect()
|
||||
result = external_connection.execute("select * from query_users")
|
||||
try:
|
||||
assert len(result.fetchall()) == 0
|
||||
finally:
|
||||
external_connection.close()
|
||||
|
||||
@testbase.unsupported('mysql')
|
||||
def testcommit(self):
|
||||
"""test a basic commit"""
|
||||
tlengine.begin()
|
||||
tlengine.execute(users.insert(), user_id=1, user_name='user1')
|
||||
tlengine.execute(users.insert(), user_id=2, user_name='user2')
|
||||
tlengine.execute(users.insert(), user_id=3, user_name='user3')
|
||||
tlengine.commit()
|
||||
|
||||
external_connection = tlengine.connect()
|
||||
result = external_connection.execute("select * from query_users")
|
||||
try:
|
||||
assert len(result.fetchall()) == 3
|
||||
finally:
|
||||
external_connection.close()
|
||||
|
||||
@testbase.unsupported('mysql', 'sqlite')
|
||||
def testnesting(self):
|
||||
@@ -119,8 +139,10 @@ class TLTransactionTest(testbase.PersistTest):
|
||||
tlengine.execute(users.insert(), user_id=5, user_name='user5')
|
||||
tlengine.commit()
|
||||
tlengine.rollback()
|
||||
self.assert_(external_connection.scalar("select count(1) from query_users") == 0)
|
||||
external_connection.close()
|
||||
try:
|
||||
self.assert_(external_connection.scalar("select count(1) from query_users") == 0)
|
||||
finally:
|
||||
external_connection.close()
|
||||
|
||||
if __name__ == "__main__":
|
||||
testbase.main()
|
||||
|
||||
Reference in New Issue
Block a user