Commits

Mike Bayer committed 36c0cdc

added additional unit test to test that commit errors are detected, rollback occurs in an except:

Comments (0)

Files changed (1)

test/engine/transaction.py

         assert len(result.fetchall()) == 0
         connection.close()
 
+    def testraise(self):
+        connection = testbase.db.connect()
+        
+        transaction = connection.begin()
+        try:
+            connection.execute(users.insert(), user_id=1, user_name='user1')
+            connection.execute(users.insert(), user_id=2, user_name='user2')
+            connection.execute(users.insert(), user_id=1, user_name='user3')
+            transaction.commit()
+            assert False
+        except Exception , e:
+            print "Exception: ", e
+            transaction.rollback()
+        
+        result = connection.execute("select * from query_users")
+        assert len(result.fetchall()) == 0
+        connection.close()
+        
     def testnestedrollback(self):
         connection = testbase.db.connect()
         
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.