Skip to content

Commit

Permalink
Backported c116931 from trunk
Browse files Browse the repository at this point in the history
  • Loading branch information
hannosch committed Oct 1, 2010
1 parent 5375793 commit 40f0d21
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 42 deletions.
3 changes: 3 additions & 0 deletions doc/CHANGES.rst
Expand Up @@ -11,6 +11,9 @@ http://docs.zope.org/zope2/releases/.
Bugs Fixed
++++++++++

- Fixed ``testZODBCompat`` tests in ZopeTestCase to match modern ZODB
semantics.

- Fixed unit test that failed on fast Windows machines.

- Fixed OverflowError in Products.ZCatalog.Lazy on 64bit python
Expand Down
53 changes: 11 additions & 42 deletions src/Testing/ZopeTestCase/testZODBCompat.py
Expand Up @@ -322,50 +322,19 @@ def testDirtyVolatile_03(self):

class TestTransactionAbort(ZopeTestCase.ZopeTestCase):

def testTransactionAbort(self):
self.folder.foo = 1
self.failUnless(hasattr(self.folder, 'foo'))
transaction.abort()
# The foo attribute is still present
self.failUnless(hasattr(self.folder, 'foo'))

def testSubTransactionAbort(self):
self.folder.foo = 1
self.failUnless(hasattr(self.folder, 'foo'))
transaction.savepoint(optimistic=True)
transaction.abort()
# This time the abort nukes the foo attribute...
self.failIf(hasattr(self.folder, 'foo'))

def testTransactionAbortPersistent(self):
self.folder._p_foo = 1
self.failUnless(hasattr(self.folder, '_p_foo'))
transaction.abort()
# The _p_foo attribute is still present
self.failUnless(hasattr(self.folder, '_p_foo'))
def _getfolder(self):
return getattr(self.app, folder_name, None)

def testSubTransactionAbortPersistent(self):
self.folder._p_foo = 1
self.failUnless(hasattr(self.folder, '_p_foo'))
transaction.savepoint(optimistic=True)
transaction.abort()
# This time the abort nukes the _p_foo attribute...
self.failIf(hasattr(self.folder, '_p_foo'))

def testTransactionAbortVolatile(self):
self.folder._v_foo = 1
self.failUnless(hasattr(self.folder, '_v_foo'))
transaction.abort()
# The _v_foo attribute is still present
self.failUnless(hasattr(self.folder, '_v_foo'))

def testSubTransactionAbortVolatile(self):
self.folder._v_foo = 1
self.failUnless(hasattr(self.folder, '_v_foo'))
transaction.savepoint(optimistic=True)
def testTransactionAbort(self):
folder = self._getfolder()
self.assert_(folder is not None)
self.assert_(folder._p_jar is None)
transaction.savepoint()
self.assert_(folder._p_jar is not None)
transaction.abort()
# This time the abort nukes the _v_foo attribute...
self.failIf(hasattr(self.folder, '_v_foo'))
del folder
folder = self._getfolder()
self.assert_(folder is None)


def test_suite():
Expand Down

0 comments on commit 40f0d21

Please sign in to comment.