--- a/devtools/testlib.py Fri Jun 18 08:14:00 2010 +0200
+++ b/devtools/testlib.py Fri Jun 18 09:07:41 2010 +0200
@@ -283,10 +283,8 @@
MAILBOX[:] = [] # reset mailbox
def tearDown(self):
- try:
+ if not self.cnx._closed:
self.cnx.rollback()
- except ProgrammingError:
- pass
for cnx in self._cnxs:
if not cnx._closed:
cnx.close()
@@ -337,11 +335,12 @@
def restore_connection(self):
if not self.cnx is self._orig_cnx[0]:
+ if not cnx._closed:
+ self.cnx.close()
try:
- self.cnx.close()
self._cnxs.remove(self.cnx)
- except ProgrammingError:
- pass # already closed
+ except ValueError:
+ pass
self.cnx, self.websession = self._orig_cnx
# db api ##################################################################
@@ -373,7 +372,7 @@
try:
self.cnx.rollback()
except ProgrammingError:
- pass
+ pass # connection closed
finally:
self.session.set_pool() # ensure pool still set after commit