Commit 40f0d21a authored by Hanno Schlichting's avatar Hanno Schlichting

Backported c116931 from trunk

parent 53757933
...@@ -11,6 +11,9 @@ http://docs.zope.org/zope2/releases/. ...@@ -11,6 +11,9 @@ http://docs.zope.org/zope2/releases/.
Bugs Fixed Bugs Fixed
++++++++++ ++++++++++
- Fixed ``testZODBCompat`` tests in ZopeTestCase to match modern ZODB
semantics.
- Fixed unit test that failed on fast Windows machines. - Fixed unit test that failed on fast Windows machines.
- Fixed OverflowError in Products.ZCatalog.Lazy on 64bit python - Fixed OverflowError in Products.ZCatalog.Lazy on 64bit python
......
...@@ -322,50 +322,19 @@ class TestAttributesOfDirtyObjects(ZopeTestCase.ZopeTestCase): ...@@ -322,50 +322,19 @@ class TestAttributesOfDirtyObjects(ZopeTestCase.ZopeTestCase):
class TestTransactionAbort(ZopeTestCase.ZopeTestCase): class TestTransactionAbort(ZopeTestCase.ZopeTestCase):
def testTransactionAbort(self): def _getfolder(self):
self.folder.foo = 1 return getattr(self.app, folder_name, None)
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 testSubTransactionAbortPersistent(self): def testTransactionAbort(self):
self.folder._p_foo = 1 folder = self._getfolder()
self.failUnless(hasattr(self.folder, '_p_foo')) self.assert_(folder is not None)
transaction.savepoint(optimistic=True) self.assert_(folder._p_jar is None)
transaction.abort() transaction.savepoint()
# This time the abort nukes the _p_foo attribute... self.assert_(folder._p_jar is not None)
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)
transaction.abort() transaction.abort()
# This time the abort nukes the _v_foo attribute... del folder
self.failIf(hasattr(self.folder, '_v_foo')) folder = self._getfolder()
self.assert_(folder is None)
def test_suite(): def test_suite():
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment