[Checkins] SVN: Products.CMFCore/trunk/Products/CMFCore/ unittest cleanup:

Yvo Schubbe cvs-admin at zope.org
Sun Apr 22 11:04:14 UTC 2012


Log message for revision 125228:
  unittest cleanup:
  - replaced deprecated assert method aliases
  - PEP 8

Changed:
  U   Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_actions.py
  U   Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_content.py
  U   Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_properties.py
  U   Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_skins.py
  U   Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_typeinfo.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionInformation.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionProviderBase.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionsTool.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_CMFBTreeFolder.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_CMFCatalogAware.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_CachingPolicyManager.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_CatalogTool.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_ContentTypeRegistry.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_CookieCrumbler.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_DirectoryView.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_DynamicType.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_Expression.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_FSDTMLMethod.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_FSFile.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_FSImage.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPageTemplate.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPropertiesObject.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPythonScript.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_FSReSTMethod.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_FSSTXMethod.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_FSZSQLMethod.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_MembershipTool.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_OpaqueItems.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_PortalFolder.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_RegistrationTool.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_SkinsTool.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_TypesTool.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_WorkflowTool.py
  U   Products.CMFCore/trunk/Products/CMFCore/tests/test_utils.py

-=-
Modified: Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_actions.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_actions.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_actions.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -444,16 +444,16 @@
         site, atool = self._initSite(2, 0)
 
         self.assertEqual(len(atool.listActionProviders()), 2)
-        self.failUnless('portal_foo' in atool.listActionProviders())
-        self.failUnless('portal_actions' in atool.listActionProviders())
+        self.assertTrue('portal_foo' in atool.listActionProviders())
+        self.assertTrue('portal_actions' in atool.listActionProviders())
 
         context = DummyImportContext(site)
         context._files['actions.xml'] = _EMPTY_EXPORT
         importActionProviders(context)
 
         self.assertEqual(len(atool.listActionProviders()), 1)
-        self.failIf('portal_foo' in atool.listActionProviders())
-        self.failUnless('portal_actions' in atool.listActionProviders())
+        self.assertFalse('portal_foo' in atool.listActionProviders())
+        self.assertTrue('portal_actions' in atool.listActionProviders())
         self.assertEqual(len(atool.objectIds()), 0)
 
     def test_empty_explicit_purge(self):
@@ -463,16 +463,16 @@
         site, atool = self._initSite(2, 0)
 
         self.assertEqual(len(atool.listActionProviders()), 2)
-        self.failUnless('portal_foo' in atool.listActionProviders())
-        self.failUnless('portal_actions' in atool.listActionProviders())
+        self.assertTrue('portal_foo' in atool.listActionProviders())
+        self.assertTrue('portal_actions' in atool.listActionProviders())
 
         context = DummyImportContext(site, True)
         context._files['actions.xml'] = _EMPTY_EXPORT
         importActionProviders(context)
 
         self.assertEqual(len(atool.listActionProviders()), 1)
-        self.failIf('portal_foo' in atool.listActionProviders())
-        self.failUnless('portal_actions' in atool.listActionProviders())
+        self.assertFalse('portal_foo' in atool.listActionProviders())
+        self.assertTrue('portal_actions' in atool.listActionProviders())
         self.assertEqual(len(atool.objectIds()), 0)
 
     def test_empty_skip_purge(self):
@@ -482,16 +482,16 @@
         site, atool = self._initSite(2, 0)
 
         self.assertEqual(len(atool.listActionProviders()), 2)
-        self.failUnless('portal_foo' in atool.listActionProviders())
-        self.failUnless('portal_actions' in atool.listActionProviders())
+        self.assertTrue('portal_foo' in atool.listActionProviders())
+        self.assertTrue('portal_actions' in atool.listActionProviders())
 
         context = DummyImportContext(site, False)
         context._files['actions.xml'] = _EMPTY_EXPORT
         importActionProviders(context)
 
         self.assertEqual(len(atool.listActionProviders()), 2)
-        self.failUnless('portal_foo' in atool.listActionProviders())
-        self.failUnless('portal_actions' in atool.listActionProviders())
+        self.assertTrue('portal_foo' in atool.listActionProviders())
+        self.assertTrue('portal_actions' in atool.listActionProviders())
 
     def test_normal(self):
         from Products.CMFCore.exportimport.actions \
@@ -504,30 +504,30 @@
         bar = site.portal_bar
 
         self.assertEqual(len(atool.listActionProviders()), 1)
-        self.failIf('portal_foo' in atool.listActionProviders())
-        self.failIf(foo.listActions())
-        self.failIf('portal_bar' in atool.listActionProviders())
-        self.failIf(bar.listActions())
-        self.failUnless('portal_actions' in atool.listActionProviders())
+        self.assertFalse('portal_foo' in atool.listActionProviders())
+        self.assertFalse(foo.listActions())
+        self.assertFalse('portal_bar' in atool.listActionProviders())
+        self.assertFalse(bar.listActions())
+        self.assertTrue('portal_actions' in atool.listActionProviders())
 
         context = DummyImportContext(site)
         context._files['actions.xml'] = _OLD_EXPORT
         importActionProviders(context)
 
         self.assertEqual(len(atool.listActionProviders()), 3)
-        self.failUnless('portal_bar' in atool.listActionProviders())
-        self.failUnless('portal_foo' in atool.listActionProviders())
-        self.failUnless('portal_actions' in atool.listActionProviders())
+        self.assertTrue('portal_bar' in atool.listActionProviders())
+        self.assertTrue('portal_foo' in atool.listActionProviders())
+        self.assertTrue('portal_actions' in atool.listActionProviders())
 
         self.assertEqual(len(atool.objectIds()), 1)
-        self.failUnless('dummy' in atool.objectIds())
+        self.assertTrue('dummy' in atool.objectIds())
         # Only one action appears. The importer only deals with actions
         # defined by the actions tool. Other tools are responsible for
         # exporting/importing actions themselves.
-        self.assertEqual(len(atool.dummy.objectIds()) , 1)
-        self.failUnless('baz' in atool.dummy.objectIds())
-        self.failIf(foo.listActions())
-        self.failIf(bar.listActions())
+        self.assertEqual(len(atool.dummy.objectIds()), 1)
+        self.assertTrue('baz' in atool.dummy.objectIds())
+        self.assertFalse(foo.listActions())
+        self.assertFalse(bar.listActions())
 
         # complete the roundtrip
         context = DummyExportContext(site)
@@ -597,7 +597,7 @@
         site, atool = self._initSite(2, 2)
 
         self.assertEqual(atool.listActionProviders(),
-                          ['portal_actions', 'portal_foo', 'portal_bar'])
+                         ['portal_actions', 'portal_foo', 'portal_bar'])
 
         context = DummyImportContext(site, False)
         context._files['actions.xml'] = _REMOVE_IMPORT

Modified: Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_content.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_content.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_content.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -212,7 +212,7 @@
             self.assertEqual(objects[index][0], ITEM_IDS[index])
             self.assertEqual(objects[index][1], TEST_INI_AWARE)
 
-            filename, text, content_type = context._wrote[index+2]
+            filename, text, content_type = context._wrote[index + 2]
             self.assertEqual(filename, 'structure/%s.ini' % ITEM_IDS[index])
             object = site._getOb(ITEM_IDS[index])
             self.assertEqual(text.strip(),
@@ -255,7 +255,7 @@
             self.assertEqual(objects[index][0], ITEM_IDS[index])
             self.assertEqual(objects[index][1], TEST_INI_AWARE)
 
-            filename, text, content_type = context._wrote[index+2]
+            filename, text, content_type = context._wrote[index + 2]
             self.assertEqual(filename, 'structure/%s.ini' % ITEM_IDS[index])
             object = site._getOb(ITEM_IDS[index])
             self.assertEqual(text.strip(),
@@ -301,7 +301,7 @@
             self.assertEqual(objects[index][0], ITEM_IDS[index])
             self.assertEqual(objects[index][1], TEST_INI_AWARE)
 
-            filename, text, content_type = context._wrote[index+2]
+            filename, text, content_type = context._wrote[index + 2]
             self.assertEqual(filename, 'structure/%s.ini' % ITEM_IDS[index])
             object = site._getOb(ITEM_IDS[index])
             self.assertEqual(text.strip(),
@@ -350,7 +350,7 @@
             self.assertEqual(objects[index][0], ITEM_IDS[index])
             self.assertEqual(objects[index][1], TEST_INI_AWARE)
 
-            filename, text, content_type = context._wrote[index+2]
+            filename, text, content_type = context._wrote[index + 2]
             self.assertEqual(filename, 'structure/%s.ini' % ITEM_IDS[index])
             object = site._getOb(ITEM_IDS[index])
             self.assertEqual(text.strip(),
@@ -385,7 +385,7 @@
         exporter = self._getExporter()
         exporter(context)
 
-        self.assertEqual(len(context._wrote), 2 + (2 *len(FOLDER_IDS)))
+        self.assertEqual(len(context._wrote), 2 + (2 * len(FOLDER_IDS)))
         filename, text, content_type = context._wrote[0]
         self.assertEqual(filename, 'structure/.objects')
         self.assertEqual(content_type, 'text/comma-separated-values')
@@ -506,7 +506,7 @@
         for id in FOLDER_IDS:
             context._files['structure/%s/.objects' % id] = ''
             context._files['structure/%s/.properties' % id] = (
-                _PROPERTIES_TEMPLATE % id )
+                _PROPERTIES_TEMPLATE % id)
 
         _ROOT_OBJECTS = '\n'.join(['%s,%s' % (id, TEST_FOLDER)
                                         for id in FOLDER_IDS])
@@ -595,7 +595,7 @@
         self.assertEqual(len(context._notes), len(ITEM_IDS))
         for _level, component, message in context._notes:
             self.assertEqual(component, 'SFWA')
-            self.failUnless(message.startswith("Couldn't make"))
+            self.assertTrue(message.startswith("Couldn't make"))
 
     def test_reimport_no_structure_no_delete(self):
         self._setUpAdapters()
@@ -639,7 +639,7 @@
 
         self.assertEqual(len(site.objectIds()), len(ITEM_IDS))
         for obj in site.objectValues():
-            self.failIf(hasattr(obj, 'before'))
+            self.assertFalse(hasattr(obj, 'before'))
 
     def test_reimport_with_structure_and_preserve(self):
         self._setUpAdapters()
@@ -728,9 +728,9 @@
 
         after = site.objectIds()
         self.assertEqual(len(after), len(ITEM_IDS) - 1)
-        self.failIf('baz' in after)
+        self.assertFalse('baz' in after)
         self.assertEqual(getattr(site.foo, 'before', None), True)
-        self.failIf(hasattr(site.bar, 'before'))
+        self.assertFalse(hasattr(site.bar, 'before'))
 
     def test_import_site_with_subfolders_and_preserve(self):
         self._setUpAdapters()
@@ -894,6 +894,7 @@
     class _TypeInfo(DummyType):
         def _getId(self):
             return self._id
+
         def constructInstance(self, container, id, *args, **kw):
             portal_type = self._getId()
             if portal_type == TEST_FOLDER:
@@ -906,7 +907,7 @@
             elif portal_type == TEST_CSV_AWARE:
                 content = _makeCSVAware(id)
             else:
-                raise ValueError, 'Ugh'
+                raise ValueError('Ugh')
             content.portal_type = portal_type
             container._setObject(id, content)
             return container._getOb(id)

Modified: Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_properties.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_properties.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_properties.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -71,7 +71,8 @@
         obj._setPropValue('title', 'Foo')
         obj._setProperty('default_charset', 'iso-8859-1', 'string')
         obj._setProperty('foo_string', 'foo', 'string')
-        obj._setProperty('bar_string', u'B\xe4r'.encode('iso-8859-1'), 'string')
+        obj._setProperty('bar_string', u'B\xe4r'.encode('iso-8859-1'),
+                         'string')
         obj._setProperty('foo_boolean', False, 'boolean')
 
     def _verifyImport(self, obj):
@@ -96,8 +97,8 @@
     def _initSite(self, foo=2, bar=2):
         from Products.CMFCore.PortalObject import PortalObjectBase
 
-        self.root.site = PortalObjectBase('foo_site')
-        site = self.root.site
+        self.app.site = PortalObjectBase('foo_site')
+        site = self.app.site
 
         if foo > 0:
             site._setProperty('foo', '', 'string')
@@ -105,10 +106,10 @@
             site._updateProperty('foo', 'Foo')
 
         if bar > 0:
-            site._setProperty( 'bar', (), 'tokens' )
-            site._setProperty( 'moo', (), 'tokens' )
+            site._setProperty('bar', (), 'tokens')
+            site._setProperty('moo', (), 'tokens')
         if bar > 1:
-            site._updateProperty( 'bar', ('Bar',) )
+            site._updateProperty('bar', ('Bar',))
             site.moo = ['Moo']
 
         return site
@@ -137,7 +138,7 @@
                 import exportSiteProperties
 
         site = self._initSite()
-        context = DummyExportContext( site )
+        context = DummyExportContext(site)
         exportSiteProperties(context)
 
         self.assertEqual(len(context._wrote), 1)
@@ -157,17 +158,17 @@
 
         site = self._initSite()
 
-        self.assertEqual( len( site.propertyIds() ), 4 )
-        self.failUnless( 'foo' in site.propertyIds() )
-        self.assertEqual( site.getProperty('foo'), 'Foo' )
-        self.failUnless( 'bar' in site.propertyIds() )
-        self.assertEqual( site.getProperty('bar'), ('Bar',) )
+        self.assertEqual(len(site.propertyIds()), 4)
+        self.assertTrue('foo' in site.propertyIds())
+        self.assertEqual(site.getProperty('foo'), 'Foo')
+        self.assertTrue('bar' in site.propertyIds())
+        self.assertEqual(site.getProperty('bar'), ('Bar',))
 
         context = DummyImportContext(site)
         context._files['properties.xml'] = _EMPTY_EXPORT
         importSiteProperties(context)
 
-        self.assertEqual( len( site.propertyIds() ), 1 )
+        self.assertEqual(len(site.propertyIds()), 1)
 
     def test_empty_explicit_purge(self):
         from Products.CMFCore.exportimport.properties \
@@ -175,17 +176,17 @@
 
         site = self._initSite()
 
-        self.assertEqual( len( site.propertyIds() ), 4 )
-        self.failUnless( 'foo' in site.propertyIds() )
-        self.assertEqual( site.getProperty('foo'), 'Foo' )
-        self.failUnless( 'bar' in site.propertyIds() )
-        self.assertEqual( site.getProperty('bar'), ('Bar',) )
+        self.assertEqual(len(site.propertyIds()), 4)
+        self.assertTrue('foo' in site.propertyIds())
+        self.assertEqual(site.getProperty('foo'), 'Foo')
+        self.assertTrue('bar' in site.propertyIds())
+        self.assertEqual(site.getProperty('bar'), ('Bar',))
 
         context = DummyImportContext(site, True)
         context._files['properties.xml'] = _EMPTY_EXPORT
         importSiteProperties(context)
 
-        self.assertEqual( len( site.propertyIds() ), 1 )
+        self.assertEqual(len(site.propertyIds()), 1)
 
     def test_empty_skip_purge(self):
         from Products.CMFCore.exportimport.properties \
@@ -193,39 +194,39 @@
 
         site = self._initSite()
 
-        self.assertEqual( len( site.propertyIds() ), 4 )
-        self.failUnless( 'foo' in site.propertyIds() )
-        self.assertEqual( site.getProperty('foo'), 'Foo' )
-        self.failUnless( 'bar' in site.propertyIds() )
-        self.assertEqual( site.getProperty('bar'), ('Bar',) )
+        self.assertEqual(len(site.propertyIds()), 4)
+        self.assertTrue('foo' in site.propertyIds())
+        self.assertEqual(site.getProperty('foo'), 'Foo')
+        self.assertTrue('bar' in site.propertyIds())
+        self.assertEqual(site.getProperty('bar'), ('Bar',))
 
         context = DummyImportContext(site, False)
         context._files['properties.xml'] = _EMPTY_EXPORT
         importSiteProperties(context)
 
-        self.assertEqual( len( site.propertyIds() ), 4 )
-        self.failUnless( 'foo' in site.propertyIds() )
-        self.assertEqual( site.getProperty('foo'), 'Foo' )
-        self.failUnless( 'bar' in site.propertyIds() )
-        self.assertEqual( site.getProperty('bar'), ('Bar',) )
+        self.assertEqual(len(site.propertyIds()), 4)
+        self.assertTrue('foo' in site.propertyIds())
+        self.assertEqual(site.getProperty('foo'), 'Foo')
+        self.assertTrue('bar' in site.propertyIds())
+        self.assertEqual(site.getProperty('bar'), ('Bar',))
 
     def test_normal(self):
         from Products.CMFCore.exportimport.properties \
                 import importSiteProperties
 
-        site = self._initSite(0,0)
+        site = self._initSite(0, 0)
 
-        self.assertEqual( len( site.propertyIds() ), 1 )
+        self.assertEqual(len(site.propertyIds()), 1)
 
         context = DummyImportContext(site)
         context._files['properties.xml'] = _NORMAL_EXPORT
         importSiteProperties(context)
 
-        self.assertEqual( len( site.propertyIds() ), 4 )
-        self.failUnless( 'foo' in site.propertyIds() )
-        self.assertEqual( site.getProperty('foo'), 'Foo' )
-        self.failUnless( 'bar' in site.propertyIds() )
-        self.assertEqual( site.getProperty('bar'), ('Bar',) )
+        self.assertEqual(len(site.propertyIds()), 4)
+        self.assertTrue('foo' in site.propertyIds())
+        self.assertEqual(site.getProperty('foo'), 'Foo')
+        self.assertTrue('bar' in site.propertyIds())
+        self.assertEqual(site.getProperty('bar'), ('Bar',))
 
 
 class roundtripSitePropertiesTests(_SitePropertiesSetup):
@@ -242,23 +243,23 @@
         site = self._initSite(foo=0, bar=0)
         site._updateProperty('title', NONASCII)
 
-        self.assertEquals(site.title, NONASCII)
+        self.assertEqual(site.title, NONASCII)
 
         # export the site properties
-        context = DummyExportContext( site )
+        context = DummyExportContext(site)
         exportSiteProperties(context)
-        filename, text, content_type = context._wrote[0]
+        _filename, text, _content_type = context._wrote[0]
 
         # Clear the title property
         site._updateProperty('title', '')
-        self.assertEquals(site.title, '')
+        self.assertEqual(site.title, '')
 
         # Import from the previous export
         context = DummyImportContext(site)
         context._files['properties.xml'] = text
         importSiteProperties(context)
 
-        self.assertEquals(site.title, NONASCII)
+        self.assertEqual(site.title, NONASCII)
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_skins.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_skins.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_skins.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -373,7 +373,6 @@
     _FRAGMENT7_IMPORT = _FRAGMENT7_IMPORT
     _NORMAL_EXPORT = _NORMAL_EXPORT
 
-
     def test_remove_skin_path(self):
         from Products.CMFCore.exportimport.skins import importSkinsTool
 
@@ -382,15 +381,14 @@
 
         site, skins_tool = self._initSite(selections=_PATHS, ids=_IDS)
 
-        self.failUnless(skins_tool._getSelections().has_key('fancy'))
+        self.assertTrue('fancy' in skins_tool._getSelections())
 
         context = DummyImportContext(site)
         context._files['skins.xml'] = self._FRAGMENT6_IMPORT
         importSkinsTool(context)
 
-        self.failIf(skins_tool._getSelections().has_key('fancy'))
+        self.assertFalse('fancy' in skins_tool._getSelections())
 
-
     def test_empty_default_purge(self):
         from Products.CMFCore.exportimport.skins import importSkinsTool
 
@@ -399,7 +397,7 @@
 
         site, skins_tool = self._initSite(selections=_PATHS, ids=_IDS)
 
-        self.failIf(site._skin_setup_called)
+        self.assertFalse(site._skin_setup_called)
         self.assertEqual(len(skins_tool.getSkinPaths()), 2)
         self.assertEqual(len(skins_tool.objectItems()), 3)
 
@@ -409,9 +407,9 @@
 
         self.assertEqual(skins_tool.default_skin, "default_skin")
         self.assertEqual(skins_tool.request_varname, "request_varname")
-        self.failIf(skins_tool.allow_any)
-        self.failIf(skins_tool.cookie_persistence)
-        self.failUnless(site._skin_setup_called)
+        self.assertFalse(skins_tool.allow_any)
+        self.assertFalse(skins_tool.cookie_persistence)
+        self.assertTrue(site._skin_setup_called)
         self.assertEqual(len(skins_tool.getSkinPaths()), 0)
         self.assertEqual(len(skins_tool.objectItems()), 0)
 
@@ -423,7 +421,7 @@
 
         site, skins_tool = self._initSite(selections=_PATHS, ids=_IDS)
 
-        self.failIf(site._skin_setup_called)
+        self.assertFalse(site._skin_setup_called)
         self.assertEqual(len(skins_tool.getSkinPaths()), 2)
         self.assertEqual(len(skins_tool.objectItems()), 3)
 
@@ -433,9 +431,9 @@
 
         self.assertEqual(skins_tool.default_skin, "default_skin")
         self.assertEqual(skins_tool.request_varname, "request_varname")
-        self.failIf(skins_tool.allow_any)
-        self.failIf(skins_tool.cookie_persistence)
-        self.failUnless(site._skin_setup_called)
+        self.assertFalse(skins_tool.allow_any)
+        self.assertFalse(skins_tool.cookie_persistence)
+        self.assertTrue(site._skin_setup_called)
         self.assertEqual(len(skins_tool.getSkinPaths()), 0)
         self.assertEqual(len(skins_tool.objectItems()), 0)
 
@@ -447,7 +445,7 @@
 
         site, skins_tool = self._initSite(selections=_PATHS, ids=_IDS)
 
-        self.failIf(site._skin_setup_called)
+        self.assertFalse(site._skin_setup_called)
         self.assertEqual(len(skins_tool.getSkinPaths()), 2)
         self.assertEqual(len(skins_tool.objectItems()), 3)
 
@@ -457,9 +455,9 @@
 
         self.assertEqual(skins_tool.default_skin, "default_skin")
         self.assertEqual(skins_tool.request_varname, "request_varname")
-        self.failIf(skins_tool.allow_any)
-        self.failIf(skins_tool.cookie_persistence)
-        self.failUnless(site._skin_setup_called)
+        self.assertFalse(skins_tool.allow_any)
+        self.assertFalse(skins_tool.cookie_persistence)
+        self.assertTrue(site._skin_setup_called)
         self.assertEqual(len(skins_tool.getSkinPaths()), 2)
         self.assertEqual(len(skins_tool.objectItems()), 3)
 
@@ -468,7 +466,7 @@
 
         site, skins_tool = self._initSite()
 
-        self.failIf(site._skin_setup_called)
+        self.assertFalse(site._skin_setup_called)
         self.assertEqual(len(skins_tool.getSkinPaths()), 0)
         self.assertEqual(len(skins_tool.objectItems()), 0)
 
@@ -478,9 +476,9 @@
 
         self.assertEqual(skins_tool.default_skin, "basic")
         self.assertEqual(skins_tool.request_varname, "skin_var")
-        self.failUnless(skins_tool.allow_any)
-        self.failUnless(skins_tool.cookie_persistence)
-        self.failUnless(site._skin_setup_called)
+        self.assertTrue(skins_tool.allow_any)
+        self.assertTrue(skins_tool.cookie_persistence)
+        self.assertTrue(site._skin_setup_called)
         self.assertEqual(len(skins_tool.getSkinPaths()), 2)
         self.assertEqual(len(skins_tool.objectItems()), 3)
 
@@ -492,7 +490,7 @@
 
         site, skins_tool = self._initSite(selections=_PATHS, ids=_IDS)
 
-        self.failIf(site._skin_setup_called)
+        self.assertFalse(site._skin_setup_called)
         skin_paths = skins_tool.getSkinPaths()
         self.assertEqual(len(skin_paths), 2)
         self.assertEqual(skin_paths[0], ('basic', 'one'))
@@ -505,9 +503,9 @@
 
         self.assertEqual(skins_tool.default_skin, "default_skin")
         self.assertEqual(skins_tool.request_varname, "request_varname")
-        self.failIf(skins_tool.allow_any)
-        self.failIf(skins_tool.cookie_persistence)
-        self.failUnless(site._skin_setup_called)
+        self.assertFalse(skins_tool.allow_any)
+        self.assertFalse(skins_tool.cookie_persistence)
+        self.assertTrue(site._skin_setup_called)
         skin_paths = skins_tool.getSkinPaths()
         self.assertEqual(len(skin_paths), 2)
         self.assertEqual(skin_paths[0], ('basic', 'one,three'))
@@ -519,9 +517,9 @@
 
         self.assertEqual(skins_tool.default_skin, "default_skin")
         self.assertEqual(skins_tool.request_varname, "request_varname")
-        self.failIf(skins_tool.allow_any)
-        self.failIf(skins_tool.cookie_persistence)
-        self.failUnless(site._skin_setup_called)
+        self.assertFalse(skins_tool.allow_any)
+        self.assertFalse(skins_tool.cookie_persistence)
+        self.assertTrue(site._skin_setup_called)
         skin_paths = skins_tool.getSkinPaths()
         self.assertEqual(len(skin_paths), 2)
         self.assertEqual(skin_paths[0], ('basic', 'one,three,four'))
@@ -536,7 +534,7 @@
 
         site, skins_tool = self._initSite(selections=_PATHS, ids=_IDS)
 
-        self.failIf(site._skin_setup_called)
+        self.assertFalse(site._skin_setup_called)
         skin_paths = skins_tool.getSkinPaths()
         self.assertEqual(len(skin_paths), 2)
         self.assertEqual(skin_paths[0], ('basic', 'one'))
@@ -549,9 +547,9 @@
 
         self.assertEqual(skins_tool.default_skin, "default_skin")
         self.assertEqual(skins_tool.request_varname, "request_varname")
-        self.failIf(skins_tool.allow_any)
-        self.failIf(skins_tool.cookie_persistence)
-        self.failUnless(site._skin_setup_called)
+        self.assertFalse(skins_tool.allow_any)
+        self.assertFalse(skins_tool.cookie_persistence)
+        self.assertTrue(site._skin_setup_called)
         skin_paths = skins_tool.getSkinPaths()
         self.assertEqual(len(skin_paths), 2)
         self.assertEqual(skin_paths[0], ('basic', 'three,one,four'))
@@ -577,7 +575,7 @@
         context._files['skins.xml'] = self._FRAGMENT3_IMPORT
         importSkinsTool(context)
 
-        self.failUnless(site._skin_setup_called)
+        self.assertTrue(site._skin_setup_called)
         skin_paths = skins_tool.getSkinPaths()
         self.assertEqual(len(skin_paths), 2)
         self.assertEqual(skin_paths[0], ('basic', 'three,one,four'))
@@ -589,7 +587,7 @@
 
         importSkinsTool(context)
 
-        self.failUnless(site._skin_setup_called)
+        self.assertTrue(site._skin_setup_called)
         skin_paths = skins_tool.getSkinPaths()
         self.assertEqual(len(skin_paths), 2)
         self.assertEqual(skin_paths[0], ('basic', 'one,four'))
@@ -615,7 +613,7 @@
 
         importSkinsTool(context)
 
-        self.failUnless(site._skin_setup_called)
+        self.assertTrue(site._skin_setup_called)
         skin_paths = skins_tool.getSkinPaths()
         self.assertEqual(len(skin_paths), 4)
         self.assertEqual(skin_paths[0], ('basic', 'one,three,four'))
@@ -643,7 +641,7 @@
 
         importSkinsTool(context)
 
-        self.failUnless(site._skin_setup_called)
+        self.assertTrue(site._skin_setup_called)
         skin_paths = skins_tool.getSkinPaths()
         self.assertEqual(len(skin_paths), 1)
         self.assertEqual(skin_paths[0], ('existing', 'one,two,three,four'))

Modified: Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_typeinfo.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_typeinfo.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/exportimport/tests/test_typeinfo.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -206,20 +206,20 @@
  <alias from="(Default)" to="foo_view"/>
  <alias from="view" to="foo_view"/>
  <action title="View" action_id="view" category="object" condition_expr=""
-    url_expr="string:${object_url}/foo_view" 
-    icon_expr="string:${portal_url}/preview_icon.png" link_target="_new" 
+    url_expr="string:${object_url}/foo_view"
+    icon_expr="string:${portal_url}/preview_icon.png" link_target="_new"
     visible="True">
   <permission value="View"/>
  </action>
  <action title="Edit" action_id="edit" category="object" condition_expr=""
-    url_expr="string:${object_url}/foo_edit_form" 
-    icon_expr="string:${portal_url}/edit_icon.png" link_target="" 
+    url_expr="string:${object_url}/foo_edit_form"
+    icon_expr="string:${portal_url}/edit_icon.png" link_target=""
     visible="True">
   <permission value="Modify portal content"/>
  </action>
  <action title="Metadata" action_id="metadata" category="object"
     condition_expr="" url_expr="string:${object_url}/metadata_edit_form"
-    icon_expr="string:${portal_url}/metadata_icon.png" link_target="" 
+    icon_expr="string:${portal_url}/metadata_icon.png" link_target=""
     visible="True">
   <permission value="Modify portal content"/>
  </action>
@@ -248,7 +248,7 @@
  <alias from="(Default)" to="bar_view"/>
  <alias from="view" to="bar_view"/>
  <action title="View" action_id="view" category="object" condition_expr=""
-    url_expr="string:${object_url}/bar_view" 
+    url_expr="string:${object_url}/bar_view"
     icon_expr="" link_target="" visible="True">
   <permission value="View"/>
  </action>
@@ -292,7 +292,7 @@
  <alias from="(Default)" to="bar_view"/>
  <alias from="view" to="bar_view"/>
  <action title="View" action_id="view" category="object" condition_expr=""
-    url_expr="string:${object_url}/bar_view" 
+    url_expr="string:${object_url}/bar_view"
     icon_expr="" link_target="" visible="True">
   <permission value="View"/>
  </action>
@@ -335,7 +335,7 @@
     def _populate(self, obj):
         obj.setMethodAliases({'(Default)': 'foo', 'view': 'foo'})
         obj.addAction('foo_action', 'Foo', 'string:${object_url}/foo',
-                      'python:1', (), 'Bar', 
+                      'python:1', (), 'Bar',
                       icon_expr="string:${portal_url}/icon.png")
 
     def _verifyImport(self, obj):
@@ -355,8 +355,8 @@
         self.assertEqual(type(obj._actions[0].condition.text), str)
         self.assertEqual(obj._actions[0].condition.text, 'python:1')
         self.assertEqual(type(obj._actions[0].icon_expr.text), str)
-        self.assertEqual(obj._actions[0].icon_expr.text, 
-                                  "string:${portal_url}/icon.png")
+        self.assertEqual(obj._actions[0].icon_expr.text,
+                         "string:${portal_url}/icon.png")
 
     def setUp(self):
         self._obj = FactoryTypeInformation('foo_fti')
@@ -541,8 +541,8 @@
         importTypesTool(context)
 
         self.assertEqual(len(tool.objectIds()), 2)
-        self.failUnless('foo' in tool.objectIds())
-        self.failUnless('bar' in tool.objectIds())
+        self.assertTrue('foo' in tool.objectIds())
+        self.assertTrue('bar' in tool.objectIds())
 
     def test_with_filenames(self):
         from Products.CMFCore.exportimport.typeinfo import importTypesTool
@@ -558,8 +558,8 @@
         importTypesTool(context)
 
         self.assertEqual(len(tool.objectIds()), 2)
-        self.failUnless('foo object' in tool.objectIds())
-        self.failUnless('bar object' in tool.objectIds())
+        self.assertTrue('foo object' in tool.objectIds())
+        self.assertTrue('bar object' in tool.objectIds())
 
     def test_migration(self):
         from Products.CMFCore.exportimport.typeinfo import importTypesTool
@@ -575,8 +575,8 @@
         importTypesTool(context)
 
         self.assertEqual(len(tool.objectIds()), 2)
-        self.failUnless('foo' in tool.objectIds())
-        self.failUnless('bar' in tool.objectIds())
+        self.assertTrue('foo' in tool.objectIds())
+        self.assertTrue('bar' in tool.objectIds())
         self.assertEqual(tool.bar.icon_expr, 'string:${portal_url}/bar.png')
 
     def test_normal_update(self):
@@ -632,7 +632,7 @@
         <object name="%s" meta_type="Factory-based Type Information">
          <property name="title">Baz</property>
          <action title="View" action_id="view" category="object"
-            condition_expr="" url_expr="string:${object_url}/baz_view" 
+            condition_expr="" url_expr="string:${object_url}/baz_view"
             icon_expr="" visible="True">
           <permission value="View"/>
          </action>
@@ -643,7 +643,7 @@
         importTypesTool(context)
 
         self.assertEqual(len(tool.objectIds()), 1)
-        self.failUnless('baz' in tool.objectIds())
+        self.assertTrue('baz' in tool.objectIds())
         baz = tool['baz']
         actions = baz.listActions()
         self.assertEqual(len(actions), 1)
@@ -661,7 +661,7 @@
         importTypesTool(context)
 
         self.assertEqual(len(tool.objectIds()), 1)
-        self.failUnless('baz' in tool.objectIds())
+        self.assertTrue('baz' in tool.objectIds())
         baz = tool['baz']
         actions = baz.listActions()
         self.assertEqual(len(actions), 0)

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionInformation.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionInformation.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionInformation.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -50,11 +50,11 @@
         from Products.CMFCore.ActionInformation import Action
 
         ac = self._makeOne('foo')
-        self.assertEqual( ac.listActions(), () )
+        self.assertEqual(ac.listActions(), ())
 
         baz = Action('baz')
         ac._setObject('baz', baz)
-        self.assertEqual( ac.listActions(), (baz,) )
+        self.assertEqual(ac.listActions(), (baz,))
 
 
 class ActionTests(unittest.TestCase):
@@ -71,11 +71,11 @@
         verifyClass(IAction, Action)
 
     def test_getInfoData_empty(self):
-        WANTED = ( {'available': True, 'category': '', 'description': '',
-                    'id': 'foo', 'icon': '', 'permissions': (), 'title': '',
-                    'url': '', 'visible': True, 'link_target': None}, [] )
+        WANTED = ({'available': True, 'category': '', 'description': '',
+                   'id': 'foo', 'icon': '', 'permissions': (), 'title': '',
+                   'url': '', 'visible': True, 'link_target': None}, [])
         a = self._makeOne('foo')
-        self.assertEqual( a.getInfoData(), WANTED )
+        self.assertEqual(a.getInfoData(), WANTED)
 
     def test_getInfoData_normal(self):
         a = self._makeOne('foo',
@@ -87,21 +87,24 @@
                           permissions=('View',),
                           visible=False,
                           link_target='_top')
-        WANTED = ( {'available': True, 'category': '',
-                    'description': 'Foo description.',
-                    'id': 'foo', 'icon': a.icon_expr_object,
-                    'permissions': ('View',), 'title': 'Foo Title',
-                    'url': a.url_expr_object, 'visible': False,
-                    'link_target': a.link_target },
-                   ['url', 'icon'] )
-        self.assertEqual( a.getInfoData(), WANTED )
+        WANTED = ({'available': True, 'category': '',
+                   'description': 'Foo description.',
+                   'id': 'foo', 'icon': a.icon_expr_object,
+                   'permissions': ('View',), 'title': 'Foo Title',
+                   'url': a.url_expr_object, 'visible': False,
+                   'link_target': a.link_target},
+                  ['url', 'icon'])
+        self.assertEqual(a.getInfoData(), WANTED)
 
     def test_manage_propertiesForm_allows_adding(self):
         from OFS.SimpleItem import SimpleItem
+
         def _header(*args, **kw):
             return 'HEADER'
+
         def _footer(*args, **kw):
             return 'HEADER'
+
         container = SimpleItem()
 
         container.REQUEST = request = DummyRequest()
@@ -117,7 +120,7 @@
         a = self._makeOne('extensible').__of__(container)
         form_html = a.manage_propertiesForm(request)
 
-        self.failUnless('value=" Add "' in form_html)
+        self.assertTrue('value=" Add "' in form_html)
 
     def test_clearExprObjects(self):
         """When a *_expr property is set, a *_expr_object attribute is
@@ -132,28 +135,34 @@
                           permissions=('View',),
                           visible=False,
                           link_target='_top')
-        self.failUnless(hasattr(a, 'icon_expr_object'))
-        self.failUnless(hasattr(a, 'url_expr_object'))
-        self.failIf(hasattr(a, 'available_expr_object'))
+        self.assertTrue(hasattr(a, 'icon_expr_object'))
+        self.assertTrue(hasattr(a, 'url_expr_object'))
+        self.assertFalse(hasattr(a, 'available_expr_object'))
         a.manage_changeProperties(
             icon_expr='', url_expr='', available_expr='')
-        self.failIf(hasattr(a, 'icon_expr_object'))
-        self.failIf(hasattr(a, 'url_expr_object'))
-        self.failIf(hasattr(a, 'available_expr_object'))
+        self.assertFalse(hasattr(a, 'icon_expr_object'))
+        self.assertFalse(hasattr(a, 'url_expr_object'))
+        self.assertFalse(hasattr(a, 'available_expr_object'))
 
 
 class DummyRequest:
+
     def __init__(self):
         self._data = {}
+
     def set(self, k, v):
         self._data[k] = v
+
     def get(self, k, default):
         return self._data.get(k, default)
+
     def __getitem__(self, k):
         return self._data[k]
+
     def __len__(self):
         return len(self._data)
 
+
 class ActionInfoTests(unittest.TestCase):
 
     def _makeOne(self, *args, **kw):
@@ -178,15 +187,15 @@
         ec = None
         ai = self._makeOne(action, ec)
 
-        self.assertEqual( ai['id'], WANTED['id'] )
-        self.assertEqual( ai['title'], WANTED['title'] )
-        self.assertEqual( ai['description'], WANTED['description'] )
-        self.assertEqual( ai['url'], WANTED['url'] )
-        self.assertEqual( ai['category'], WANTED['category'] )
-        self.assertEqual( ai['visible'], WANTED['visible'] )
-        self.assertEqual( ai['available'], WANTED['available'] )
-        self.assertEqual( ai['allowed'], WANTED['allowed'] )
-        self.assertEqual( ai, WANTED )
+        self.assertEqual(ai['id'], WANTED['id'])
+        self.assertEqual(ai['title'], WANTED['title'])
+        self.assertEqual(ai['description'], WANTED['description'])
+        self.assertEqual(ai['url'], WANTED['url'])
+        self.assertEqual(ai['category'], WANTED['category'])
+        self.assertEqual(ai['visible'], WANTED['visible'])
+        self.assertEqual(ai['available'], WANTED['available'])
+        self.assertEqual(ai['allowed'], WANTED['allowed'])
+        self.assertEqual(ai, WANTED)
 
     def test_create_from_ActionInformation(self):
         from Products.CMFCore.ActionInformation import ActionInformation
@@ -199,35 +208,35 @@
         ec = None
         ai = self._makeOne(action, ec)
 
-        self.assertEqual( ai['id'], WANTED['id'] )
-        self.assertEqual( ai['title'], WANTED['title'] )
-        self.assertEqual( ai['description'], WANTED['description'] )
-        self.assertEqual( ai['url'], WANTED['url'] )
-        self.assertEqual( ai['icon'], WANTED['icon'] )
-        self.assertEqual( ai['category'], WANTED['category'] )
-        self.assertEqual( ai['visible'], WANTED['visible'] )
-        self.assertEqual( ai['available'], WANTED['available'] )
-        self.assertEqual( ai['allowed'], WANTED['allowed'] )
-        self.assertEqual( ai, WANTED )
+        self.assertEqual(ai['id'], WANTED['id'])
+        self.assertEqual(ai['title'], WANTED['title'])
+        self.assertEqual(ai['description'], WANTED['description'])
+        self.assertEqual(ai['url'], WANTED['url'])
+        self.assertEqual(ai['icon'], WANTED['icon'])
+        self.assertEqual(ai['category'], WANTED['category'])
+        self.assertEqual(ai['visible'], WANTED['visible'])
+        self.assertEqual(ai['available'], WANTED['available'])
+        self.assertEqual(ai['allowed'], WANTED['allowed'])
+        self.assertEqual(ai, WANTED)
 
     def test_create_from_dict(self):
         WANTED = {'allowed': True, 'available': True, 'category': 'object',
                   'id': 'foo', 'title': 'foo', 'url': '', 'visible': True,
-                  'icon': '' , 'link_target': None}
+                  'icon': '', 'link_target': None}
 
         action = {'name': 'foo', 'url': ''}
         ec = None
         ai = self._makeOne(action, ec)
 
-        self.assertEqual( ai['id'], WANTED['id'] )
-        self.assertEqual( ai['title'], WANTED['title'] )
-        self.assertEqual( ai['url'], WANTED['url'] )
-        self.assertEqual( ai['icon'], WANTED['icon'] )
-        self.assertEqual( ai['category'], WANTED['category'] )
-        self.assertEqual( ai['visible'], WANTED['visible'] )
-        self.assertEqual( ai['available'], WANTED['available'] )
-        self.assertEqual( ai['allowed'], WANTED['allowed'] )
-        self.assertEqual( ai, WANTED )
+        self.assertEqual(ai['id'], WANTED['id'])
+        self.assertEqual(ai['title'], WANTED['title'])
+        self.assertEqual(ai['url'], WANTED['url'])
+        self.assertEqual(ai['icon'], WANTED['icon'])
+        self.assertEqual(ai['category'], WANTED['category'])
+        self.assertEqual(ai['visible'], WANTED['visible'])
+        self.assertEqual(ai['available'], WANTED['available'])
+        self.assertEqual(ai['allowed'], WANTED['allowed'])
+        self.assertEqual(ai, WANTED)
 
 
 class ActionInfoSecurityTests(SecurityTest):
@@ -256,15 +265,15 @@
         ec = createExprContext(self.site, self.site, None)
         ai = self._makeOne(action, ec)
 
-        self.assertEqual( ai['id'], WANTED['id'] )
-        self.assertEqual( ai['title'], WANTED['title'] )
-        self.assertEqual( ai['url'], WANTED['url'] )
-        self.assertEqual( ai['icon'], WANTED['icon'] )
-        self.assertEqual( ai['category'], WANTED['category'] )
-        self.assertEqual( ai['visible'], WANTED['visible'] )
-        self.assertEqual( ai['available'], WANTED['available'] )
-        self.assertEqual( ai['allowed'], WANTED['allowed'] )
-        self.assertEqual( ai, WANTED )
+        self.assertEqual(ai['id'], WANTED['id'])
+        self.assertEqual(ai['title'], WANTED['title'])
+        self.assertEqual(ai['url'], WANTED['url'])
+        self.assertEqual(ai['icon'], WANTED['icon'])
+        self.assertEqual(ai['category'], WANTED['category'])
+        self.assertEqual(ai['visible'], WANTED['visible'])
+        self.assertEqual(ai['available'], WANTED['available'])
+        self.assertEqual(ai['allowed'], WANTED['allowed'])
+        self.assertEqual(ai, WANTED)
 
     def test_category_object(self):
         # Permissions for action category 'object*' should be
@@ -279,8 +288,8 @@
         ec = createExprContext(self.site, self.site, self.object)
         ai = self._makeOne(action, ec)
 
-        self.assertEqual( ai['category'], WANTED['category'] )
-        self.assertEqual( ai['allowed'], WANTED['allowed'] )
+        self.assertEqual(ai['category'], WANTED['category'])
+        self.assertEqual(ai['allowed'], WANTED['allowed'])
 
     def test_category_folder(self):
         # Permissions for action category 'folder*' should be
@@ -296,8 +305,8 @@
         ai = self._makeOne(action, ec)
         ai['category'] = 'folder' # pfff
 
-        self.assertEqual( ai['category'], WANTED['category'] )
-        self.assertEqual( ai['allowed'], WANTED['allowed'] )
+        self.assertEqual(ai['category'], WANTED['category'])
+        self.assertEqual(ai['allowed'], WANTED['allowed'])
 
     def test_category_workflow(self):
         # Permissions for action category 'workflow*' should be
@@ -313,8 +322,8 @@
         ai = self._makeOne(action, ec)
         ai['category'] = 'workflow' # pfff
 
-        self.assertEqual( ai['category'], WANTED['category'] )
-        self.assertEqual( ai['allowed'], WANTED['allowed'] )
+        self.assertEqual(ai['category'], WANTED['category'])
+        self.assertEqual(ai['allowed'], WANTED['allowed'])
 
     def test_category_document(self):
         # Permissions for action category 'document*' should be
@@ -330,8 +339,8 @@
         ai = self._makeOne(action, ec)
         ai['category'] = 'document' # pfff
 
-        self.assertEqual( ai['category'], WANTED['category'] )
-        self.assertEqual( ai['allowed'], WANTED['allowed'] )
+        self.assertEqual(ai['category'], WANTED['category'])
+        self.assertEqual(ai['allowed'], WANTED['allowed'])
 
     def test_copy(self):
         action = {'name': 'foo', 'url': '', 'permissions': ('View',)}
@@ -339,11 +348,11 @@
         ai = self._makeOne(action, ec)
         ai2 = ai.copy()
 
-        self.assertEqual( ai._lazy_keys, ['allowed'] )
-        self.assertEqual( ai2._lazy_keys, ['allowed'] )
-        self.failIf( ai2._lazy_keys is ai._lazy_keys )
-        self.assertEqual( ai['allowed'], True )
-        self.assertEqual( ai2['allowed'], True )
+        self.assertEqual(ai._lazy_keys, ['allowed'])
+        self.assertEqual(ai2._lazy_keys, ['allowed'])
+        self.assertFalse(ai2._lazy_keys is ai._lazy_keys)
+        self.assertEqual(ai['allowed'], True)
+        self.assertEqual(ai2['allowed'], True)
 
 
 class ActionInformationTests(TransactionalTest):
@@ -403,16 +412,16 @@
     def test_setActionExpression_with_string_prefix(self):
         ai = self._makeOne(id='view', category='folder')
         ai.setActionExpression('string:blah')
-        self.failUnless(isinstance(ai.action,Expression))
+        self.assertTrue(isinstance(ai.action, Expression))
         self.assertEqual(ai.getActionExpression(), 'string:blah')
 
     def test_construction_with_Expressions(self):
-        ai = self._makeOne( id='view',
-                            title='View',
-                            action=Expression(text='view'),
-                            condition=Expression(text='member'),
-                            category='global',
-                            visible=False )
+        ai = self._makeOne(id='view',
+                           title='View',
+                           action=Expression(text='view'),
+                           condition=Expression(text='member'),
+                           category='global',
+                           visible=False)
 
         self.assertEqual(ai.getId(), 'view')
         self.assertEqual(ai.Title(), 'View')
@@ -427,15 +436,15 @@
         portal = self.portal
         folder = self.folder
         object = self.object
-        ai = self._makeOne( id='view',
-                            title='View',
-                            action=Expression(text='view'),
-                            condition=Expression(text='member'),
-                            category='global',
-                            visible=True )
+        ai = self._makeOne(id='view',
+                           title='View',
+                           action=Expression(text='view'),
+                           condition=Expression(text='member'),
+                           category='global',
+                           visible=True)
         ec = createExprContext(folder, portal, object)
 
-        self.failIf(ai.testCondition(ec))
+        self.assertFalse(ai.testCondition(ec))
 
     def test_Condition_PathExpression(self):
         portal = self.portal
@@ -444,23 +453,23 @@
         manage_addPythonScript(self.app, 'test_script')
         script = self.app.test_script
         script.ZPythonScript_edit('', 'return context.getId()')
-        ai = self._makeOne( id='view',
-                            title='View',
-                            action=Expression(text='view'),
-                            condition=Expression(text='portal/test_script'),
-                            category='global',
-                            visible=True )
+        ai = self._makeOne(id='view',
+                           title='View',
+                           action=Expression(text='view'),
+                           condition=Expression(text='portal/test_script'),
+                           category='global',
+                           visible=True)
         ec = createExprContext(folder, portal, object)
 
-        self.failUnless(ai.testCondition(ec))
+        self.assertTrue(ai.testCondition(ec))
 
     def test_getInfoData_empty(self):
-        WANTED = ( {'available': True, 'category': 'object',
-                    'description': '', 'id': 'foo', 'permissions': (),
-                    'title': 'foo', 'url': '', 'visible': True, 'icon': '',
-                    'link_target': None},[])
+        WANTED = ({'available': True, 'category': 'object',
+                   'description': '', 'id': 'foo', 'permissions': (),
+                   'title': 'foo', 'url': '', 'visible': True, 'icon': '',
+                   'link_target': None}, [])
         a = self._makeOne('foo')
-        self.assertEqual( a.getInfoData(), WANTED )
+        self.assertEqual(a.getInfoData(), WANTED)
 
     def test_getInfoData_normal(self):
         a = self._makeOne('foo',
@@ -472,14 +481,14 @@
                           permissions=('View',),
                           visible=False,
                           link_target='_top')
-        WANTED = ( {'available': True, 'category': 'object',
-                    'description': 'Foo description.', 'id': 'foo',
-                    'permissions': ('View',), 'title': 'Foo Title',
-                    'url': a._getActionObject(), 'visible': False,
-                    'icon': a._getIconExpressionObject(), 
-                    'link_target': a.link_target },
-                   ['url', 'icon'] )
-        self.assertEqual( a.getInfoData(), WANTED )
+        WANTED = ({'available': True, 'category': 'object',
+                   'description': 'Foo description.', 'id': 'foo',
+                   'permissions': ('View',), 'title': 'Foo Title',
+                   'url': a._getActionObject(), 'visible': False,
+                   'icon': a._getIconExpressionObject(),
+                   'link_target': a.link_target},
+                  ['url', 'icon'])
+        self.assertEqual(a.getInfoData(), WANTED)
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionProviderBase.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionProviderBase.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionProviderBase.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -36,30 +36,28 @@
 
 class DummyProvider(ActionProviderBase, DummyTool):
 
-    _actions = ( ActionInformation( id='an_id'
-                                  , title='A Title'
-                                  , action=''
-                                  , condition=''
-                                  , permissions=()
-                                  , category=''
-                                  , visible=False
-                                  ), )
+    _actions = (ActionInformation(id='an_id',
+                                  title='A Title',
+                                  action='',
+                                  condition='',
+                                  permissions=(),
+                                  category='',
+                                  visible=False),)
 
 
 class DummyAction:
 
-    def __init__( self, value ):
+    def __init__(self, value):
         self.value = value
 
-    def clone( self ):
-        return self.__class__( self.value )
+    def clone(self):
+        return self.__class__(self.value)
 
-    def __cmp__( self, other ):
-        return ( cmp( type( self ), type( other ) )
-              or cmp( self.__class__, other.__class__ )
-              or cmp( self.value, other.value )
-              or 0
-               )
+    def __cmp__(self, other):
+        return (cmp(type(self), type(other))
+                or cmp(self.__class__, other.__class__)
+                or cmp(self.value, other.value)
+                or 0)
 
 
 class ActionProviderBaseTests(SecurityTest, WarningInterceptor):
@@ -67,7 +65,7 @@
     def setUp(self):
         self._trap_warning_output()
         SecurityTest.setUp(self)
-        self.site = DummySite('site').__of__(self.root)
+        self.site = DummySite('site').__of__(self.app)
         sm = getSiteManager()
         sm.registerUtility(DummyTool(), IMembershipTool)
         sm.registerUtility(DummyTool().__of__(self.site), IURLTool)
@@ -77,7 +75,7 @@
         SecurityTest.tearDown(self)
         self._free_warning_output()
 
-    def _makeProvider( self, dummy=0 ):
+    def _makeProvider(self, dummy=0):
 
         klass = dummy and DummyProvider or ActionProviderBase
         return klass()
@@ -87,20 +85,18 @@
 
         verifyClass(IActionProvider, ActionProviderBase)
 
-    def test_addAction( self ):
-
+    def test_addAction(self):
         apb = self._makeProvider()
-        self.failIf( apb._actions )
+        self.assertFalse(apb._actions)
         old_actions = apb._actions
-        apb.addAction( id='foo'
-                     , name='foo_action'
-                     , action=''
-                     , condition=''
-                     , permission=''
-                     , category=''
-                     )
-        self.failUnless( apb._actions )
-        self.failIf( apb._actions is old_actions )
+        apb.addAction(id='foo',
+                      name='foo_action',
+                      action='',
+                      condition='',
+                      permission='',
+                      category='')
+        self.assertTrue(apb._actions)
+        self.assertFalse(apb._actions is old_actions)
 
     def test_addActionBlankPermission(self):
         # make sure a blank permission gets stored as an empty tuple
@@ -158,36 +154,33 @@
         action = apb._extractAction(properties, index)
         self.assertEqual(action.permissions, ())
 
-
-    def test_changeActions( self ):
-
+    def test_changeActions(self):
         apb = DummyTool()
-        old_actions = list( apb._actions )
+        old_actions = list(apb._actions)
 
-        keys = [ ( 'id_%d', None )
-               , ( 'name_%d', None )
-               , ( 'action_%d', '' )
-               , ( 'condition_%d', '' )
-               , ( 'permission_%d', None )
-               , ( 'category_%d', None )
-               , ( 'visible_%d', 0 )
-               ]
+        keys = [('id_%d', None),
+                ('name_%d', None),
+                ('action_%d', ''),
+                ('condition_%d', ''),
+                ('permission_%d', None),
+                ('category_%d', None),
+                ('visible_%d', 0)]
 
         properties = {}
-        for i in range( len( old_actions ) ):
+        for i in range(len(old_actions)):
             for key, value in keys:
                 token = key % i
                 if value is None:
                     value = token
-                properties[ token ] = value
+                properties[token] = value
 
-        apb.changeActions( properties=properties )
+        apb.changeActions(properties=properties)
 
         marker = []
-        for i in range( len( apb._actions ) ):
+        for i in range(len(apb._actions)):
 
             for key, value in keys:
-                attr = key[ : -3 ]
+                attr = key[:-3]
 
                 if value is None:
                     value = key % i
@@ -197,49 +190,46 @@
 
                 if attr == 'permission':    # WAAAA
                     attr = 'permissions'
-                    value = ( value, )
+                    value = (value,)
 
-                attr_value = getattr( apb._actions[i], attr, marker )
-                self.assertEqual( attr_value
-                                , value
-                                , '%s, %s != %s, %s'
-                                  % ( attr, attr_value, key, value )  )
-        self.failIf( apb._actions is old_actions )
+                attr_value = getattr(apb._actions[i], attr, marker)
+                self.assertEqual(attr_value, value, '%s, %s != %s, %s'
+                                 % (attr, attr_value, key, value))
+        self.assertFalse(apb._actions is old_actions)
 
-    def test_deleteActions( self ):
+    def test_deleteActions(self):
 
         apb = self._makeProvider()
-        apb._actions = tuple( map( DummyAction, [ '0', '1', '2' ] ) )
-        apb.deleteActions( selections=(0,2) )
-        self.assertEqual( len( apb._actions ), 1 )
-        self.failUnless( DummyAction('1') in apb._actions )
+        apb._actions = tuple(map(DummyAction, ['0', '1', '2']))
+        apb.deleteActions(selections=(0, 2))
+        self.assertEqual(len(apb._actions), 1)
+        self.assertTrue(DummyAction('1') in apb._actions)
 
-    def test_DietersNastySharingBug( self ):
+    def test_DietersNastySharingBug(self):
 
-        one = self._makeProvider( dummy=1 )
-        another = self._makeProvider( dummy=1 )
+        one = self._makeProvider(dummy=1)
+        another = self._makeProvider(dummy=1)
 
-        def idify( x ):
-            return id( x )
+        def idify(x):
+            return id(x)
 
-        old_ids = one_ids = map( idify, one.listActions() )
-        another_ids = map( idify, another.listActions() )
+        old_ids = one_ids = map(idify, one.listActions())
+        another_ids = map(idify, another.listActions())
 
-        self.assertEqual( one_ids, another_ids )
+        self.assertEqual(one_ids, another_ids)
 
-        one.changeActions( { 'id_0'            : 'different_id'
-                           , 'name_0'          : 'A Different Title'
-                           , 'action_0'        : 'arise_shine'
-                           , 'condition_0'     : 'always'
-                           , 'permissions_0'   : 'granted'
-                           , 'category_0'      : 'quality'
-                           , 'visible_0'       : 1
-                           } )
+        one.changeActions({'id_0': 'different_id',
+                           'name_0': 'A Different Title',
+                           'action_0': 'arise_shine',
+                           'condition_0': 'always',
+                           'permissions_0': 'granted',
+                           'category_0': 'quality',
+                           'visible_0': 1})
 
-        one_ids = map( idify, one.listActions() )
-        another_ids = map( idify, another.listActions() )
-        self.failIf( one_ids == another_ids )
-        self.assertEqual( old_ids, another_ids )
+        one_ids = map(idify, one.listActions())
+        another_ids = map(idify, another.listActions())
+        self.assertFalse(one_ids == another_ids)
+        self.assertEqual(old_ids, another_ids)
 
     def test_listActionInfos(self):
         wanted = [{'id': 'an_id', 'title': 'A Title', 'description': '',
@@ -247,16 +237,16 @@
                    'available': True, 'allowed': True, 'link_target': None,
                    'icon': ''}]
 
-        apb = self.site._setObject( 'portal_apb', self._makeProvider(1) )
+        apb = self.site._setObject('portal_apb', self._makeProvider(1))
         rval = apb.listActionInfos()
-        self.assertEqual( rval, [] )
+        self.assertEqual(rval, [])
         rval = apb.listActionInfos(check_visibility=0)
-        self.assertEqual( rval, wanted )
+        self.assertEqual(rval, wanted)
         rval = apb.listActionInfos('foo/another_id', check_visibility=0)
-        self.assertEqual( rval, [] )
+        self.assertEqual(rval, [])
 
     def test_getActionObject(self):
-        apb = self.site._setObject( 'portal_apb', self._makeProvider(1) )
+        apb = self.site._setObject('portal_apb', self._makeProvider(1))
         rval = apb.getActionObject('object/an_id')
         self.assertEqual(rval, apb._actions[0])
         rval = apb.getActionObject('object/not_existing_id')
@@ -269,14 +259,13 @@
                   'available': True, 'allowed': True, 'link_target': None,
                   'icon': ''}
 
-        apb = self.site._setObject( 'portal_apb', self._makeProvider(1) )
-        rval = apb.getActionInfo( ('object/an_id',) )
-        self.assertEqual( rval, wanted )
+        apb = self.site._setObject('portal_apb', self._makeProvider(1))
+        rval = apb.getActionInfo(('object/an_id',))
+        self.assertEqual(rval, wanted)
         rval = apb.getActionInfo('object/an_id')
-        self.assertEqual( rval, wanted )
-        self.assertRaises( ValueError,
-                           apb.getActionInfo,
-                           'object/an_id', check_visibility=1 )
+        self.assertEqual(rval, wanted)
+        self.assertRaises(ValueError, apb.getActionInfo, 'object/an_id',
+                          check_visibility=1)
 
         # The following is nasty, but I want to make sure the ValueError
         # carries some useful information
@@ -286,7 +275,7 @@
         except ValueError, e:
             message = e.args[0]
             detail = '"%s" does not offer action "%s"' % (message, INVALID_ID)
-            self.failUnless(message.find(INVALID_ID) != -1, detail)
+            self.assertTrue(message.find(INVALID_ID) != -1, detail)
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionsTool.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionsTool.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_ActionsTool.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -93,7 +93,7 @@
         rval = tool.getActionObject('object/an_id')
         self.assertEqual(rval, tool._actions[0])
         warning = self._our_stderr_stream.getvalue()
-        self.failUnless(
+        self.assertTrue(
             'DeprecationWarning: '
             'Old-style actions are deprecated and will be removed in CMF '
             '2.4. Use Action and Action Category objects instead.' in warning)
@@ -159,9 +159,7 @@
                                 permissions=('List folder contents',),
                                 category='folder',
                                 link_target='_top',
-                                visible=1)
-            ,
-            )
+                                visible=1),)
 
         newSecurityManager(None, OmnipotentUser().__of__(self.app.acl_users))
         self.assertEqual(tool.listFilteredActionsFor(self.app.foo),

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_CMFBTreeFolder.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_CMFBTreeFolder.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_CMFBTreeFolder.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -29,16 +29,16 @@
     def _makeOne(self, *args, **kw):
         return self._getTargetClass()(*args, **kw)
 
-    def test_empty( self ):
+    def test_empty(self):
         empty = self._makeOne('test')
-        self.assertEqual( len( empty.objectIds() ), 0 )
+        self.assertEqual(len(empty.objectIds()), 0)
 
 # this test doesn't work with ZopeTestCase.ZopeLite.installProduct
 ##    def test___module_aliases__( self ):
 ##        from Products.BTreeFolder2.CMFBTreeFolder \
 ##            import CMFBTreeFolder as BBB
 ##
-##        self.failUnless( BBB is self._getTargetClass() )
+##        self.assertTrue( BBB is self._getTargetClass() )
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_CMFCatalogAware.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_CMFCatalogAware.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_CMFCatalogAware.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -45,17 +45,22 @@
     def __init__(self, id):
         self._setId(id)
 
+
 class DummyRoot(SimpleFolder):
     def getPhysicalRoot(self):
         return self
 
+
 class DummyOldBrain:
+
     def __init__(self, ob, path):
         self.ob = ob
         self.id = ob.getId()
         self.path = path
+
     def getPath(self):
         return self.path
+
     def getObject(self):
         if self.id == 'missing':
             if self.ob.GETOBJECT_RAISES:
@@ -66,29 +71,39 @@
             raise ValueError("security problem for this object")
         return self.ob
 
+
 class DummyBrain(DummyOldBrain):
+
     def _unrestrictedGetObject(self):
         if self.id == 'missing':
             return self.getObject()
         return self.ob
 
+
 class DummyCatalog(SimpleItem):
+
     brain_class = DummyBrain
+
     def __init__(self):
         self.log = []
         self.obs = []
+
     def indexObject(self, ob):
         self.log.append('index %s' % physicalpath(ob))
+
     def reindexObject(self, ob, idxs=[], update_metadata=0, uid=None):
         self.log.append('reindex %s %s' % (physicalpath(ob), idxs))
+
     def unindexObject(self, ob):
         self.log.append('unindex %s' % physicalpath(ob))
+
     def setObs(self, obs):
         self.obs = [(ob, physicalpath(ob)) for ob in obs]
+
     def unrestrictedSearchResults(self, path):
         res = []
         for ob, obpath in self.obs:
-            if not (obpath+'/').startswith(path+'/'):
+            if not (obpath + '/').startswith(path + '/'):
                 continue
             res.append(self.brain_class(ob, obpath))
         return res
@@ -138,27 +153,27 @@
         foo = self.site.foo
         cat = self.ctool
         foo.indexObject()
-        self.assertEquals(cat.log, ["index /site/foo"])
+        self.assertEqual(cat.log, ["index /site/foo"])
 
     def test_unindexObject(self):
         foo = self.site.foo
         cat = self.ctool
         foo.unindexObject()
-        self.assertEquals(cat.log, ["unindex /site/foo"])
+        self.assertEqual(cat.log, ["unindex /site/foo"])
 
     def test_reindexObject(self):
         foo = self.site.foo
         cat = self.ctool
         foo.reindexObject()
-        self.assertEquals(cat.log, ["reindex /site/foo []"])
-        self.assert_(foo.notified)
+        self.assertEqual(cat.log, ["reindex /site/foo []"])
+        self.assertTrue(foo.notified)
 
     def test_reindexObject_idxs(self):
         foo = self.site.foo
         cat = self.ctool
         foo.reindexObject(idxs=['bar'])
-        self.assertEquals(cat.log, ["reindex /site/foo ['bar']"])
-        self.failIf(foo.notified)
+        self.assertEqual(cat.log, ["reindex /site/foo ['bar']"])
+        self.assertFalse(foo.notified)
 
     def test_reindexObjectSecurity(self):
         foo = self.site.foo
@@ -171,14 +186,14 @@
         foo.reindexObjectSecurity()
         l = list(cat.log)
         l.sort()
-        self.assertEquals(l, [
-            "reindex /site/foo %s"%str(CMF_SECURITY_INDEXES),
-            "reindex /site/foo/bar %s"%str(CMF_SECURITY_INDEXES),
-            "reindex /site/foo/hop %s"%str(CMF_SECURITY_INDEXES),
+        self.assertEqual(l, [
+            "reindex /site/foo %s" % str(CMF_SECURITY_INDEXES),
+            "reindex /site/foo/bar %s" % str(CMF_SECURITY_INDEXES),
+            "reindex /site/foo/hop %s" % str(CMF_SECURITY_INDEXES),
             ])
-        self.failIf(foo.notified)
-        self.failIf(bar.notified)
-        self.failIf(hop.notified)
+        self.assertFalse(foo.notified)
+        self.assertFalse(bar.notified)
+        self.assertFalse(hop.notified)
 
     def test_reindexObjectSecurity_missing_raise(self):
         # Exception raised for missing object (Zope 2.8 brains)
@@ -192,7 +207,7 @@
         finally:
             self._ignore_log_errors()
         self.assertRaises(NotFound, foo.reindexObjectSecurity)
-        self.failIf( self.logged ) # no logging due to raise
+        self.assertFalse(self.logged) # no logging due to raise
 
     def test_reindexObjectSecurity_missing_noraise(self):
         # Raising disabled
@@ -203,11 +218,11 @@
         cat = self.ctool
         cat.setObs([foo, missing])
         foo.reindexObjectSecurity()
-        self.assertEquals(cat.log,
-                          ["reindex /site/foo %s"%str(CMF_SECURITY_INDEXES)])
-        self.failIf(foo.notified)
-        self.failIf(missing.notified)
-        self.assertEqual( len(self.logged), 1 ) # logging because no raise
+        self.assertEqual(cat.log,
+                         ["reindex /site/foo %s" % str(CMF_SECURITY_INDEXES)])
+        self.assertFalse(foo.notified)
+        self.assertFalse(missing.notified)
+        self.assertEqual(len(self.logged), 1) # logging because no raise
 
     def test_catalog_tool(self):
         foo = self.site.foo
@@ -237,14 +252,10 @@
         transaction.savepoint(optimistic=True)
         return site
 
-    def _initPolicyAndUser( self
-                          , a_lambda=None
-                          , v_lambda=None
-                          , c_lambda=None
-                          ):
+    def _initPolicyAndUser(self, a_lambda=None, v_lambda=None, c_lambda=None):
         from AccessControl import SecurityManager
 
-        def _promiscuous( *args, **kw ):
+        def _promiscuous(*args, **kw):
             return 1
 
         if a_lambda is None:
@@ -256,10 +267,10 @@
         if c_lambda is None:
             c_lambda = _promiscuous
 
-        scp = _SensitiveSecurityPolicy( v_lambda, c_lambda )
-        SecurityManager.setSecurityPolicy( scp )
-        newSecurityManager( None
-                          , _AllowedUser(a_lambda).__of__(self.app.acl_users))
+        scp = _SensitiveSecurityPolicy(v_lambda, c_lambda)
+        SecurityManager.setSecurityPolicy(scp)
+        newSecurityManager(None,
+                           _AllowedUser(a_lambda).__of__(self.app.acl_users))
 
     def test_object_indexed_after_adding(self):
 
@@ -267,7 +278,7 @@
         bar = TheClass('bar')
         site._setObject('bar', bar)
         cat = self.ctool
-        self.assertEquals(cat.log, ["index /site/bar"])
+        self.assertEqual(cat.log, ["index /site/bar"])
 
     def test_object_unindexed_after_removing(self):
 
@@ -277,7 +288,7 @@
         cat = self.ctool
         cat.log = []
         site._delObject('bar')
-        self.assertEquals(cat.log, ["unindex /site/bar"])
+        self.assertEqual(cat.log, ["unindex /site/bar"])
 
     def test_object_indexed_after_copy_and_pasting(self):
 
@@ -298,7 +309,7 @@
         cookie = folder1.manage_copyObjects(ids=['bar'])
         folder2.manage_pasteObjects(cookie)
 
-        self.assertEquals(cat.log, ["index /site/folder2/bar"])
+        self.assertEqual(cat.log, ["index /site/folder2/bar"])
 
     def test_object_reindexed_after_cut_and_paste(self):
 
@@ -319,8 +330,8 @@
         cookie = folder1.manage_cutObjects(ids=['bar'])
         folder2.manage_pasteObjects(cookie)
 
-        self.assertEquals(cat.log, ["unindex /site/folder1/bar",
-                                    "index /site/folder2/bar"])
+        self.assertEqual(cat.log, ["unindex /site/folder1/bar",
+                                   "index /site/folder2/bar"])
 
     def test_object_reindexed_after_moving(self):
 
@@ -335,8 +346,7 @@
         transaction.savepoint(optimistic=True)
 
         site.manage_renameObject(id='bar', new_id='baz')
-        self.assertEquals(cat.log, ["unindex /site/bar",
-                                    "index /site/baz"])
+        self.assertEqual(cat.log, ["unindex /site/bar", "index /site/baz"])
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_CachingPolicyManager.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_CachingPolicyManager.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_CachingPolicyManager.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -41,7 +41,7 @@
 from Products.CMFCore.tests.base.testcase import SecurityTest
 from Products.CMFCore.tests.base.testcase import TransactionalTest
 
-ACCLARK = DateTime( '2001/01/01' )
+ACCLARK = DateTime('2001/01/01')
 portal_owner = 'portal_owner'
 
 
@@ -49,15 +49,16 @@
 
     __allow_access_to_unprotected_subobjects__ = 1
 
-    def __init__(self, modified ):
+    def __init__(self, modified):
         self.modified = modified
 
-    def Type( self ):
+    def Type(self):
         return 'Dummy'
 
-    def modified( self ):
+    def modified(self):
         return self.modified
 
+
 class CacheableDummyContent(Implicit, Cacheable):
 
     __allow_access_to_unprotected_subobjects__ = 1
@@ -70,7 +71,7 @@
         """ """
         return self.id
 
-    def modified( self ):
+    def modified(self):
         return self.modified
 
     def __call__(self):
@@ -86,6 +87,7 @@
 
         self.ZCacheable_set(None)
 
+
 class DummyView(CacheableDummyContent):
 
     meta_type = 'DTML Method'
@@ -95,16 +97,16 @@
 
     layer = TraversingZCMLLayer
 
-    def _makePolicy( self, policy_id, **kw ):
+    def _makePolicy(self, policy_id, **kw):
         from Products.CMFCore.CachingPolicyManager import CachingPolicy
 
-        return CachingPolicy( policy_id, **kw )
+        return CachingPolicy(policy_id, **kw)
 
-    def _makeContext( self, **kw ):
+    def _makeContext(self, **kw):
         from Products.CMFCore.CachingPolicyManager import createCPContext
 
-        return createCPContext( DummyContent2(self._epoch)
-                              , 'foo_view', kw, self._epoch )
+        return createCPContext(DummyContent2(self._epoch),
+                               'foo_view', kw, self._epoch)
 
     def setUp(self):
         self._epoch = DateTime(0)
@@ -116,292 +118,272 @@
 
         verifyClass(ICachingPolicy, CachingPolicy)
 
-    def test_empty( self ):
-        policy = self._makePolicy( 'empty' )
+    def test_empty(self):
+        policy = self._makePolicy('empty')
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 1 )
-        self.assertEqual( headers[0][0], 'Last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
+        self.assertEqual(len(headers), 1)
+        self.assertEqual(headers[0][0], 'Last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
 
-    def test_noPassPredicate( self ):
-        policy = self._makePolicy( 'noPassPredicate', predicate='nothing' )
+    def test_noPassPredicate(self):
+        policy = self._makePolicy('noPassPredicate', predicate='nothing')
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 0 )
+        self.assertEqual(len(headers), 0)
 
-    def test_typePredicate( self ):
-        policy = self._makePolicy( 'typePredicate'
-                           , predicate='python:object.Type() == "Dummy"' )
+    def test_typePredicate(self):
+        policy = self._makePolicy('typePredicate',
+                                  predicate='python:object.Type() == "Dummy"')
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 1 )
-        self.assertEqual( headers[0][0] , 'Last-modified' )
-        self.assertEqual( headers[0][1] , rfc1123_date(self._epoch.timeTime()) )
+        self.assertEqual(len(headers), 1)
+        self.assertEqual(headers[0][0], 'Last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
 
-    def test_typePredicateMiss( self ):
-        policy = self._makePolicy( 'typePredicate'
-                        , predicate='python:object.Type() == "Foolish"' )
+    def test_typePredicateMiss(self):
+        policy = self._makePolicy('typePredicate',
+                                 predicate='python:object.Type() == "Foolish"')
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 0 )
+        self.assertEqual(len(headers), 0)
 
-    def test_viewPredicate( self ):
-        policy = self._makePolicy( 'viewPredicate'
-                                 , predicate='python:view == "foo_view"' )
+    def test_viewPredicate(self):
+        policy = self._makePolicy('viewPredicate',
+                                  predicate='python:view == "foo_view"')
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 1 )
-        self.assertEqual( headers[0][0], 'Last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
+        self.assertEqual(len(headers), 1)
+        self.assertEqual(headers[0][0], 'Last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
 
-    def test_viewPredicateMiss( self ):
-        policy = self._makePolicy( 'viewPredicateMiss'
-                           , predicate='python:view == "bar_view"' )
+    def test_viewPredicateMiss(self):
+        policy = self._makePolicy('viewPredicateMiss',
+                                  predicate='python:view == "bar_view"')
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 0 )
+        self.assertEqual(len(headers), 0)
 
-    def test_kwPredicate( self ):
-        policy = self._makePolicy( 'kwPredicate'
-                                 , predicate='python:"foo" in keywords.keys()' )
-        context = self._makeContext( foo=1 )
-        headers = policy.getHeaders( context )
+    def test_kwPredicate(self):
+        policy = self._makePolicy('kwPredicate',
+                                  predicate='python:"foo" in keywords.keys()')
+        context = self._makeContext(foo=1)
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 1 )
-        self.assertEqual( headers[0][0], 'Last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
+        self.assertEqual(len(headers), 1)
+        self.assertEqual(headers[0][0], 'Last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
 
-    def test_kwPredicateMiss( self ):
-        policy = self._makePolicy( 'kwPredicateMiss'
-                                 , predicate='python:"foo" in keywords.keys()' )
-        context = self._makeContext( bar=1 )
-        headers = policy.getHeaders( context )
+    def test_kwPredicateMiss(self):
+        policy = self._makePolicy('kwPredicateMiss',
+                                  predicate='python:"foo" in keywords.keys()')
+        context = self._makeContext(bar=1)
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 0 )
+        self.assertEqual(len(headers), 0)
 
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 0 )
+        self.assertEqual(len(headers), 0)
 
-    def test_mtimeFunc( self ):
-        policy = self._makePolicy( 'mtimeFunc'
-                                 , mtime_func='string:2001/01/01' )
+    def test_mtimeFunc(self):
+        policy = self._makePolicy('mtimeFunc', mtime_func='string:2001/01/01')
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 1 )
-        self.assertEqual( headers[0][0], 'Last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(ACCLARK.timeTime()) )
+        self.assertEqual(len(headers), 1)
+        self.assertEqual(headers[0][0], 'Last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(ACCLARK.timeTime()))
 
-    def test_mtimeFuncNone( self ):
-        policy = self._makePolicy( 'mtimeFuncNone'
-                                 , mtime_func='nothing' )
+    def test_mtimeFuncNone(self):
+        policy = self._makePolicy('mtimeFuncNone', mtime_func='nothing')
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 0 )
+        self.assertEqual(len(headers), 0)
 
-    def test_maxAge( self ):
-        policy = self._makePolicy( 'aged', max_age_secs=86400 )
+    def test_maxAge(self):
+        policy = self._makePolicy('aged', max_age_secs=86400)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 3 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'expires' )
-        self.assertEqual( headers[1][1]
-                        , rfc1123_date((self._epoch+1).timeTime()) )
-        self.assertEqual( headers[2][0].lower() , 'cache-control' )
-        self.assertEqual( headers[2][1] , 'max-age=86400' )
+        self.assertEqual(len(headers), 3)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'expires')
+        self.assertEqual(headers[1][1],
+                         rfc1123_date((self._epoch + 1).timeTime()))
+        self.assertEqual(headers[2][0].lower(), 'cache-control')
+        self.assertEqual(headers[2][1], 'max-age=86400')
 
-    def test_sMaxAge( self ):
-        policy = self._makePolicy( 's_aged', s_max_age_secs=86400 )
+    def test_sMaxAge(self):
+        policy = self._makePolicy('s_aged', s_max_age_secs=86400)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 2 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'cache-control' )
-        self.assertEqual( headers[1][1] , 's-maxage=86400' )
+        self.assertEqual(len(headers), 2)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'cache-control')
+        self.assertEqual(headers[1][1], 's-maxage=86400')
         self.assertEqual(policy.getSMaxAgeSecs(), 86400)
 
-    def test_noCache( self ):
-        policy = self._makePolicy( 'noCache', no_cache=1 )
+    def test_noCache(self):
+        policy = self._makePolicy('noCache', no_cache=1)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 3 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'pragma' )
-        self.assertEqual( headers[1][1] , 'no-cache' )
-        self.assertEqual( headers[2][0].lower() , 'cache-control' )
-        self.assertEqual( headers[2][1] , 'no-cache' )
+        self.assertEqual(len(headers), 3)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'pragma')
+        self.assertEqual(headers[1][1], 'no-cache')
+        self.assertEqual(headers[2][0].lower(), 'cache-control')
+        self.assertEqual(headers[2][1], 'no-cache')
 
-    def test_noStore( self ):
-        policy = self._makePolicy( 'noStore', no_store=1 )
+    def test_noStore(self):
+        policy = self._makePolicy('noStore', no_store=1)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 2 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'cache-control' )
-        self.assertEqual( headers[1][1] , 'no-store' )
+        self.assertEqual(len(headers), 2)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'cache-control')
+        self.assertEqual(headers[1][1], 'no-store')
 
-    def test_mustRevalidate( self ):
-        policy = self._makePolicy( 'mustRevalidate', must_revalidate=1 )
+    def test_mustRevalidate(self):
+        policy = self._makePolicy('mustRevalidate', must_revalidate=1)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 2 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'cache-control' )
-        self.assertEqual( headers[1][1] , 'must-revalidate' )
+        self.assertEqual(len(headers), 2)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'cache-control')
+        self.assertEqual(headers[1][1], 'must-revalidate')
 
-    def test_proxyRevalidate( self ):
-        policy = self._makePolicy( 'proxyRevalidate', proxy_revalidate=1 )
+    def test_proxyRevalidate(self):
+        policy = self._makePolicy('proxyRevalidate', proxy_revalidate=1)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 2 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'cache-control' )
-        self.assertEqual( headers[1][1] , 'proxy-revalidate' )
+        self.assertEqual(len(headers), 2)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'cache-control')
+        self.assertEqual(headers[1][1], 'proxy-revalidate')
         self.assertEqual(policy.getProxyRevalidate(), 1)
 
-    def test_public( self ):
-        policy = self._makePolicy( 'public', public=1 )
+    def test_public(self):
+        policy = self._makePolicy('public', public=1)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 2 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'cache-control' )
-        self.assertEqual( headers[1][1] , 'public' )
+        self.assertEqual(len(headers), 2)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'cache-control')
+        self.assertEqual(headers[1][1], 'public')
         self.assertEqual(policy.getPublic(), 1)
 
-    def test_private( self ):
-        policy = self._makePolicy( 'private', private=1 )
+    def test_private(self):
+        policy = self._makePolicy('private', private=1)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 2 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'cache-control' )
-        self.assertEqual( headers[1][1] , 'private' )
+        self.assertEqual(len(headers), 2)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'cache-control')
+        self.assertEqual(headers[1][1], 'private')
         self.assertEqual(policy.getPrivate(), 1)
 
-    def test_noTransform( self ):
-        policy = self._makePolicy( 'noTransform', no_transform=1 )
+    def test_noTransform(self):
+        policy = self._makePolicy('noTransform', no_transform=1)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 2 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'cache-control' )
-        self.assertEqual( headers[1][1] , 'no-transform' )
+        self.assertEqual(len(headers), 2)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'cache-control')
+        self.assertEqual(headers[1][1], 'no-transform')
         self.assertEqual(policy.getNoTransform(), 1)
 
-    def test_lastModified( self ):
-        policy = self._makePolicy( 'lastModified', last_modified=0 )
+    def test_lastModified(self):
+        policy = self._makePolicy('lastModified', last_modified=0)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 0 )
+        self.assertEqual(len(headers), 0)
         self.assertEqual(policy.getLastModified(), 0)
 
-    def test_preCheck( self ):
-        policy = self._makePolicy( 'preCheck', pre_check=1 )
+    def test_preCheck(self):
+        policy = self._makePolicy('preCheck', pre_check=1)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 2 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'cache-control' )
-        self.assertEqual( headers[1][1] , 'pre-check=1' )
+        self.assertEqual(len(headers), 2)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'cache-control')
+        self.assertEqual(headers[1][1], 'pre-check=1')
         self.assertEqual(policy.getPreCheck(), 1)
         self.assertEqual(policy.getPostCheck(), None)
 
-    def test_postCheck( self ):
-        policy = self._makePolicy( 'postCheck', post_check=1 )
+    def test_postCheck(self):
+        policy = self._makePolicy('postCheck', post_check=1)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 2 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'cache-control' )
-        self.assertEqual( headers[1][1] , 'post-check=1' )
+        self.assertEqual(len(headers), 2)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'cache-control')
+        self.assertEqual(headers[1][1], 'post-check=1')
         self.assertEqual(policy.getPostCheck(), 1)
         self.assertEqual(policy.getPreCheck(), None)
 
-    def test_ETag( self ):
+    def test_ETag(self):
         # With an empty etag_func, no ETag should be produced
-        policy = self._makePolicy( 'ETag', etag_func='' )
+        policy = self._makePolicy('ETag', etag_func='')
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 1)
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
+        self.assertEqual(len(headers), 1)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
 
-        policy = self._makePolicy( 'ETag', etag_func='string:foo' )
+        policy = self._makePolicy('ETag', etag_func='string:foo')
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 2)
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower(), 'etag' )
-        self.assertEqual( headers[1][1], 'foo' )
+        self.assertEqual(len(headers), 2)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'etag')
+        self.assertEqual(headers[1][1], 'foo')
 
-    def test_combined( self ):
-        policy = self._makePolicy( 'noStore', no_cache=1, no_store=1 )
+    def test_combined(self):
+        policy = self._makePolicy('noStore', no_cache=1, no_store=1)
         context = self._makeContext()
-        headers = policy.getHeaders( context )
+        headers = policy.getHeaders(context)
 
-        self.assertEqual( len( headers ), 3 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'pragma' )
-        self.assertEqual( headers[1][1] , 'no-cache' )
-        self.assertEqual( headers[2][0].lower() , 'cache-control' )
-        self.assertEqual( headers[2][1] , 'no-cache, no-store' )
+        self.assertEqual(len(headers), 3)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'pragma')
+        self.assertEqual(headers[1][1], 'no-cache')
+        self.assertEqual(headers[2][0].lower(), 'cache-control')
+        self.assertEqual(headers[2][1], 'no-cache, no-store')
 
 
 class CachingPolicyManagerTests(unittest.TestCase):
@@ -420,8 +402,8 @@
         self._epoch = DateTime()
         getSiteManager().registerUtility(DummyTool(), IMembershipTool)
 
-    def assertEqualDelta( self, lhs, rhs, delta ):
-        self.failUnless( abs( lhs - rhs ) <= delta )
+    def assertEqualDelta(self, lhs, rhs, delta):
+        self.assertTrue(abs(lhs - rhs) <= delta)
 
     def test_interfaces(self):
         from Products.CMFCore.CachingPolicyManager import CachingPolicyManager
@@ -429,24 +411,23 @@
 
         verifyClass(ICachingPolicyManager, CachingPolicyManager)
 
-    def test_empty( self ):
+    def test_empty(self):
         mgr = self._makeOne()
 
-        self.assertEqual( len( mgr.listPolicies() ), 0 )
-        headers = mgr.getHTTPCachingHeaders( content=DummyContent2(self._epoch)
-                                           , view_method='foo_view'
-                                           , keywords={}
-                                           , time=self._epoch
-                                           )
-        self.assertEqual( len( headers ), 0 )
+        self.assertEqual(len(mgr.listPolicies()), 0)
+        headers = mgr.getHTTPCachingHeaders(content=DummyContent2(self._epoch),
+                                            view_method='foo_view',
+                                            keywords={},
+                                            time=self._epoch)
+        self.assertEqual(len(headers), 0)
 
-        self.assertRaises( KeyError, mgr._updatePolicy,
+        self.assertRaises(KeyError, mgr._updatePolicy,
                            'xyzzy', None, None, None, None, None, None, '',
-                           '', None, None, None, None, None )
-        self.assertRaises( KeyError, mgr._removePolicy, 'xyzzy' )
-        self.assertRaises( KeyError, mgr._reorderPolicy, 'xyzzy', -1 )
+                           '', None, None, None, None, None)
+        self.assertRaises(KeyError, mgr._removePolicy, 'xyzzy')
+        self.assertRaises(KeyError, mgr._reorderPolicy, 'xyzzy', -1)
 
-    def test_addAndUpdatePolicy( self ):
+    def test_addAndUpdatePolicy(self):
         mgr = self._makeOne()
         mgr.addPolicy('first', 'python:1', 'mtime', 1, 0, 1, 0, 'vary',
                       'etag', None, 2, 1, 0, 1, 0, 1, 0, 2, 3)
@@ -492,117 +473,106 @@
         self.assertEqual(p.getPreCheck(), 3)
         self.assertEqual(p.getPostCheck(), 2)
 
-    def test_reorder( self ):
+    def test_reorder(self):
         mgr = self._makeOne()
 
-        policy_ids = ( 'foo', 'bar', 'baz', 'qux' )
+        policy_ids = ('foo', 'bar', 'baz', 'qux')
 
         for policy_id in policy_ids:
-            mgr._addPolicy( policy_id
-                          , 'python:"%s" in keywords.keys()' % policy_id
-                          , None, 0, 0, 0, 0, '', '' )
+            mgr._addPolicy(policy_id,
+                           'python:"%s" in keywords.keys()' % policy_id,
+                           None, 0, 0, 0, 0, '', '')
 
-        ids = tuple( map( lambda x: x[0], mgr.listPolicies() ) )
-        self.assertEqual( ids, policy_ids )
+        ids = tuple(map(lambda x: x[0], mgr.listPolicies()))
+        self.assertEqual(ids, policy_ids)
 
-        mgr._reorderPolicy( 'bar', 3 )
+        mgr._reorderPolicy('bar', 3)
 
-        ids = tuple( map( lambda x: x[0], mgr.listPolicies() ) )
-        self.assertEqual( ids, ( 'foo', 'baz', 'qux', 'bar' ) )
+        ids = tuple(map(lambda x: x[0], mgr.listPolicies()))
+        self.assertEqual(ids, ('foo', 'baz', 'qux', 'bar'))
 
-    def _makeOneWithPolicies( self ):
+    def _makeOneWithPolicies(self):
         mgr = self._makeOne()
 
-        policy_tuples = ( ( 'foo', None  )
-                        , ( 'bar', 0     )
-                        , ( 'baz', 3600  )
-                        , ( 'qux', 86400 )
-                        )
+        policy_tuples = (('foo', None),
+                         ('bar', 0),
+                         ('baz', 3600),
+                         ('qux', 86400))
 
         for policy_id, max_age_secs in policy_tuples:
-            mgr._addPolicy( policy_id
-                          , 'python:"%s" in keywords.keys()' % policy_id
-                          , None, max_age_secs, 0, 0, 0, '', '' )
+            mgr._addPolicy(policy_id,
+                           'python:"%s" in keywords.keys()' % policy_id,
+                           None, max_age_secs, 0, 0, 0, '', '')
 
         return mgr
 
-    def test_lookupNoMatch( self ):
+    def test_lookupNoMatch(self):
         mgr = self._makeOneWithPolicies()
-        headers = mgr.getHTTPCachingHeaders( content=DummyContent2(self._epoch)
-                                           , view_method='foo_view'
-                                           , keywords={}
-                                           , time=self._epoch
-                                           )
-        self.assertEqual( len( headers ), 0 )
+        headers = mgr.getHTTPCachingHeaders(content=DummyContent2(self._epoch),
+                                            view_method='foo_view',
+                                            keywords={},
+                                            time=self._epoch)
+        self.assertEqual(len(headers), 0)
 
-    def test_lookupMatchFoo( self ):
+    def test_lookupMatchFoo(self):
         mgr = self._makeOneWithPolicies()
-        headers = mgr.getHTTPCachingHeaders( content=DummyContent2(self._epoch)
-                                           , view_method='foo_view'
-                                           , keywords={ 'foo' : 1 }
-                                           , time=self._epoch
-                                           )
-        self.assertEqual( len( headers ), 1 )
-        self.assertEqual( headers[0][0].lower(), 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
+        headers = mgr.getHTTPCachingHeaders(content=DummyContent2(self._epoch),
+                                            view_method='foo_view',
+                                            keywords={'foo': 1},
+                                            time=self._epoch)
+        self.assertEqual(len(headers), 1)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
 
-    def test_lookupMatchBar( self ):
+    def test_lookupMatchBar(self):
         mgr = self._makeOneWithPolicies()
-        headers = mgr.getHTTPCachingHeaders( content=DummyContent2(self._epoch)
-                                           , view_method='foo_view'
-                                           , keywords={ 'bar' : 1 }
-                                           , time=self._epoch
-                                           )
-        self.assertEqual( len( headers ), 3 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'expires' )
-        self.assertEqual( headers[1][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[2][0].lower() , 'cache-control' )
-        self.assertEqual( headers[2][1], 'max-age=0' )
+        headers = mgr.getHTTPCachingHeaders(content=DummyContent2(self._epoch),
+                                            view_method='foo_view',
+                                            keywords={'bar': 1},
+                                            time=self._epoch)
+        self.assertEqual(len(headers), 3)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'expires')
+        self.assertEqual(headers[1][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[2][0].lower(), 'cache-control')
+        self.assertEqual(headers[2][1], 'max-age=0')
 
-    def test_lookupMatchBaz( self ):
+    def test_lookupMatchBaz(self):
         mgr = self._makeOneWithPolicies()
-        headers = mgr.getHTTPCachingHeaders( content=DummyContent2(self._epoch)
-                                           , view_method='foo_view'
-                                           , keywords={ 'baz' : 1 }
-                                           , time=self._epoch
-                                           )
-        self.assertEqual( len( headers ), 3 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'expires' )
+        headers = mgr.getHTTPCachingHeaders(content=DummyContent2(self._epoch),
+                                            view_method='foo_view',
+                                            keywords={'baz': 1},
+                                            time=self._epoch)
+        self.assertEqual(len(headers), 3)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'expires')
 
-        exp_time = DateTime( headers[1][1] )
-        target = self._epoch + ( 1.0 / 24.0 )
-        self.assertEqualDelta( exp_time, target, 0.01 )
+        exp_time = DateTime(headers[1][1])
+        target = self._epoch + (1.0 / 24.0)
+        self.assertEqualDelta(exp_time, target, 0.01)
 
-        self.assertEqual( headers[2][0].lower() , 'cache-control' )
-        self.assertEqual( headers[2][1] , 'max-age=3600' )
+        self.assertEqual(headers[2][0].lower(), 'cache-control')
+        self.assertEqual(headers[2][1], 'max-age=3600')
 
-    def test_lookupMatchQux( self ):
+    def test_lookupMatchQux(self):
         mgr = self._makeOneWithPolicies()
-        headers = mgr.getHTTPCachingHeaders( content=DummyContent2(self._epoch)
-                                           , view_method='foo_view'
-                                           , keywords={ 'qux' : 1 }
-                                           , time=self._epoch
-                                           )
-        self.assertEqual( len( headers ), 3 )
-        self.assertEqual( headers[0][0].lower() , 'last-modified' )
-        self.assertEqual( headers[0][1]
-                        , rfc1123_date(self._epoch.timeTime()) )
-        self.assertEqual( headers[1][0].lower() , 'expires' )
+        headers = mgr.getHTTPCachingHeaders(content=DummyContent2(self._epoch),
+                                            view_method='foo_view',
+                                            keywords={'qux': 1},
+                                            time=self._epoch)
+        self.assertEqual(len(headers), 3)
+        self.assertEqual(headers[0][0].lower(), 'last-modified')
+        self.assertEqual(headers[0][1], rfc1123_date(self._epoch.timeTime()))
+        self.assertEqual(headers[1][0].lower(), 'expires')
 
-        exp_time = DateTime( headers[1][1] )
+        exp_time = DateTime(headers[1][1])
         target = self._epoch + 1.0
-        self.assertEqualDelta( exp_time, target, 0.01 )
+        self.assertEqualDelta(exp_time, target, 0.01)
 
-        self.assertEqual( headers[2][0].lower() , 'cache-control' )
-        self.assertEqual( headers[2][1] , 'max-age=86400' )
+        self.assertEqual(headers[2][0].lower(), 'cache-control')
+        self.assertEqual(headers[2][1], 'max-age=86400')
 
 
 class CachingPolicyManager304Tests(SecurityTest, FSDVTest):
@@ -636,7 +606,8 @@
         # This is a FSPageTemplate that will be used as the View for
         # our content objects. It doesn't matter what it returns.
         path = os.path.join(self.skin_path_name, 'testPT2.pt')
-        self.portal._setObject('dummy_view', FSPageTemplate('dummy_view', path))
+        self.portal._setObject('dummy_view',
+                               FSPageTemplate('dummy_view', path))
 
         uf = self.app.acl_users
         password = 'secret'
@@ -657,42 +628,42 @@
 
         # This policy only applies to doc1. It will not emit any ETag header
         # but it enables If-modified-since handling.
-        cpm.addPolicy(policy_id = 'policy_no_etag',
-                      predicate = 'python:object.getId()=="doc1"',
-                      mtime_func = '',
-                      max_age_secs = 0,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = '',
-                      etag_func = '',
-                      enable_304s = 1)
+        cpm.addPolicy(policy_id='policy_no_etag',
+                      predicate='python:object.getId()=="doc1"',
+                      mtime_func='',
+                      max_age_secs=0,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='',
+                      etag_func='',
+                      enable_304s=1)
 
         # This policy only applies to doc2. It will emit an ETag with
         # the constant value "abc" and also enable if-modified-since handling.
-        cpm.addPolicy(policy_id = 'policy_etag',
-                      predicate = 'python:object.getId()=="doc2"',
-                      mtime_func = '',
-                      max_age_secs = 0,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = '',
-                      etag_func = 'string:abc',
-                      enable_304s = 1)
+        cpm.addPolicy(policy_id='policy_etag',
+                      predicate='python:object.getId()=="doc2"',
+                      mtime_func='',
+                      max_age_secs=0,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='',
+                      etag_func='string:abc',
+                      enable_304s=1)
 
         # This policy only applies to doc3. Etags with constant values of
         # "abc" are emitted, but if-modified-since handling is turned off.
-        cpm.addPolicy(policy_id = 'policy_disabled',
-                      predicate = 'python:object.getId()=="doc3"',
-                      mtime_func = '',
-                      max_age_secs = 0,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = '',
-                      etag_func = 'string:abc',
-                      enable_304s = 0)
+        cpm.addPolicy(policy_id='policy_disabled',
+                      predicate='python:object.getId()=="doc3"',
+                      mtime_func='',
+                      max_age_secs=0,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='',
+                      etag_func='string:abc',
+                      enable_304s=0)
 
     def tearDown(self):
         FSDVTest.tearDown(self)
@@ -702,10 +673,8 @@
         # Clean up request and response
         req = self.portal.REQUEST
 
-        for header in ( 'IF_MODIFIED_SINCE'
-                      , 'HTTP_AUTHORIZATION'
-                      , 'IF_NONE_MATCH'
-                      ):
+        for header in ('IF_MODIFIED_SINCE', 'HTTP_AUTHORIZATION',
+                       'IF_NONE_MATCH'):
             if req.environ.get(header, None) is not None:
                 del req.environ[header]
 
@@ -852,15 +821,16 @@
         self.assertEqual(response.getStatus(), 200)
         self._cleanup()
 
+
 class FSObjMaker(FSDVTest):
 
-    def _makeFSPageTemplate( self, id, filename ):
+    def _makeFSPageTemplate(self, id, filename):
         path = path_join(self.skin_path_name, filename)
-        return FSPageTemplate( id, path )
+        return FSPageTemplate(id, path)
 
-    def _makeFSDTMLMethod( self, id, filename ):
+    def _makeFSDTMLMethod(self, id, filename):
         path = path_join(self.skin_path_name, filename)
-        return FSDTMLMethod( id, path )
+        return FSDTMLMethod(id, path)
 
 
 class NestedTemplateTests(TransactionalTest, FSObjMaker):
@@ -893,21 +863,21 @@
         TransactionalTest.tearDown(self)
         FSObjMaker.tearDown(self)
 
-    def test_subtemplate_cpm_1( self ):
+    def test_subtemplate_cpm_1(self):
         # test that subtemplates dont call the cpm
         # set up site
         portal = self.portal
         now = DateTime()
         cpm = self.cpm
-        cpm.addPolicy(policy_id = 'policy_op2',
-                      predicate = 'python:view=="output_page_2"',
-                      mtime_func = '',
-                      max_age_secs = 100,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = 'doc1',
-                      etag_func = '',
+        cpm.addPolicy(policy_id='policy_op2',
+                      predicate='python:view=="output_page_2"',
+                      mtime_func='',
+                      max_age_secs=100,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='doc1',
+                      etag_func='',
                       s_max_age_secs=100
                       )
 
@@ -915,8 +885,10 @@
         content.modified_date = now
         portal._setObject('content', content)
 
-        output_page_1 = self._makeFSPageTemplate('output_page_1', 'output_page_1.zpt')
-        output_page_2 = self._makeFSPageTemplate('output_page_2', 'output_page_2.zpt')
+        output_page_1 = self._makeFSPageTemplate('output_page_1',
+                                                 'output_page_1.zpt')
+        output_page_2 = self._makeFSPageTemplate('output_page_2',
+                                                 'output_page_2.zpt')
         portal._setObject('output_page_1', output_page_1)
         portal._setObject('output_page_2', output_page_2)
 
@@ -924,25 +896,25 @@
 
         # no headers should be added by the CPM if all is well
         headers = [x.lower() for x in self.RESPONSE.headers.keys()]
-        self.failIf('x-cache-headers-set-by' in headers)
-        self.failIf('vary' in headers)
+        self.assertFalse('x-cache-headers-set-by' in headers)
+        self.assertFalse('vary' in headers)
 
-    def test_subtemplate_cpm_2( self ):
+    def test_subtemplate_cpm_2(self):
         # test that calling content from a template doesnt call the cpm
         # just calling an FSDTMLMethod directly from another template does
         # not activate the bug because RESPONSE is not passed in
         portal = self.portal
         now = DateTime()
         cpm = self.cpm
-        cpm.addPolicy(policy_id = 'policy_op4',
-                      predicate = 'python:view=="output_page_4"',
-                      mtime_func = '',
-                      max_age_secs = 100,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = 'doc1',
-                      etag_func = '',
+        cpm.addPolicy(policy_id='policy_op4',
+                      predicate='python:view=="output_page_4"',
+                      mtime_func='',
+                      max_age_secs=100,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='doc1',
+                      etag_func='',
                       s_max_age_secs=100
                       )
 
@@ -953,50 +925,55 @@
         content2.modified_date = now
         portal._setObject('content2', content2)
 
-        output_page_3 = self._makeFSDTMLMethod('output_page_3', 'output_page_3.dtml')
-        output_page_4 = self._makeFSDTMLMethod('output_page_4', 'output_page_4.dtml')
-        portal._setObject('output_page_4',output_page_4)
-        portal._setObject('output_page_3',output_page_3)
+        output_page_3 = self._makeFSDTMLMethod('output_page_3',
+                                               'output_page_3.dtml')
+        output_page_4 = self._makeFSDTMLMethod('output_page_4',
+                                               'output_page_4.dtml')
+        portal._setObject('output_page_4', output_page_4)
+        portal._setObject('output_page_3', output_page_3)
 
         # call the content
         portal.content()
 
         # no headers should be added by the CPM if all is well
         headers = [x.lower() for x in self.RESPONSE.headers.keys()]
-        self.failIf('x-cache-headers-set-by' in headers)
-        self.failIf('vary' in headers)
+        self.assertFalse('x-cache-headers-set-by' in headers)
+        self.assertFalse('vary' in headers)
 
-    def test_subtemplate_cpm_3( self ):
+    def test_subtemplate_cpm_3(self):
         # test a bigger mix of zpt templates
         # set up site
         portal = self.portal
         now = DateTime()
         cpm = self.cpm
-        cpm.addPolicy(policy_id = 'policy_nv1',
-                      predicate = 'python:view=="nested_view_1"',
-                      mtime_func = '',
-                      max_age_secs = 100,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = 'doc1',
-                      etag_func = '',
+        cpm.addPolicy(policy_id='policy_nv1',
+                      predicate='python:view=="nested_view_1"',
+                      mtime_func='',
+                      max_age_secs=100,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='doc1',
+                      etag_func='',
                       s_max_age_secs=100
                       )
 
         doc1 = DummyContent(id='doc1', view_id='nested_view')
         doc1.modified_date = now
-        portal._setObject('doc1',doc1)
+        portal._setObject('doc1', doc1)
         doc2 = DummyContent(id='doc2', view_id='nested_view_1')
         doc2.modified_date = now
-        portal._setObject('doc2',doc2)
+        portal._setObject('doc2', doc2)
         doc3 = DummyContent(id='doc3', view_id='nested_view_2')
         doc3.modified_date = now
-        portal._setObject('doc3',doc3)
+        portal._setObject('doc3', doc3)
 
-        nested_view = self._makeFSPageTemplate('nested_view', 'nested_view.zpt')
-        nested_view_1 = self._makeFSPageTemplate('nested_view_1', 'nested_view_1.zpt')
-        nested_view_2 = self._makeFSPageTemplate('nested_view_2', 'nested_view_2.zpt')
+        nested_view = self._makeFSPageTemplate('nested_view',
+                                               'nested_view.zpt')
+        nested_view_1 = self._makeFSPageTemplate('nested_view_1',
+                                                 'nested_view_1.zpt')
+        nested_view_2 = self._makeFSPageTemplate('nested_view_2',
+                                                 'nested_view_2.zpt')
         portal._setObject('nested_view', nested_view)
         portal._setObject('nested_view_1', nested_view_1)
         portal._setObject('nested_view_2', nested_view_2)
@@ -1005,37 +982,43 @@
 
         # no headers should be added by the CPM if all is well
         headers = [x.lower() for x in self.RESPONSE.headers.keys()]
-        self.failIf('x-cache-headers-set-by' in headers)
-        self.failIf('vary' in headers)
+        self.assertFalse('x-cache-headers-set-by' in headers)
+        self.assertFalse('vary' in headers)
 
-    def test_mixed_subtemplate_cpm( self ):
+    def test_mixed_subtemplate_cpm(self):
         # test a mix of zpt and dtml templates
         # set up site
         now = DateTime()
         portal = self.portal
         cpm = self.cpm
-        cpm.addPolicy(policy_id = 'policy_nv1',
-                      predicate = 'python:view=="nested_view_1"',
-                      mtime_func = '',
-                      max_age_secs = 100,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = 'doc1',
-                      etag_func = '',
+        cpm.addPolicy(policy_id='policy_nv1',
+                      predicate='python:view=="nested_view_1"',
+                      mtime_func='',
+                      max_age_secs=100,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='doc1',
+                      etag_func='',
                       s_max_age_secs=100
                       )
 
-        doc1 = DummyContent(id='doc1', view_id='nested_view', modified_date=now)
+        doc1 = DummyContent(id='doc1', view_id='nested_view',
+                            modified_date=now)
         portal._setObject('doc1', doc1)
-        doc2 = DummyContent(id='doc2', view_id='nested_view_1', modified_date=now)
+        doc2 = DummyContent(id='doc2', view_id='nested_view_1',
+                            modified_date=now)
         portal._setObject('doc2', doc2)
-        doc3 = DummyContent(id='doc3', view_id='nested_view_2', modified_date=now)
+        doc3 = DummyContent(id='doc3', view_id='nested_view_2',
+                            modified_date=now)
         portal._setObject('doc3', doc3)
 
-        nested_view = self._makeFSPageTemplate('nested_view', 'nested_view.zpt')
-        nested_view_1 = self._makeFSPageTemplate('nested_view_1', 'nested_view_1.zpt')
-        nested_view_2 = self._makeFSDTMLMethod('nested_view_2', 'nested_view_2.dtml')
+        nested_view = self._makeFSPageTemplate('nested_view',
+                                               'nested_view.zpt')
+        nested_view_1 = self._makeFSPageTemplate('nested_view_1',
+                                                 'nested_view_1.zpt')
+        nested_view_2 = self._makeFSDTMLMethod('nested_view_2',
+                                               'nested_view_2.dtml')
         portal._setObject('nested_view', nested_view)
         portal._setObject('nested_view_1', nested_view_1)
         portal._setObject('nested_view_2', nested_view_2)
@@ -1044,11 +1027,11 @@
 
         # no headers should be added by the CPM if all is well
         headers = [x.lower() for x in self.RESPONSE.headers.keys()]
-        self.failIf('x-cache-headers-set-by' in headers)
-        self.failIf('vary' in headers)
+        self.assertFalse('x-cache-headers-set-by' in headers)
+        self.assertFalse('vary' in headers)
 
     def test_fireForSubtemplates(self):
-        # This is a FSPageTemplate that will be used as the View for 
+        # This is a FSPageTemplate that will be used as the View for
         # our content objects. It doesn't matter what it returns.
         dv = self._makeFSPageTemplate('dummy_view', 'testPT_CPM1.zpt')
         self.portal._setObject('dummy_view', dv)
@@ -1057,9 +1040,9 @@
         sv1 = self._makeFSPageTemplate('subview_1', 'testPT_CPM2.zpt')
         sv2 = self._makeFSDTMLMethod('subview_2', 'testDTML_CPM3.dtml')
         self.portal._setObject('subview_1', sv1)
-        self.portal._setObject( 'subview_2', sv2)
+        self.portal._setObject('subview_2', sv2)
 
-        for i in (1,2,3):
+        for i in (1, 2, 3):
             id = 'doc%i' % i
             title = 'Document %i' % i
             description = 'This is document %i' % i
@@ -1073,28 +1056,28 @@
         cpm = self.cpm
 
         # This policy only applies to doc2.
-        cpm.addPolicy(policy_id = 'policy_doc2',
-                      predicate = 'python:object.getId()=="doc2"',
-                      mtime_func = '',
-                      max_age_secs = 200,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = 'doc2',
-                      etag_func = '',
+        cpm.addPolicy(policy_id='policy_doc2',
+                      predicate='python:object.getId()=="doc2"',
+                      mtime_func='',
+                      max_age_secs=200,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='doc2',
+                      etag_func='',
                       pre_check=1
                       )
 
-        # This policy only applies to doc3. 
-        cpm.addPolicy(policy_id = 'policy_doc3',
-                      predicate = 'python:object.getId()=="doc3"',
-                      mtime_func = '',
-                      max_age_secs = 300,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = 'doc3',
-                      etag_func = '',
+        # This policy only applies to doc3.
+        cpm.addPolicy(policy_id='policy_doc3',
+                      predicate='python:object.getId()=="doc3"',
+                      mtime_func='',
+                      max_age_secs=300,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='doc3',
+                      etag_func='',
                       post_check=1
                       )
 
@@ -1106,11 +1089,11 @@
 
         # no headers should be added by the CPM if all is well
         headers = [x.lower() for x in self.RESPONSE.headers.keys()]
-        self.failIf('x-cache-headers-set-by' in headers)
-        self.failIf('vary' in headers)
+        self.assertFalse('x-cache-headers-set-by' in headers)
+        self.assertFalse('vary' in headers)
 
     def test_fireForSubtemplates2(self):
-        # This is a FSPageTemplate that will be used as the View for 
+        # This is a FSPageTemplate that will be used as the View for
         # our content objects. It doesn't matter what it returns.
         dv = self._makeFSPageTemplate('dummy_view', 'testPT_CPM1.zpt')
         self.portal._setObject('dummy_view', dv)
@@ -1119,9 +1102,9 @@
         sv1 = self._makeFSPageTemplate('subview_1', 'testPT_CPM2.zpt')
         sv2 = self._makeFSDTMLMethod('subview_2', 'testDTML_CPM3.dtml')
         self.portal._setObject('subview_1', sv1)
-        self.portal._setObject( 'subview_2', sv2)
+        self.portal._setObject('subview_2', sv2)
 
-        for i in (1,2,3):
+        for i in (1, 2, 3):
             id = 'doc%i' % i
             title = 'Document %i' % i
             description = 'This is document %i' % i
@@ -1135,41 +1118,41 @@
         cpm = self.cpm
 
         # This policy only applies to doc1.
-        cpm.addPolicy(policy_id = 'policy_doc1',
-                      predicate = 'python:object.getId()=="doc1"',
-                      mtime_func = '',
-                      max_age_secs = 100,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = 'doc1',
-                      etag_func = '',
+        cpm.addPolicy(policy_id='policy_doc1',
+                      predicate='python:object.getId()=="doc1"',
+                      mtime_func='',
+                      max_age_secs=100,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='doc1',
+                      etag_func='',
                       s_max_age_secs=100
                       )
 
         # This policy only applies to doc2.
-        cpm.addPolicy(policy_id = 'policy_doc2',
-                      predicate = 'python:object.getId()=="doc2"',
-                      mtime_func = '',
-                      max_age_secs = 200,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = 'doc2',
-                      etag_func = '',
+        cpm.addPolicy(policy_id='policy_doc2',
+                      predicate='python:object.getId()=="doc2"',
+                      mtime_func='',
+                      max_age_secs=200,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='doc2',
+                      etag_func='',
                       pre_check=1
                       )
 
-        # This policy only applies to doc3. 
-        cpm.addPolicy(policy_id = 'policy_doc3',
-                      predicate = 'python:object.getId()=="doc3"',
-                      mtime_func = '',
-                      max_age_secs = 300,
-                      no_cache = 0,
-                      no_store = 0,
-                      must_revalidate = 0,
-                      vary = 'doc3',
-                      etag_func = '',
+        # This policy only applies to doc3.
+        cpm.addPolicy(policy_id='policy_doc3',
+                      predicate='python:object.getId()=="doc3"',
+                      mtime_func='',
+                      max_age_secs=300,
+                      no_cache=0,
+                      no_store=0,
+                      must_revalidate=0,
+                      vary='doc3',
+                      etag_func='',
                       post_check=1
                       )
 
@@ -1180,17 +1163,16 @@
         self.portal.doc1.dummy_view()
 
         # We want to make sure the correct policy (policy_doc1) has fired
-        # Just to be sure, change headers so they are definitely all 
+        # Just to be sure, change headers so they are definitely all
         # lower-cased
         headers = {}
         header_info = self.RESPONSE.headers.items()
         [headers.__setitem__(x[0].lower(), x[1]) for x in header_info]
 
-        self.failUnless(headers.get('x-cache-headers-set-by'))
-        self.assertEquals(headers.get('vary'), 'doc1')
-        self.assertEquals( headers.get('cache-control')
-                         , 'max-age=100, s-maxage=100'
-                         )
+        self.assertTrue(headers.get('x-cache-headers-set-by'))
+        self.assertEqual(headers.get('vary'), 'doc1')
+        self.assertEqual(headers.get('cache-control'),
+                         'max-age=100, s-maxage=100')
 
 
 class OFSCacheTests(TransactionalTest):
@@ -1246,21 +1228,20 @@
 
         cpm = self.portal.caching_policy_manager
         doc1 = self.portal.doc1
-        self.failUnless(cpm._isCacheManager)
-        self.failUnless(isinstance(cpm.ZCacheManager_getCache(), CPMCache))
-        self.assertEquals( doc1.ZCacheable_getManagerIds()
-                         , ({'id':cpm.getId(), 'title':''},)
-                         )
+        self.assertTrue(cpm._isCacheManager)
+        self.assertTrue(isinstance(cpm.ZCacheManager_getCache(), CPMCache))
+        self.assertEqual(doc1.ZCacheable_getManagerIds(),
+                         ({'id': cpm.getId(), 'title': ''},))
 
     def test_no_association(self):
-        # Render an item that would match the CPM policy, but don't 
+        # Render an item that would match the CPM policy, but don't
         # associate it with the CPM.
         self.portal.doc1()
 
         # no headers should be added by the CPM if all is well
         headers = [x.lower() for x in self.RESPONSE.headers.keys()]
-        self.failIf('x-cache-headers-set-by' in headers)
-        self.failIf('vary' in headers)
+        self.assertFalse('x-cache-headers-set-by' in headers)
+        self.assertFalse('vary' in headers)
 
     def test_unsuitable_association(self):
         # Render an item that is associated with the CPM, but that does not
@@ -1273,8 +1254,8 @@
 
         # no headers should be added by the CPM if all is well
         headers = [x.lower() for x in self.RESPONSE.headers.keys()]
-        self.failIf('x-cache-headers-set-by' in headers)
-        self.failIf('vary' in headers)
+        self.assertFalse('x-cache-headers-set-by' in headers)
+        self.assertFalse('vary' in headers)
 
     def test_suitable_association(self):
         # Render a content item that will trigger the CPM
@@ -1285,17 +1266,15 @@
         doc1()
 
         # Policy "policy_1" should have triggered
-        # Just to be sure, change headers so they are definitely all 
+        # Just to be sure, change headers so they are definitely all
         # lower-cased
         headers = {}
         header_info = self.RESPONSE.headers.items()
         [headers.__setitem__(x[0].lower(), x[1]) for x in header_info]
 
-        self.failUnless(headers.get('x-cache-headers-set-by'))
-        self.assertEquals(headers.get('vary'), 'doc1')
-        self.assertEquals( headers.get('cache-control')
-                         , 'max-age=100'
-                         )
+        self.assertTrue(headers.get('x-cache-headers-set-by'))
+        self.assertEqual(headers.get('vary'), 'doc1')
+        self.assertEqual(headers.get('cache-control'), 'max-age=100')
 
     def test_with_view(self):
         # Render a view for a content item that will trigger the CPM
@@ -1307,17 +1286,15 @@
         doc1.a_view()
 
         # Policy "policy_1" should have triggered
-        # Just to be sure, change headers so they are definitely all 
+        # Just to be sure, change headers so they are definitely all
         # lower-cased
         headers = {}
         header_info = self.RESPONSE.headers.items()
         [headers.__setitem__(x[0].lower(), x[1]) for x in header_info]
 
-        self.failUnless(headers.get('x-cache-headers-set-by'))
-        self.assertEquals(headers.get('vary'), 'doc1')
-        self.assertEquals( headers.get('cache-control')
-                         , 'max-age=100'
-                         )
+        self.assertTrue(headers.get('x-cache-headers-set-by'))
+        self.assertEqual(headers.get('vary'), 'doc1')
+        self.assertEqual(headers.get('cache-control'), 'max-age=100')
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_CatalogTool.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_CatalogTool.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_CatalogTool.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -22,9 +22,7 @@
 from zope.interface import implements
 from zope.testing.cleanup import cleanUp
 
-from Products.CMFCore.interfaces import ICatalogTool
 from Products.CMFCore.interfaces import IContentish
-from Products.CMFCore.interfaces import IIndexableObject
 from Products.CMFCore.interfaces import IWorkflowTool
 from Products.CMFCore.tests.base.dummy import DummyContent
 from Products.CMFCore.tests.base.dummy import DummySite
@@ -35,11 +33,6 @@
     id = 'portal'
 
 
-class FakeCatalog(Implicit):
-    implements(ICatalogTool)
-    id = 'portal_catalog'
-
-
 class FakeWorkflowTool(Implicit):
     id = 'portal_workflow'
 
@@ -50,16 +43,6 @@
         return self._vars
 
 
-class CatalogDummyContent(DummyContent):
-
-    """ Dummy content that already provides IIndexableObject
-        and therefore does not need a wrapper to be registered
-    """
-
-    implements(IIndexableObject)
-    allowedRolesAndUsers = ['Manager'] # default value
-
-
 class IndexableObjectWrapperTests(unittest.TestCase):
 
     def _getTargetClass(self):
@@ -68,13 +51,17 @@
         return IndexableObjectWrapper
 
     def _makeOne(self, vars, obj):
+        from Products.CMFCore.interfaces import ICatalogTool
+
+        class FakeCatalog(Implicit):
+            implements(ICatalogTool)
+            id = 'portal_catalog'
+
         getSiteManager().registerUtility(FakeWorkflowTool(vars), IWorkflowTool)
         catalog = FakeCatalog().__of__(FakeFolder())
         return self._getTargetClass()(obj, catalog)
 
     def _makeContent(self, *args, **kw):
-        from Products.CMFCore.tests.base.dummy import DummyContent
-
         return DummyContent(*args, **kw)
 
     def tearDown(self):
@@ -118,9 +105,9 @@
 
         obj = self._makeContent()
         w = self._makeOne({}, obj)
-        self.failUnless(IContentish.providedBy(w))
-        self.failUnless(IIndexableObjectWrapper.providedBy(w))
-        self.failUnless(IIndexableObject.providedBy(w))
+        self.assertTrue(IContentish.providedBy(w))
+        self.assertTrue(IIndexableObjectWrapper.providedBy(w))
+        self.assertTrue(IIndexableObject.providedBy(w))
 
     def test_adapts(self):
         from zope.component import adaptedBy
@@ -142,6 +129,17 @@
         return self._getTargetClass()(*args, **kw)
 
     def _makeContent(self, *args, **kw):
+        from Products.CMFCore.interfaces import IIndexableObject
+
+        class CatalogDummyContent(DummyContent):
+
+            """ Dummy content that already provides IIndexableObject
+                and therefore does not need a wrapper to be registered
+            """
+
+            implements(IIndexableObject)
+            allowedRolesAndUsers = ['Manager'] # default value
+
         return CatalogDummyContent(*args, **kw)
 
     def test_interfaces(self):
@@ -168,8 +166,10 @@
 
     def setupProxyRoles(self, *proxy_roles):
         from AccessControl import getSecurityManager
+
         class FauxExecutable:
             _proxy_roles = proxy_roles
+
         sm = getSecurityManager()
         sm.addContext(FauxExecutable())
 
@@ -201,7 +201,7 @@
         catalog.addIndex('allowedRolesAndUsers', 'KeywordIndex')
         catalog.addIndex('meta_type', 'FieldIndex')
         dummy = self._makeContent(catalog=1)
-        dummy.allowedRolesAndUsers = ('Blob', )
+        dummy.allowedRolesAndUsers = ('Blob',)
         catalog.catalog_object(dummy, '/dummy')
 
         self.loginWithRoles('Blob')
@@ -215,7 +215,7 @@
         catalog.addIndex('allowedRolesAndUsers', 'KeywordIndex')
         catalog.addIndex('meta_type', 'FieldIndex')
         dummy = self._makeContent(catalog=1)
-        dummy.allowedRolesAndUsers = ('Blob', )
+        dummy.allowedRolesAndUsers = ('Blob',)
         catalog.catalog_object(dummy, '/dummy')
 
         self.loginWithRoles('Blob')
@@ -230,7 +230,7 @@
         catalog.addIndex('allowedRolesAndUsers', 'KeywordIndex')
         catalog.addIndex('meta_type', 'FieldIndex')
         dummy = self._makeContent(catalog=1)
-        dummy.allowedRoleAndUsers = ('Blob', )
+        dummy.allowedRoleAndUsers = ('Blob',)
         catalog.catalog_object(dummy, '/dummy')
 
         self.loginWithRoles('Waggle')
@@ -244,7 +244,7 @@
         catalog.addIndex('allowedRolesAndUsers', 'KeywordIndex')
         catalog.addIndex('meta_type', 'FieldIndex')
         dummy = self._makeContent(catalog=1)
-        dummy.allowedRolesAndUsers = ('Blob', )
+        dummy.allowedRolesAndUsers = ('Blob',)
         catalog.catalog_object(dummy, '/dummy')
 
         self.loginWithRoles('Waggle')
@@ -263,21 +263,21 @@
         catalog.addIndex('meta_type', 'FieldIndex')
         now = DateTime()
         dummy = self._makeContent(catalog=1)
-        dummy.allowedRolesAndUsers = ('Blob', )
+        dummy.allowedRolesAndUsers = ('Blob',)
 
         self.loginWithRoles('Blob')
 
         # not yet effective
-        dummy.effective = now+1
-        dummy.expires = now+2
+        dummy.effective = now + 1
+        dummy.expires = now + 2
         catalog.catalog_object(dummy, '/dummy')
         query = {'meta_type': 'Dummy'}
         self.assertEqual(1, len(catalog._catalog.searchResults(query)))
         self.assertEqual(0, len(catalog.searchResults(query)))
 
         # already expired
-        dummy.effective = now-2
-        dummy.expires = now-1
+        dummy.effective = now - 2
+        dummy.expires = now - 1
         catalog.catalog_object(dummy, '/dummy')
         self.assertEqual(1, len(catalog._catalog.searchResults(query)))
         self.assertEqual(0, len(catalog.searchResults(query)))
@@ -295,29 +295,29 @@
         self.loginManager()
 
         # already expired
-        dummy.effective = now-4
-        dummy.expires = now-2
+        dummy.effective = now - 4
+        dummy.expires = now - 2
         catalog.catalog_object(dummy, '/dummy')
         query = {'meta_type': 'Dummy'}
         self.assertEqual(1, len(catalog._catalog.searchResults(query)))
         self.assertEqual(1, len(catalog.searchResults(query)))
 
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': now-3, 'range': 'min'})))
+            expires={'query': now - 3, 'range': 'min'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': now-1, 'range': 'min'})))
+            expires={'query': now - 1, 'range': 'min'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': now-3, 'range': 'max'})))
+            expires={'query': now - 3, 'range': 'max'})))
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': now-1, 'range': 'max'})))
+            expires={'query': now - 1, 'range': 'max'})))
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': (now-3, now-1), 'range': 'min:max'})))
+            expires={'query': (now - 3, now - 1), 'range': 'min:max'})))
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': (now-3, now-1), 'range': 'minmax'})))
+            expires={'query': (now - 3, now - 1), 'range': 'minmax'})))
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': now-2})))
+            expires={'query': now - 2})))
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': now-2, 'range': None})))
+            expires={'query': now - 2, 'range': None})))
 
     def test_search_restrict_inactive(self):
         from DateTime.DateTime import DateTime
@@ -328,31 +328,31 @@
         catalog.addIndex('meta_type', 'FieldIndex')
         now = DateTime()
         dummy = self._makeContent(catalog=1)
-        dummy.allowedRolesAndUsers = ('Blob', )
+        dummy.allowedRolesAndUsers = ('Blob',)
 
         self.loginWithRoles('Blob')
 
         # already expired
-        dummy.effective = now-4
-        dummy.expires = now-2
+        dummy.effective = now - 4
+        dummy.expires = now - 2
         catalog.catalog_object(dummy, '/dummy')
         query = {'meta_type': 'Dummy'}
         self.assertEqual(1, len(catalog._catalog.searchResults(query)))
         self.assertEqual(0, len(catalog.searchResults(query)))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': now-3, 'range': 'min'})))
+            expires={'query': now - 3, 'range': 'min'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': now-3, 'range': 'max'})))
+            expires={'query': now - 3, 'range': 'max'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': now+3, 'range': 'min'})))
+            expires={'query': now + 3, 'range': 'min'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': now+3, 'range': 'max'})))
+            expires={'query': now + 3, 'range': 'max'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': (now-3, now-1), 'range': 'min:max'})))
+            expires={'query': (now - 3, now - 1), 'range': 'min:max'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': (now-3, now-1), 'range': 'minmax'})))
+            expires={'query': (now - 3, now - 1), 'range': 'minmax'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': now-2, 'range': None})))
+            expires={'query': now - 2, 'range': None})))
 
     def test_search_restrict_visible(self):
         from DateTime.DateTime import DateTime
@@ -364,79 +364,79 @@
 
         now = DateTime()
         dummy = self._makeContent(catalog=1)
-        dummy.allowedRolesAndUsers = ('Blob', )
+        dummy.allowedRolesAndUsers = ('Blob',)
 
         self.loginWithRoles('Blob')
 
         # visible
-        dummy.effective = now-2
-        dummy.expires = now+2
+        dummy.effective = now - 2
+        dummy.expires = now + 2
         catalog.catalog_object(dummy, '/dummy')
         query = {'meta_type': 'Dummy'}
         self.assertEqual(1, len(catalog._catalog.searchResults(query)))
         self.assertEqual(1, len(catalog.searchResults(query)))
 
         self.assertEqual(0, len(catalog.searchResults(
-            effective={'query': now-1, 'range': 'min'})))
+            effective={'query': now - 1, 'range': 'min'})))
         self.assertEqual(1, len(catalog.searchResults(
-            effective={'query': now-1, 'range': 'max'})))
+            effective={'query': now - 1, 'range': 'max'})))
         self.assertEqual(0, len(catalog.searchResults(
-            effective={'query': now+1, 'range': 'min'})))
+            effective={'query': now + 1, 'range': 'min'})))
         self.assertEqual(1, len(catalog.searchResults(
-            effective={'query': now+1, 'range': 'max'})))
+            effective={'query': now + 1, 'range': 'max'})))
         self.assertEqual(0, len(catalog.searchResults(
-            effective={'query': (now-1, now+1), 'range': 'min:max'})))
+            effective={'query': (now - 1, now + 1), 'range': 'min:max'})))
         self.assertEqual(0, len(catalog.searchResults(
-            effective={'query': (now-1, now+1), 'range': 'minmax'})))
+            effective={'query': (now - 1, now + 1), 'range': 'minmax'})))
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': now-2, 'range': None})))
+            expires={'query': now - 2, 'range': None})))
 
         self.assertEqual(1, len(catalog.searchResults(
-            effective={'query': now-3, 'range': 'min'})))
+            effective={'query': now - 3, 'range': 'min'})))
         self.assertEqual(0, len(catalog.searchResults(
-            effective={'query': now-3, 'range': 'max'})))
+            effective={'query': now - 3, 'range': 'max'})))
         self.assertEqual(0, len(catalog.searchResults(
-            effective={'query': now+3, 'range': 'min'})))
+            effective={'query': now + 3, 'range': 'min'})))
         self.assertEqual(1, len(catalog.searchResults(
-            effective={'query': now+3, 'range': 'max'})))
+            effective={'query': now + 3, 'range': 'max'})))
         self.assertEqual(1, len(catalog.searchResults(
-            effective={'query': (now-3, now+3), 'range': 'min:max'})))
+            effective={'query': (now - 3, now + 3), 'range': 'min:max'})))
         self.assertEqual(1, len(catalog.searchResults(
-            effective={'query': (now-3, now+3), 'range': 'minmax'})))
+            effective={'query': (now - 3, now + 3), 'range': 'minmax'})))
 
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': now-1, 'range': 'min'})))
+            expires={'query': now - 1, 'range': 'min'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': now-1, 'range': 'max'})))
+            expires={'query': now - 1, 'range': 'max'})))
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': now+1, 'range': 'min'})))
+            expires={'query': now + 1, 'range': 'min'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': now+1, 'range': 'max'})))
+            expires={'query': now + 1, 'range': 'max'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': (now-1, now+1), 'range': 'min:max'})))
+            expires={'query': (now - 1, now + 1), 'range': 'min:max'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': (now-1, now+1), 'range': 'minmax'})))
+            expires={'query': (now - 1, now + 1), 'range': 'minmax'})))
 
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': now-3, 'range': 'min'})))
+            expires={'query': now - 3, 'range': 'min'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': now-3, 'range': 'max'})))
+            expires={'query': now - 3, 'range': 'max'})))
         self.assertEqual(0, len(catalog.searchResults(
-            expires={'query': now+3, 'range': 'min'})))
+            expires={'query': now + 3, 'range': 'min'})))
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': now+3, 'range': 'max'})))
+            expires={'query': now + 3, 'range': 'max'})))
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': (now-3, now+3), 'range': 'min:max'})))
+            expires={'query': (now - 3, now + 3), 'range': 'min:max'})))
         self.assertEqual(1, len(catalog.searchResults(
-            expires={'query': (now-3, now+3), 'range': 'minmax'})))
+            expires={'query': (now - 3, now + 3), 'range': 'minmax'})))
 
         self.assertEqual(1, len(catalog.searchResults(
-            effective={'query': now-1, 'range': 'max'},
-            expires={'query': now+1, 'range': 'min'})))
+            effective={'query': now - 1, 'range': 'max'},
+            expires={'query': now + 1, 'range': 'min'})))
 
         self.assertEqual(0, len(catalog.searchResults(
-            effective={'query': now+1, 'range': 'max'},
-            expires={'query': now+3, 'range': 'min'})))
+            effective={'query': now + 1, 'range': 'max'},
+            expires={'query': now + 3, 'range': 'min'})))
 
     def test_convertQuery(self):
         convert = self._makeOne()._convertQuery
@@ -507,28 +507,28 @@
 
         # First case, no proxy roles set at all
         arus = catalog._listAllowedRolesAndUsers(user)
-        self.assertEquals(len(arus), 3)
-        self.failUnless('Anonymous' in arus)
-        self.failUnless('Blob' in arus)
-        self.failUnless('user:%s' % user.getId() in arus)
+        self.assertEqual(len(arus), 3)
+        self.assertTrue('Anonymous' in arus)
+        self.assertTrue('Blob' in arus)
+        self.assertTrue('user:%s' % user.getId() in arus)
 
         # Second case, a proxy role is set
         self.setupProxyRoles('Waggle')
         arus = catalog._listAllowedRolesAndUsers(user)
-        self.assertEquals(len(arus), 3)
-        self.failUnless('Anonymous' in arus)
-        self.failUnless('Waggle' in arus)
-        self.failUnless('user:%s' % user.getId() in arus)
+        self.assertEqual(len(arus), 3)
+        self.assertTrue('Anonymous' in arus)
+        self.assertTrue('Waggle' in arus)
+        self.assertTrue('user:%s' % user.getId() in arus)
 
         # Third case, proxy roles are an empty tuple. This happens if
         # proxy roles are unset using the ZMI. The behavior should
         # mirror the first case with no proxy role setting at all.
         self.setupProxyRoles()
         arus = catalog._listAllowedRolesAndUsers(user)
-        self.assertEquals(len(arus), 3)
-        self.failUnless('Anonymous' in arus)
-        self.failUnless('Blob' in arus)
-        self.failUnless('user:%s' % user.getId() in arus)
+        self.assertEqual(len(arus), 3)
+        self.assertTrue('Anonymous' in arus)
+        self.assertTrue('Blob' in arus)
+        self.assertTrue('user:%s' % user.getId() in arus)
 
     def test_wrapping1(self):
         # DummyContent implements IIndexableObject
@@ -554,6 +554,8 @@
     def test_wrapping3(self):
         # DummyContent does not implement IIndexableObject
         # wrapper registered - should look this up
+        from Products.CMFCore.interfaces import ICatalogTool
+        from Products.CMFCore.interfaces import IIndexableObject
 
         def FakeWrapper(object, catalog):
             return object

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_ContentTypeRegistry.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_ContentTypeRegistry.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_ContentTypeRegistry.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -32,37 +32,37 @@
 
         verifyClass(IContentTypeRegistryPredicate, MajorMinorPredicate)
 
-    def test_empty( self ):
+    def test_empty(self):
         pred = self._makeOne('empty')
-        assert pred.getMajorType() == 'None'
-        assert pred.getMinorType() == 'None'
-        assert not pred( 'foo', 'text/plain', 'asdfljksadf' )
+        self.assertEqual(pred.getMajorType(), 'None')
+        self.assertEqual(pred.getMinorType(), 'None')
+        self.assertFalse(pred('foo', 'text/plain', 'asdfljksadf'))
 
-    def test_simple( self ):
+    def test_simple(self):
         pred = self._makeOne('plaintext')
-        pred.edit( 'text', 'plain' )
-        assert pred.getMajorType() == 'text'
-        assert pred.getMinorType() == 'plain'
-        assert pred( 'foo', 'text/plain', 'asdfljksadf' )
-        assert not pred( 'foo', 'text/html', 'asdfljksadf' )
-        assert not pred( '', '', '' )
-        assert not pred( '', 'asdf', '' )
+        pred.edit('text', 'plain')
+        self.assertEqual(pred.getMajorType(), 'text')
+        self.assertEqual(pred.getMinorType(), 'plain')
+        self.assertTrue(pred('foo', 'text/plain', 'asdfljksadf'))
+        self.assertFalse(pred('foo', 'text/html', 'asdfljksadf'))
+        self.assertFalse(pred('', '', ''))
+        self.assertFalse(pred('', 'asdf', ''))
 
-    def test_wildcard( self ):
+    def test_wildcard(self):
         pred = self._makeOne('alltext')
-        pred.edit( 'text', '' )
-        assert pred.getMajorType() == 'text'
-        assert pred.getMinorType() == ''
-        assert pred( 'foo', 'text/plain', 'asdfljksadf' )
-        assert pred( 'foo', 'text/html', 'asdfljksadf' )
-        assert not pred( 'foo', 'image/png', 'asdfljksadf' )
+        pred.edit('text', '')
+        self.assertEqual(pred.getMajorType(), 'text')
+        self.assertEqual(pred.getMinorType(), '')
+        self.assertTrue(pred('foo', 'text/plain', 'asdfljksadf'))
+        self.assertTrue(pred('foo', 'text/html', 'asdfljksadf'))
+        self.assertFalse(pred('foo', 'image/png', 'asdfljksadf'))
 
-        pred.edit( '', 'html' )
-        assert pred.getMajorType() == ''
-        assert pred.getMinorType() == 'html'
-        assert not pred( 'foo', 'text/plain', 'asdfljksadf' )
-        assert pred( 'foo', 'text/html', 'asdfljksadf' )
-        assert not pred( 'foo', 'image/png', 'asdfljksadf' )
+        pred.edit('', 'html')
+        self.assertEqual(pred.getMajorType(), '')
+        self.assertEqual(pred.getMinorType(), 'html')
+        self.assertFalse(pred('foo', 'text/plain', 'asdfljksadf'))
+        self.assertTrue(pred('foo', 'text/html', 'asdfljksadf'))
+        self.assertFalse(pred('foo', 'image/png', 'asdfljksadf'))
 
 
 class ExtensionPredicateTests(unittest.TestCase):
@@ -78,31 +78,31 @@
 
         verifyClass(IContentTypeRegistryPredicate, ExtensionPredicate)
 
-    def test_empty( self ):
+    def test_empty(self):
         pred = self._makeOne('empty')
-        assert pred.getExtensions() == 'None'
-        assert not pred( 'foo', 'text/plain', 'asdfljksadf' )
-        assert not pred( 'foo.txt', 'text/plain', 'asdfljksadf' )
-        assert not pred( 'foo.bar', 'text/html', 'asdfljksadf' )
+        self.assertEqual(pred.getExtensions(), 'None')
+        self.assertFalse(pred('foo', 'text/plain', 'asdfljksadf'))
+        self.assertFalse(pred('foo.txt', 'text/plain', 'asdfljksadf'))
+        self.assertFalse(pred('foo.bar', 'text/html', 'asdfljksadf'))
 
-    def test_simple( self ):
+    def test_simple(self):
         pred = self._makeOne('stardottext')
-        pred.edit( 'txt' )
-        assert pred.getExtensions() == 'txt'
-        assert not pred( 'foo', 'text/plain', 'asdfljksadf' )
-        assert pred( 'foo.txt', 'text/plain', 'asdfljksadf' )
-        assert not pred( 'foo.bar', 'text/html', 'asdfljksadf' )
+        pred.edit('txt')
+        self.assertEqual(pred.getExtensions(), 'txt')
+        self.assertFalse(pred('foo', 'text/plain', 'asdfljksadf'))
+        self.assertTrue(pred('foo.txt', 'text/plain', 'asdfljksadf'))
+        self.assertFalse(pred('foo.bar', 'text/html', 'asdfljksadf'))
 
-    def test_multi( self ):
+    def test_multi(self):
         pred = self._makeOne('stardottext')
-        pred.edit( 'txt text html htm' )
-        assert pred.getExtensions() == 'txt text html htm'
-        assert not pred( 'foo', 'text/plain', 'asdfljksadf' )
-        assert pred( 'foo.txt', 'text/plain', 'asdfljksadf' )
-        assert pred( 'foo.text', 'text/plain', 'asdfljksadf' )
-        assert pred( 'foo.html', 'text/plain', 'asdfljksadf' )
-        assert pred( 'foo.htm', 'text/plain', 'asdfljksadf' )
-        assert not pred( 'foo.bar', 'text/html', 'asdfljksadf' )
+        pred.edit('txt text html htm')
+        self.assertEqual(pred.getExtensions(), 'txt text html htm')
+        self.assertFalse(pred('foo', 'text/plain', 'asdfljksadf'))
+        self.assertTrue(pred('foo.txt', 'text/plain', 'asdfljksadf'))
+        self.assertTrue(pred('foo.text', 'text/plain', 'asdfljksadf'))
+        self.assertTrue(pred('foo.html', 'text/plain', 'asdfljksadf'))
+        self.assertTrue(pred('foo.htm', 'text/plain', 'asdfljksadf'))
+        self.assertFalse(pred('foo.bar', 'text/html', 'asdfljksadf'))
 
 
 class MimeTypeRegexPredicateTests(unittest.TestCase):
@@ -120,25 +120,25 @@
 
         verifyClass(IContentTypeRegistryPredicate, MimeTypeRegexPredicate)
 
-    def test_empty( self ):
+    def test_empty(self):
         pred = self._makeOne('empty')
-        assert pred.getPatternStr() == 'None'
-        assert not pred( 'foo', 'text/plain', 'asdfljksadf' )
+        self.assertEqual(pred.getPatternStr(), 'None')
+        self.assertFalse(pred('foo', 'text/plain', 'asdfljksadf'))
 
-    def test_simple( self ):
+    def test_simple(self):
         pred = self._makeOne('plaintext')
-        pred.edit( 'text/plain' )
-        assert pred.getPatternStr() == 'text/plain'
-        assert pred( 'foo', 'text/plain', 'asdfljksadf' )
-        assert not pred( 'foo', 'text/html', 'asdfljksadf' )
+        pred.edit('text/plain')
+        self.assertEqual(pred.getPatternStr(), 'text/plain')
+        self.assertTrue(pred('foo', 'text/plain', 'asdfljksadf'))
+        self.assertFalse(pred('foo', 'text/html', 'asdfljksadf'))
 
-    def test_pattern( self ):
+    def test_pattern(self):
         pred = self._makeOne('alltext')
-        pred.edit( 'text/*' )
-        assert pred.getPatternStr() == 'text/*'
-        assert pred( 'foo', 'text/plain', 'asdfljksadf' )
-        assert pred( 'foo', 'text/html', 'asdfljksadf' )
-        assert not pred( 'foo', 'image/png', 'asdfljksadf' )
+        pred.edit('text/*')
+        self.assertEqual(pred.getPatternStr(), 'text/*')
+        self.assertTrue(pred('foo', 'text/plain', 'asdfljksadf'))
+        self.assertTrue(pred('foo', 'text/html', 'asdfljksadf'))
+        self.assertFalse(pred('foo', 'image/png', 'asdfljksadf'))
 
 
 class NameRegexPredicateTests(unittest.TestCase):
@@ -154,26 +154,26 @@
 
         verifyClass(IContentTypeRegistryPredicate, NameRegexPredicate)
 
-    def test_empty( self ):
+    def test_empty(self):
         pred = self._makeOne('empty')
-        assert pred.getPatternStr() == 'None'
-        assert not pred( 'foo', 'text/plain', 'asdfljksadf' )
+        self.assertEqual(pred.getPatternStr(), 'None')
+        self.assertFalse(pred('foo', 'text/plain', 'asdfljksadf'))
 
-    def test_simple( self ):
+    def test_simple(self):
         pred = self._makeOne('onlyfoo')
-        pred.edit( 'foo' )
-        assert pred.getPatternStr() == 'foo'
-        assert pred( 'foo', 'text/plain', 'asdfljksadf' )
-        assert not pred( 'fargo', 'text/plain', 'asdfljksadf' )
-        assert not pred( 'bar', 'text/plain', 'asdfljksadf' )
+        pred.edit('foo')
+        self.assertEqual(pred.getPatternStr(), 'foo')
+        self.assertTrue(pred('foo', 'text/plain', 'asdfljksadf'))
+        self.assertFalse(pred('fargo', 'text/plain', 'asdfljksadf'))
+        self.assertFalse(pred('bar', 'text/plain', 'asdfljksadf'))
 
-    def test_pattern( self ):
+    def test_pattern(self):
         pred = self._makeOne('allfwords')
-        pred.edit( 'f.*' )
-        assert pred.getPatternStr() == 'f.*'
-        assert pred( 'foo', 'text/plain', 'asdfljksadf' )
-        assert pred( 'fargo', 'text/plain', 'asdfljksadf' )
-        assert not pred( 'bar', 'text/plain', 'asdfljksadf' )
+        pred.edit('f.*')
+        self.assertEqual(pred.getPatternStr(), 'f.*')
+        self.assertTrue(pred('foo', 'text/plain', 'asdfljksadf'))
+        self.assertTrue(pred('fargo', 'text/plain', 'asdfljksadf'))
+        self.assertFalse(pred('bar', 'text/plain', 'asdfljksadf'))
 
 
 class ContentTypeRegistryTests(unittest.TestCase):
@@ -183,7 +183,7 @@
 
         return ContentTypeRegistry(*args, **kw)
 
-    def setUp( self ):
+    def setUp(self):
         self.reg = self._makeOne()
 
     def test_interfaces(self):
@@ -192,37 +192,42 @@
 
         verifyClass(IContentTypeRegistry, ContentTypeRegistry)
 
-    def test_empty( self ):
-        reg=self.reg
-        assert reg.findTypeName( 'foo', 'text/plain', 'asdfljksadf' ) is None
-        assert reg.findTypeName( 'fargo', 'text/plain', 'asdfljksadf' ) is None
-        assert reg.findTypeName( 'bar', 'text/plain', 'asdfljksadf' ) is None
-        assert not reg.listPredicates()
-        self.assertRaises( KeyError, reg.removePredicate, 'xyzzy' )
+    def test_empty(self):
+        reg = self.reg
+        self.assertTrue(reg.findTypeName('foo', 'text/plain', 'asdfljksadf')
+                        is None)
+        self.assertTrue(reg.findTypeName('fargo', 'text/plain', 'asdfljksadf')
+                        is None)
+        self.assertTrue(reg.findTypeName('bar', 'text/plain', 'asdfljksadf')
+                        is None)
+        self.assertFalse(reg.listPredicates())
+        self.assertRaises(KeyError, reg.removePredicate, 'xyzzy')
 
-    def test_reorder( self ):
-        reg=self.reg
-        predIDs = ( 'foo', 'bar', 'baz', 'qux' )
+    def test_reorder(self):
+        reg = self.reg
+        predIDs = ('foo', 'bar', 'baz', 'qux')
         for predID in predIDs:
-            reg.addPredicate( predID, 'name_regex' )
-        ids = tuple( map( lambda x: x[0], reg.listPredicates() ) )
-        assert ids == predIDs
-        reg.reorderPredicate( 'bar', 3 )
-        ids = tuple( map( lambda x: x[0], reg.listPredicates() ) )
-        assert ids == ( 'foo', 'baz', 'qux', 'bar' )
+            reg.addPredicate(predID, 'name_regex')
+        ids = tuple(map(lambda x: x[0], reg.listPredicates()))
+        self.assertEqual(ids, predIDs)
+        reg.reorderPredicate('bar', 3)
+        ids = tuple(map(lambda x: x[0], reg.listPredicates()))
+        self.assertEqual(ids, ('foo', 'baz', 'qux', 'bar'))
 
-    def test_lookup( self ):
-        reg=self.reg
-        reg.addPredicate( 'image', 'major_minor' )
-        reg.getPredicate( 'image' ).edit( 'image', '' )
-        reg.addPredicate( 'onlyfoo', 'name_regex' )
-        reg.getPredicate( 'onlyfoo' ).edit( 'foo' )
-        reg.assignTypeName( 'onlyfoo', 'Foo' )
-        assert reg.findTypeName( 'foo', 'text/plain', 'asdfljksadf' ) == 'Foo'
-        assert not reg.findTypeName( 'fargo', 'text/plain', 'asdfljksadf' )
-        assert not reg.findTypeName( 'bar', 'text/plain', 'asdfljksadf' )
-        assert reg.findTypeName( 'foo', '', '' ) == 'Foo'
-        assert reg.findTypeName( 'foo', None, None ) == 'Foo'
+    def test_lookup(self):
+        reg = self.reg
+        reg.addPredicate('image', 'major_minor')
+        reg.getPredicate('image').edit('image', '')
+        reg.addPredicate('onlyfoo', 'name_regex')
+        reg.getPredicate('onlyfoo').edit('foo')
+        reg.assignTypeName('onlyfoo', 'Foo')
+        self.assertEqual(reg.findTypeName('foo', 'text/plain', 'asdfljksadf'),
+                         'Foo')
+        self.assertFalse(reg.findTypeName('fargo', 'text/plain',
+                                          'asdfljksadf'))
+        self.assertFalse(reg.findTypeName('bar', 'text/plain', 'asdfljksadf'))
+        self.assertEqual(reg.findTypeName('foo', '', ''), 'Foo')
+        self.assertEqual(reg.findTypeName('foo', None, None), 'Foo')
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_CookieCrumbler.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_CookieCrumbler.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_CookieCrumbler.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -122,117 +122,112 @@
 
     def testNoCookies(self):
         # verify the cookie crumbler doesn't break when no cookies are given
-        root, cc, req, credentials = self._makeSite()
+        _root, _cc, req, _credentials = self._makeSite()
         req.traverse('/')
         self.assertEqual(req['AUTHENTICATED_USER'].getUserName(),
                          'Anonymous User')
 
     def testCookieLogin(self):
         # verify the user and auth cookie get set
-        root, cc, req, credentials = self._makeSite()
+        _root, _cc, req, credentials = self._makeSite()
 
         req.cookies['__ac_name'] = 'abraham'
         req.cookies['__ac_password'] = 'pass-w'
         req.traverse('/')
 
-        self.failUnless(req.has_key('AUTHENTICATED_USER'))
-        self.assertEqual(req['AUTHENTICATED_USER'].getUserName(),
-                         'abraham')
+        self.assertTrue('AUTHENTICATED_USER' in req)
+        self.assertEqual(req['AUTHENTICATED_USER'].getUserName(), 'abraham')
         resp = req.response
-        self.failUnless(resp.cookies.has_key('__ac'))
-        self.assertEqual(resp.cookies['__ac']['value'],
-                         credentials)
+        self.assertTrue('__ac' in resp.cookies)
+        self.assertEqual(resp.cookies['__ac']['value'], credentials)
         self.assertEqual(resp.cookies['__ac']['path'], '/')
 
     def testCookieResume(self):
         # verify the cookie crumbler continues the session
-        root, cc, req, credentials = self._makeSite()
+        _root, _cc, req, credentials = self._makeSite()
         req.cookies['__ac'] = credentials
         req.traverse('/')
-        self.failUnless(req.has_key('AUTHENTICATED_USER'))
-        self.assertEqual(req['AUTHENTICATED_USER'].getUserName(),
-                         'abraham')
+        self.assertTrue('AUTHENTICATED_USER' in req)
+        self.assertEqual(req['AUTHENTICATED_USER'].getUserName(), 'abraham')
 
     def testPasswordShredding(self):
         # verify the password is shredded before the app gets the request
-        root, cc, req, credentials = self._makeSite()
+        _root, _cc, req, _credentials = self._makeSite()
         req.cookies['__ac_name'] = 'abraham'
         req.cookies['__ac_password'] = 'pass-w'
-        self.failUnless(req.has_key('__ac_password'))
+        self.assertTrue('__ac_password' in req)
         req.traverse('/')
-        self.failIf( req.has_key('__ac_password'))
-        self.failIf( req.has_key('__ac'))
+        self.assertFalse('__ac_password' in req)
+        self.assertFalse('__ac' in req)
 
     def testCredentialsNotRevealed(self):
         # verify the credentials are shredded before the app gets the request
-        root, cc, req, credentials = self._makeSite()
+        _root, _cc, req, credentials = self._makeSite()
         req.cookies['__ac'] = credentials
-        self.failUnless(req.has_key('__ac'))
+        self.assertTrue('__ac' in req)
         req.traverse('/')
-        self.failIf( req.has_key('__ac'))
+        self.assertFalse('__ac' in req)
 
     def testCacheHeaderAnonymous(self):
         # Should not set cache-control
-        root, cc, req, credentials = self._makeSite()
+        _root, _cc, req, _credentials = self._makeSite()
         req.traverse('/')
-        self.assertEqual(
-            req.response.headers.get('cache-control', ''), '')
+        self.assertEqual(req.response.headers.get('cache-control', ''), '')
 
     def testCacheHeaderLoggingIn(self):
         # Should set cache-control
-        root, cc, req, credentials = self._makeSite()
+        _root, _cc, req, _credentials = self._makeSite()
         req.cookies['__ac_name'] = 'abraham'
         req.cookies['__ac_password'] = 'pass-w'
         req.traverse('/')
-        self.assertEqual(
-            req.response.headers.get('cache-control', ''), 'private')
+        self.assertEqual(req.response.headers.get('cache-control', ''),
+                         'private')
 
     def testCacheHeaderAuthenticated(self):
         # Should set cache-control
-        root, cc, req, credentials = self._makeSite()
+        _root, _cc, req, credentials = self._makeSite()
         req.cookies['__ac'] = credentials
         req.traverse('/')
-        self.assertEqual(
-            req.response.headers.get('cache-control', ''), 'private')
+        self.assertEqual(req.response.headers.get('cache-control', ''),
+                         'private')
 
     def testCacheHeaderDisabled(self):
         # Should not set cache-control
-        root, cc, req, credentials = self._makeSite()
+        _root, cc, req, credentials = self._makeSite()
         cc.cache_header_value = ''
         req.cookies['__ac'] = credentials
         req.traverse('/')
-        self.assertEqual(
-            req.response.headers.get('cache-control', ''), '')
+        self.assertEqual(req.response.headers.get('cache-control', ''), '')
 
     def testLoginRatherThanResume(self):
         # When the user presents both a session resume and new
         # credentials, choose the new credentials (so that it's
         # possible to log in without logging out)
-        root, cc, req, credentials = self._makeSite()
+        _root, _cc, req, credentials = self._makeSite()
         req.cookies['__ac_name'] = 'isaac'
         req.cookies['__ac_password'] = 'pass-w'
         req.cookies['__ac'] = credentials
         req.traverse('/')
 
-        self.failUnless(req.has_key('AUTHENTICATED_USER'))
-        self.assertEqual(req['AUTHENTICATED_USER'].getUserName(),
-                         'isaac')
+        self.assertTrue('AUTHENTICATED_USER' in req)
+        self.assertEqual(req['AUTHENTICATED_USER'].getUserName(), 'isaac')
 
     def test_before_traverse_hooks(self):
         from OFS.Folder import Folder
+
         container = Folder()
         cc = self._makeOne()
 
         marker = []
         bt_before = getattr(container, '__before_traverse__', marker)
-        self.failUnless(bt_before is marker)
+        self.assertTrue(bt_before is marker)
 
         container._setObject(cc.id, cc)
 
         bt_added = getattr(container, '__before_traverse__')
         self.assertEqual(len(bt_added.items()), 1)
         k, v = bt_added.items()[0]
-        self.failUnless(k[1].startswith(self._getTargetClass().meta_type))
+        self.assertTrue(k[1].startswith(self._getTargetClass().meta_type))
         self.assertEqual(v.name, cc.id)
 
         container._delObject(cc.id)

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_DirectoryView.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_DirectoryView.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_DirectoryView.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -24,7 +24,6 @@
 
 from App.config import getConfiguration
 
-from Products.CMFCore.DirectoryView import DirectoryView
 from Products.CMFCore.tests import _globals
 from Products.CMFCore.tests.base.dummy import DummyFolder
 from Products.CMFCore.tests.base.testcase import FSDVTest
@@ -32,14 +31,6 @@
 from Products.CMFCore.tests.base.testcase import WritableFSDVTest
 
 
-class DummyDirectoryView(DirectoryView):
-    def __of__(self, parent):
-        return DummyDirectoryViewSurrogate()
-
-class DummyDirectoryViewSurrogate:
-    pass
-
-
 class DirectoryViewPathTests(unittest.TestCase, WarningInterceptor):
     """
     These test that, no matter what is stored in their dirpath,
@@ -65,7 +56,7 @@
         self.assertEqual(key.split(':')[0], 'Products.CMFCore')
 
         subkey = _generateKey('Products.CMFCore', 'tests\foo')
-        self.failUnless(subkey.startswith(key))
+        self.assertTrue(subkey.startswith(key))
 
     def test__findProductForPath(self):
         from Products.CMFCore.DirectoryView import _findProductForPath
@@ -76,58 +67,60 @@
 
         cmfpath = join(cmfpath, 'tests')
         self.assertEqual(_findProductForPath(cmfpath),
-                ('Products.CMFCore', 'tests'))
+                         ('Products.CMFCore', 'tests'))
 
     def test_getDirectoryInfo(self):
         skin = self.ob.fake_skin
         skin.manage_properties('Products.CMFCore.tests:fake_skins/fake_skin')
-        self.failUnless( hasattr(self.ob.fake_skin, 'test1'),
-                         self.ob.fake_skin.getDirPath() )
+        self.assertTrue(hasattr(self.ob.fake_skin, 'test1'),
+                        self.ob.fake_skin.getDirPath())
 
     # Test we do nothing if given a really wacky path
-    def test_UnhandleableExpandPath( self ):
+    def test_UnhandleableExpandPath(self):
+        from Products.CMFCore import DirectoryView
+
         self._trap_warning_output()
         file = mktemp()
         self.ob.fake_skin.manage_properties(file)
-        self.assertEqual(self.ob.fake_skin.objectIds(),[])
+        self.assertEqual(self.ob.fake_skin.objectIds(), [])
         # Check that a warning was raised.
-        from Products.CMFCore import DirectoryView
         warnings = [t[0] for t in DirectoryView.__warningregistry__]
-        text = 'DirectoryView fake_skin refers to a non-existing path %r' % file
-        self.assert_(text in warnings)
-        self.failUnless(text in self._our_stderr_stream.getvalue())
+        text = ('DirectoryView fake_skin refers to a non-existing path %r'
+                % file)
+        self.assertTrue(text in warnings)
+        self.assertTrue(text in self._our_stderr_stream.getvalue())
 
     # this test tests that registerDirectory creates keys in the right format.
     def test_registerDirectoryKeys(self):
         from Products.CMFCore.DirectoryView import _dirreg
         dirs = _dirreg._directories
-        self.failUnless( dirs.has_key('Products.CMFCore.tests:fake_skins/fake_skin'),
-                         dirs.keys() )
-        self.assertEqual( self.ob.fake_skin.getDirPath(),
-                          'Products.CMFCore.tests:fake_skins/fake_skin' )
+        self.assertTrue('Products.CMFCore.tests:fake_skins/fake_skin' in dirs,
+                        dirs.keys())
+        self.assertEqual(self.ob.fake_skin.getDirPath(),
+                         'Products.CMFCore.tests:fake_skins/fake_skin')
 
 
-class DirectoryViewTests( FSDVTest ):
+class DirectoryViewTests(FSDVTest):
 
-    def setUp( self ):
+    def setUp(self):
         FSDVTest.setUp(self)
         self._registerDirectory(self)
 
-    def test_addDirectoryViews( self ):
+    def test_addDirectoryViews(self):
         # Test addDirectoryViews
         # also test registration of directory views doesn't barf
         pass
 
-    def test_DirectoryViewExists( self ):
+    def test_DirectoryViewExists(self):
         # Check DirectoryView added by addDirectoryViews
         # appears as a DirectoryViewSurrogate due
         # to Acquisition hackery.
         from Products.CMFCore.DirectoryView import DirectoryViewSurrogate
-        self.failUnless(isinstance(self.ob.fake_skin,DirectoryViewSurrogate))
+        self.assertTrue(isinstance(self.ob.fake_skin, DirectoryViewSurrogate))
 
-    def test_DirectoryViewMethod( self ):
+    def test_DirectoryViewMethod(self):
         # Check if DirectoryView method works
-        self.assertEqual(self.ob.fake_skin.test1(),'test1')
+        self.assertEqual(self.ob.fake_skin.test1(), 'test1')
 
     def test_properties(self):
         # Make sure the directory view is reading properties
@@ -136,8 +129,8 @@
     def test_ignored(self):
         # Test that "artifact" files and dirs are ignored
         for name in '#test1', 'CVS', '.test1', 'test1~':
-            assert name not in self.ob.fake_skin.objectIds(), \
-                   '%s not ignored' % name
+            self.assertTrue(name not in self.ob.fake_skin.objectIds(),
+                            '%s not ignored' % name)
 
     def test_surrogate_writethrough(self):
         # CMF Collector 316: It is possible to cause ZODB writes because
@@ -157,19 +150,15 @@
         del fs.foo
 
         self.assertRaises(AttributeError, getattr, fs, 'foo')
-        self.assertRaises( AttributeError
-                         , getattr
-                         , fs.__dict__['_real']
-                         , 'foo'
-                         )
+        self.assertRaises(AttributeError, getattr, fs.__dict__['_real'], 'foo')
 
 
 class DirectoryViewIgnoreTests(FSDVTest):
 
-    def setUp( self ):
+    def setUp(self):
         FSDVTest.setUp(self)
         self.manual_ign = ('CVS', 'SVN', 'test_manual_ignore.py')
-        self._registerDirectory(self , ignore=self.manual_ign)
+        self._registerDirectory(self, ignore=self.manual_ign)
 
     def test_ignored(self):
         # Test that "artifact" files and dirs are ignored,
@@ -180,7 +169,7 @@
         visible = self.ob.fake_skin.objectIds()
 
         for name in must_ignore:
-            self.failIf(name in visible)
+            self.assertFalse(name in visible)
 
 
 class DirectoryViewFolderTests(FSDVTest):
@@ -208,19 +197,29 @@
         # Test to determine if metadata shows up correctly on a
         # FSDV that has a corresponding .metadata file
         testfolder = self.ob.fake_skin.test_directory
-        self.assertEqual(testfolder.getProperty('title'), 'test_directory Title')
+        self.assertEqual(testfolder.getProperty('title'),
+                         'test_directory Title')
 
     def test_DirectoryViewFolderDefault(self):
         # Test that a folder inside the fake skin really is of type
         # DirectoryViewSurrogate
         from Products.CMFCore.DirectoryView import DirectoryViewSurrogate
         testfolder = self.ob.fake_skin.test_directory
-        self.failUnless(isinstance(testfolder, DirectoryViewSurrogate))
+        self.assertTrue(isinstance(testfolder, DirectoryViewSurrogate))
 
     def test_DirectoryViewFolderCustom(self):
         # Now we register a different class under the fake meta_type
         # "FOLDER" and test again...
+        from Products.CMFCore.DirectoryView import DirectoryView
         from Products.CMFCore.DirectoryView import registerMetaType
+
+        class DummyDirectoryViewSurrogate:
+            pass
+
+        class DummyDirectoryView(DirectoryView):
+            def __of__(self, parent):
+                return DummyDirectoryViewSurrogate()
+
         registerMetaType('FOLDER', DummyDirectoryView)
 
         # In order to regenerate the FSDV data we need to remove and
@@ -228,12 +227,12 @@
         self.ob._delObject('fake_skin')
         self._registerDirectory(self)
         testfolder = self.ob.fake_skin.test_directory
-        self.failUnless(isinstance(testfolder, DummyDirectoryViewSurrogate))
+        self.assertTrue(isinstance(testfolder, DummyDirectoryViewSurrogate))
 
 
 class DebugModeTests(WritableFSDVTest):
 
-    def setUp( self ):
+    def setUp(self):
         from Products.CMFCore.DirectoryView import _dirreg
 
         WritableFSDVTest.setUp(self)
@@ -250,7 +249,7 @@
         self._writeFile('test1.py', "return 'new test1'")
 
         # add a new folder
-        mkdir(join(self.skin_path_name,'test3'))
+        mkdir(join(self.skin_path_name, 'test3'))
 
         info = _dirreg.getDirectoryInfo(self.ob.fake_skin._dirpath)
         info.reload()
@@ -260,49 +259,49 @@
         getConfiguration().debug_mode = self.saved_cfg_debug_mode
         WritableFSDVTest.tearDown(self)
 
-    def test_AddNewMethod( self ):
+    def test_AddNewMethod(self):
         # See if a method added to the skin folder can be found
-        self.assertEqual(self.ob.fake_skin.test2(),'test2')
+        self.assertEqual(self.ob.fake_skin.test2(), 'test2')
 
-    def test_EditMethod( self ):
+    def test_EditMethod(self):
         # See if an edited method exhibits its new behaviour
-        self.assertEqual(self.ob.fake_skin.test1(),'new test1')
+        self.assertEqual(self.ob.fake_skin.test1(), 'new test1')
 
-    def test_DeleteMethod( self ):
+    def test_DeleteMethod(self):
         # Make sure a deleted method goes away
         remove(join(self.skin_path_name, 'test2.py'))
-        self.failIf(hasattr(self.ob.fake_skin,'test2'))
+        self.assertFalse(hasattr(self.ob.fake_skin, 'test2'))
 
-    def test_DeleteAddEditMethod( self ):
+    def test_DeleteAddEditMethod(self):
         # Check that if we delete a method, then add it back,
         # then edit it, the DirectoryView notices.
         # This exercises yet another Win32 mtime weirdity.
         remove(join(self.skin_path_name, 'test2.py'))
-        self.failIf(hasattr(self.ob.fake_skin,'test2'))
+        self.assertFalse(hasattr(self.ob.fake_skin, 'test2'))
 
         # add method back to the fake skin folder
         self._writeFile('test2.py', "return 'test2.2'",
                         self.use_dir_mtime)
 
         # check
-        self.assertEqual(self.ob.fake_skin.test2(),'test2.2')
+        self.assertEqual(self.ob.fake_skin.test2(), 'test2.2')
 
         # edit method
         self._writeFile('test2.py', "return 'test2.3'",
                         self.use_dir_mtime)
 
         # check
-        self.assertEqual(self.ob.fake_skin.test2(),'test2.3')
+        self.assertEqual(self.ob.fake_skin.test2(), 'test2.3')
 
     def test_NewFolder(self):
         # See if a new folder shows up
-        self.failIf(hasattr(self.ob.fake_skin, 'test3'))
+        self.assertFalse(hasattr(self.ob.fake_skin, 'test3'))
 
     def test_DeleteFolder(self):
         # Make sure a deleted folder goes away
-        self.failUnless(hasattr(self.ob.fake_skin, 'test_directory'))
+        self.assertTrue(hasattr(self.ob.fake_skin, 'test_directory'))
         self._deleteDirectory('test_directory', self.use_dir_mtime)
-        self.failIf(hasattr(self.ob.fake_skin, 'test_directory'))
+        self.assertFalse(hasattr(self.ob.fake_skin, 'test_directory'))
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_DynamicType.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_DynamicType.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_DynamicType.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -77,43 +77,43 @@
         ttool = TypesTool()
         getSiteManager().registerUtility(ttool, ITypesTool)
         fti = FTIDATA_CMF[0].copy()
-        ttool._setObject( 'Dummy Content 15', FTI(**fti) )
-        self.site._setObject( 'foo', DummyContent() )
-        dummy_view = self.site._setObject( 'dummy_view', DummyObject() )
+        ttool._setObject('Dummy Content 15', FTI(**fti))
+        self.site._setObject('foo', DummyContent())
+        dummy_view = self.site._setObject('dummy_view', DummyObject())
 
     def tearDown(self):
         cleanUp()
 
     def test_default_view_from_fti(self):
         response = HTTPResponse()
-        environment = { 'URL': '',
-                        'PARENTS': [self.site],
-                        'REQUEST_METHOD': 'GET',
-                        'SERVER_PORT': '80',
-                        'REQUEST_METHOD': 'GET',
-                        'steps': [],
-                        'SERVER_NAME': 'localhost',
-                        '_hacked_path': 0 }
+        environment = {'URL': '',
+                       'PARENTS': [self.site],
+                       'REQUEST_METHOD': 'GET',
+                       'SERVER_PORT': '80',
+                       'REQUEST_METHOD': 'GET',
+                       'steps': [],
+                       'SERVER_NAME': 'localhost',
+                       '_hacked_path': 0}
         r = HTTPRequest(StringIO(), environment, response)
         r.other.update(environment)
         alsoProvides(r, IBrowserRequest)
 
         r.traverse('foo')
-        self.assertEqual( r.URL, '/foo/dummy_view' )
-        self.assertEqual( r.response.base, '/foo/',
+        self.assertEqual(r.URL, '/foo/dummy_view')
+        self.assertEqual(r.response.base, '/foo/',
                           'CMF Collector issue #192 (wrong base): %s'
-                          % (r.response.base or 'empty',) )
+                          % (r.response.base or 'empty',))
 
     def test_default_viewname_but_no_view_doesnt_override_fti(self):
         response = HTTPResponse()
-        environment = { 'URL': '',
-                        'PARENTS': [self.site],
-                        'REQUEST_METHOD': 'GET',
-                        'SERVER_PORT': '80',
-                        'REQUEST_METHOD': 'GET',
-                        'steps': [],
-                        'SERVER_NAME': 'localhost',
-                        '_hacked_path': 0 }
+        environment = {'URL': '',
+                       'PARENTS': [self.site],
+                       'REQUEST_METHOD': 'GET',
+                       'SERVER_PORT': '80',
+                       'REQUEST_METHOD': 'GET',
+                       'steps': [],
+                       'SERVER_NAME': 'localhost',
+                       '_hacked_path': 0}
         r = HTTPRequest(StringIO(), environment, response)
         r.other.update(environment)
         alsoProvides(r, IBrowserRequest)
@@ -122,19 +122,19 @@
         # corresponding view, no change in behaviour expected
         defineDefaultViewName('index.html', DummyContent)
         r.traverse('foo')
-        self.assertEqual( r.URL, '/foo/dummy_view' )
-        self.assertEqual( r.response.base, '/foo/' )
+        self.assertEqual(r.URL, '/foo/dummy_view')
+        self.assertEqual(r.response.base, '/foo/')
 
     def test_default_viewname_overrides_fti(self):
         response = HTTPResponse()
-        environment = { 'URL': '',
-                        'PARENTS': [self.site],
-                        'REQUEST_METHOD': 'GET',
-                        'SERVER_PORT': '80',
-                        'REQUEST_METHOD': 'GET',
-                        'steps': [],
-                        'SERVER_NAME': 'localhost',
-                        '_hacked_path': 0 }
+        environment = {'URL': '',
+                       'PARENTS': [self.site],
+                       'REQUEST_METHOD': 'GET',
+                       'SERVER_PORT': '80',
+                       'REQUEST_METHOD': 'GET',
+                       'steps': [],
+                       'SERVER_NAME': 'localhost',
+                       '_hacked_path': 0}
         r = HTTPRequest(StringIO(), environment, response)
         r.other.update(environment)
         alsoProvides(r, IBrowserRequest)
@@ -147,8 +147,8 @@
             'index.html')
 
         r.traverse('foo')
-        self.assertEqual( r.URL, '/foo/index.html' )
-        self.assertEqual( r.response.base, '/foo/' )
+        self.assertEqual(r.URL, '/foo/index.html')
+        self.assertEqual(r.response.base, '/foo/')
 
 
 class DynamicTypeSecurityTests(SecurityTest):
@@ -158,8 +158,8 @@
         self.site = DummySite('site').__of__(self.app)
         ttool = TypesTool()
         fti = FTIDATA_CMF[0].copy()
-        ttool._setObject( 'Dummy Content 15', FTI(**fti) )
-        self.site._setObject( 'foo', DummyContent() )
+        ttool._setObject('Dummy Content 15', FTI(**fti))
+        self.site._setObject('foo', DummyContent())
         sm = getSiteManager()
         sm.registerUtility(DummyTool(), IMembershipTool)
         sm.registerUtility(DummyTool().__of__(self.site), IURLTool)
@@ -171,11 +171,11 @@
 
     def test_getTypeInfo(self):
         foo = self.site.foo
-        self.assertEqual( foo.getTypeInfo().getId(), 'Dummy Content 15' )
+        self.assertEqual(foo.getTypeInfo().getId(), 'Dummy Content 15')
 
     def test_getActionInfo(self):
         foo = self.site.foo
-        self.assertEqual( foo.getActionInfo('object/view')['id'], 'view' )
+        self.assertEqual(foo.getActionInfo('object/view')['id'], 'view')
 
         # The following is nasty, but I want to make sure the ValueError
         # carries some useful information
@@ -185,7 +185,7 @@
         except ValueError, e:
             message = e.args[0]
             detail = '"%s" does not offer action "%s"' % (message, INVALID_ID)
-            self.failUnless(message.find(INVALID_ID) != -1, detail)
+            self.assertTrue(message.find(INVALID_ID) != -1, detail)
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_Expression.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_Expression.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_Expression.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -28,24 +28,21 @@
 from Products.CMFCore.tests.base.testcase import SecurityTest
 
 
-class ExpressionTests( SecurityTest ):
+class ExpressionTests(SecurityTest):
 
-    def setUp( self ):
-
+    def setUp(self):
         SecurityTest.setUp(self)
-        root = self.root
-        root._setObject('portal', DummyContent('portal', url='url_portal'))
-        portal = self.portal = root.portal
+        app = self.app
+        app._setObject('portal', DummyContent('portal', url='url_portal'))
+        self.portal = app.portal
         self.folder = DummyContent('foo', url='url_foo')
         self.object = DummyContent('bar', url='url_bar')
-        self.ai = ActionInformation(id='view'
-                                  , title='View'
-                                  , action=Expression(
-                  text='view')
-                                  , condition=Expression(
-                  text='member')
-                                  , category='global'
-                                  , visible=1)
+        self.ai = ActionInformation(id='view',
+                                    title='View',
+                                    action=Expression(text='view'),
+                                    condition=Expression(text='member'),
+                                    category='global',
+                                    visible=1)
 
     def tearDown(self):
         cleanUp()
@@ -56,7 +53,7 @@
         sm.registerUtility(DummyMembershipTool(), IMembershipTool)
         ec = createExprContext(self.folder, self.portal, self.object)
         member = ec.contexts['member']
-        self.failIf(member)
+        self.assertFalse(member)
 
     def test_authenticatedUser_ec(self):
         sm = getSiteManager()
@@ -72,13 +69,13 @@
         object = ec.contexts['object']
         portal = ec.contexts['portal']
         folder = ec.contexts['folder']
-        self.failUnless(object)
+        self.assertTrue(object)
         self.assertEqual(object.id, 'bar')
         self.assertEqual(object.absolute_url(), 'url_bar')
-        self.failUnless(portal)
+        self.assertTrue(portal)
         self.assertEqual(portal.id, 'portal')
         self.assertEqual(portal.absolute_url(), 'url_portal')
-        self.failUnless(folder)
+        self.assertTrue(folder)
         self.assertEqual(folder.id, 'foo')
         self.assertEqual(folder.absolute_url(), 'url_foo')
 

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_FSDTMLMethod.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_FSDTMLMethod.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_FSDTMLMethod.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -39,13 +39,13 @@
 
 class FSDTMLMaker(FSDVTest):
 
-    def _makeOne( self, id, filename ):
+    def _makeOne(self, id, filename):
         from Products.CMFCore.FSDTMLMethod import FSDTMLMethod
 
         path = path_join(self.skin_path_name, filename)
         metadata = FSMetadata(path)
         metadata.read()
-        return FSDTMLMethod( id, path, properties=metadata.getProperties() )
+        return FSDTMLMethod(id, path, properties=metadata.getProperties())
 
 
 class FSDTMLMethodTests(TransactionalTest, FSDTMLMaker):
@@ -73,9 +73,9 @@
         obj = self._makeOne('testDTML', 'testDTML.dtml')
         obj = obj.__of__(self.app)
         obj(self.app, self.REQUEST, self.RESPONSE)
-        self.failUnless(len(self.RESPONSE.headers) >= original_len + 2)
-        self.failUnless('foo' in self.RESPONSE.headers.keys())
-        self.failUnless('bar' in self.RESPONSE.headers.keys())
+        self.assertTrue(len(self.RESPONSE.headers) >= original_len + 2)
+        self.assertTrue('foo' in self.RESPONSE.headers.keys())
+        self.assertTrue('bar' in self.RESPONSE.headers.keys())
 
     def test_ownership(self):
         script = self._makeOne('testDTML', 'testDTML.dtml')
@@ -120,43 +120,41 @@
         SecurityTest.tearDown(self)
         FSDTMLMaker.tearDown(self)
 
-    def test_customize( self ):
+    def test_customize(self):
 
-        self.fsDTML.manage_doCustomize( folder_path='custom' )
+        self.fsDTML.manage_doCustomize(folder_path='custom')
 
-        self.assertEqual( len( self.custom.objectIds() ), 1 )
-        self.failUnless( 'testDTML' in self.custom.objectIds() )
+        self.assertEqual(len(self.custom.objectIds()), 1)
+        self.assertTrue('testDTML' in self.custom.objectIds())
 
-    def test_customize_alternate_root( self ):
+    def test_customize_alternate_root(self):
         self.app.other = Folder('other')
 
         self.fsDTML.manage_doCustomize(folder_path='other', root=self.app)
 
-        self.failIf( 'testDTML' in self.custom.objectIds() )
-        self.failUnless( 'testDTML' in self.app.other.objectIds() )
+        self.assertFalse('testDTML' in self.custom.objectIds())
+        self.assertTrue('testDTML' in self.app.other.objectIds())
 
-    def test_customize_fspath_as_dot( self ):
+    def test_customize_fspath_as_dot(self):
 
-        self.fsDTML.manage_doCustomize( folder_path='.' )
+        self.fsDTML.manage_doCustomize(folder_path='.')
 
-        self.failIf( 'testDTML' in self.custom.objectIds() )
-        self.failUnless( 'testDTML' in self.skins.objectIds() )
+        self.assertFalse('testDTML' in self.custom.objectIds())
+        self.assertTrue('testDTML' in self.skins.objectIds())
 
-    def test_customize_manual_clone( self ):
+    def test_customize_manual_clone(self):
         clone = Folder('testDTML')
 
-        self.fsDTML.manage_doCustomize( folder_path='custom', obj=clone )
+        self.fsDTML.manage_doCustomize(folder_path='custom', obj=clone)
 
-        self.failUnless( 'testDTML' in self.custom.objectIds() )
-        self.failUnless( aq_base(self.custom._getOb('testDTML')) is clone)
+        self.assertTrue('testDTML' in self.custom.objectIds())
+        self.assertTrue(aq_base(self.custom._getOb('testDTML')) is clone)
 
     def test_customize_caching(self):
         # Test to ensure that cache manager associations survive customizing
         cache_id = 'gofast'
-        RAMCacheManager.manage_addRAMCacheManager( self.app
-                                                 , cache_id
-                                                 , REQUEST=None
-                                                 )
+        RAMCacheManager.manage_addRAMCacheManager(self.app, cache_id,
+                                                  REQUEST=None)
         self.fsDTML.ZCacheable_setManagerId(cache_id, REQUEST=None)
 
         self.assertEqual(self.fsDTML.ZCacheable_getManagerId(), cache_id)

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_FSFile.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_FSFile.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_FSFile.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -50,9 +50,9 @@
         metadata.read()
         return FSFile(id, full_path, properties=metadata.getProperties())
 
-    def _extractFile( self, filename ):
+    def _extractFile(self, filename):
         path = os.path.join(self.skin_path_name, filename)
-        f = open( path, 'rb' )
+        f = open(path, 'rb')
         try:
             data = f.read()
         finally:
@@ -60,72 +60,72 @@
 
         return path, data
 
-    def test_ctor( self ):
+    def test_ctor(self):
         _path, ref = self._extractFile('test_file.swf')
 
-        file = self._makeOne( 'test_file', 'test_file.swf' )
+        file = self._makeOne('test_file', 'test_file.swf')
         file = file.__of__(self.app)
 
-        self.assertEqual( file.get_size(), len( ref ) )
-        self.assertEqual( file._readFile(0), ref )
+        self.assertEqual(file.get_size(), len(ref))
+        self.assertEqual(file._readFile(0), ref)
 
-    def test_str( self ):
+    def test_str(self):
         _path, ref = self._extractFile('test_file.swf')
-        file = self._makeOne( 'test_file', 'test_file.swf' )
+        file = self._makeOne('test_file', 'test_file.swf')
         file = file.__of__(self.app)
-        self.assertEqual( len(str(file)), len( ref ) )
+        self.assertEqual(len(str(file)), len(ref))
 
-    def test_index_html( self ):
+    def test_index_html(self):
         path, ref = self._extractFile('test_file.swf')
-        mod_time = os.stat( path )[ 8 ]
+        mod_time = os.stat(path)[8]
 
-        file = self._makeOne( 'test_file', 'test_file.swf' )
+        file = self._makeOne('test_file', 'test_file.swf')
         file = file.__of__(self.app)
 
-        data = file.index_html( self.REQUEST, self.RESPONSE )
+        data = file.index_html(self.REQUEST, self.RESPONSE)
 
-        self.assertEqual( len( data ), len( ref ) )
-        self.assertEqual( data, ref )
+        self.assertEqual(len(data), len(ref))
+        self.assertEqual(data, ref)
         # ICK!  'HTTPResponse.getHeader' doesn't case-flatten the key!
-        self.assertEqual( self.RESPONSE.getHeader( 'Content-Length'.lower() )
-                        , str(len(ref)) )
-        self.assertEqual( self.RESPONSE.getHeader( 'Content-Type'.lower() )
-                        , 'application/octet-stream' )
-        self.assertEqual( self.RESPONSE.getHeader( 'Last-Modified'.lower() )
-                        , rfc1123_date( mod_time ) )
+        self.assertEqual(self.RESPONSE.getHeader('Content-Length'.lower()),
+                         str(len(ref)))
+        self.assertEqual(self.RESPONSE.getHeader('Content-Type'.lower()),
+                         'application/octet-stream')
+        self.assertEqual(self.RESPONSE.getHeader('Last-Modified'.lower()),
+                         rfc1123_date(mod_time))
 
-    def test_index_html_with_304( self ):
+    def test_index_html_with_304(self):
         path, _ref = self._extractFile('test_file.swf')
-        mod_time = os.stat( path )[ 8 ]
+        mod_time = os.stat(path)[8]
 
-        file = self._makeOne( 'test_file', 'test_file.swf' )
+        file = self._makeOne('test_file', 'test_file.swf')
         file = file.__of__(self.app)
 
-        self.REQUEST.environ[ 'IF_MODIFIED_SINCE'
-                            ] = '%s;' % rfc1123_date( mod_time+3600 )
+        self.REQUEST.environ['IF_MODIFIED_SINCE'
+                            ] = '%s;' % rfc1123_date(mod_time + 3600)
 
-        data = file.index_html( self.REQUEST, self.RESPONSE )
+        data = file.index_html(self.REQUEST, self.RESPONSE)
 
-        self.assertEqual( data, '' )
+        self.assertEqual(data, '')
         # test that we don't supply a content-length
-        self.assertEqual( self.RESPONSE.getHeader('Content-Length'.lower()),
-                                                  None )
-        self.assertEqual( self.RESPONSE.getStatus(), 304 )
+        self.assertEqual(self.RESPONSE.getHeader('Content-Length'.lower()),
+                                                  None)
+        self.assertEqual(self.RESPONSE.getStatus(), 304)
 
-    def test_index_html_without_304( self ):
+    def test_index_html_without_304(self):
         path, _ref = self._extractFile('test_file.swf')
-        mod_time = os.stat( path )[ 8 ]
+        mod_time = os.stat(path)[8]
 
-        file = self._makeOne( 'test_file', 'test_file.swf' )
+        file = self._makeOne('test_file', 'test_file.swf')
         file = file.__of__(self.app)
 
-        self.REQUEST.environ[ 'IF_MODIFIED_SINCE'
-                            ] = '%s;' % rfc1123_date( mod_time-3600 )
+        self.REQUEST.environ['IF_MODIFIED_SINCE'
+                            ] = '%s;' % rfc1123_date(mod_time - 3600)
 
-        data = file.index_html( self.REQUEST, self.RESPONSE )
+        data = file.index_html(self.REQUEST, self.RESPONSE)
 
-        self.failUnless( data, '' )
-        self.assertEqual( self.RESPONSE.getStatus(), 200 )
+        self.assertTrue(data, '')
+        self.assertEqual(self.RESPONSE.getStatus(), 200)
 
     def test_index_html_with_304_from_cpm(self):
         cpm = DummyCachingManagerWithPolicy()
@@ -161,12 +161,12 @@
         self.assertEqual(len(data), len(ref))
         self.assertEqual(data, ref)
         # ICK!  'HTTPResponse.getHeader' doesn't case-flatten the key!
-        self.assertEqual(self.RESPONSE.getHeader('Content-Length'.lower())
-                        , str(len(ref)))
-        self.assertEqual(self.RESPONSE.getHeader('Content-Type'.lower())
-                        , 'application/octet-stream')
-        self.assertEqual(self.RESPONSE.getHeader('Last-Modified'.lower())
-                        , rfc1123_date(mod_time))
+        self.assertEqual(self.RESPONSE.getHeader('Content-Length'.lower()),
+                         str(len(ref)))
+        self.assertEqual(self.RESPONSE.getHeader('Content-Type'.lower()),
+                         'application/octet-stream')
+        self.assertEqual(self.RESPONSE.getHeader('Last-Modified'.lower()),
+                         rfc1123_date(mod_time))
 
     def test_caching(self):
         cpm = DummyCachingManager()
@@ -176,31 +176,31 @@
         obj = obj.__of__(self.app)
         obj.index_html(self.REQUEST, self.RESPONSE)
         headers = self.RESPONSE.headers
-        self.failUnless(len(headers) >= original_len + 3)
-        self.failUnless('foo' in headers.keys())
-        self.failUnless('bar' in headers.keys())
+        self.assertTrue(len(headers) >= original_len + 3)
+        self.assertTrue('foo' in headers.keys())
+        self.assertTrue('bar' in headers.keys())
         self.assertEqual(headers['test_path'], '/test_file')
 
-    def test_forced_content_type( self ):
+    def test_forced_content_type(self):
         path, ref = self._extractFile('test_file_two.swf')
-        mod_time = os.stat( path )[ 8 ]
+        mod_time = os.stat(path)[8]
 
-        file = self._makeOne( 'test_file', 'test_file_two.swf' )
+        file = self._makeOne('test_file', 'test_file_two.swf')
         file = file.__of__(self.app)
 
-        data = file.index_html( self.REQUEST, self.RESPONSE )
+        data = file.index_html(self.REQUEST, self.RESPONSE)
 
-        self.assertEqual( len( data ), len( ref ) )
-        self.assertEqual( data, ref )
+        self.assertEqual(len(data), len(ref))
+        self.assertEqual(data, ref)
         # ICK!  'HTTPResponse.getHeader' doesn't case-flatten the key!
-        self.assertEqual( self.RESPONSE.getHeader( 'Content-Length'.lower() )
-                        , str(len(ref)) )
-        self.assertEqual( self.RESPONSE.getHeader( 'Content-Type'.lower() )
-                        , 'application/x-shockwave-flash' )
-        self.assertEqual( self.RESPONSE.getHeader( 'Last-Modified'.lower() )
-                        , rfc1123_date( mod_time ) )
+        self.assertEqual(self.RESPONSE.getHeader('Content-Length'.lower()),
+                         str(len(ref)))
+        self.assertEqual(self.RESPONSE.getHeader('Content-Type'.lower()),
+                         'application/x-shockwave-flash')
+        self.assertEqual(self.RESPONSE.getHeader('Last-Modified'.lower()),
+                         rfc1123_date(mod_time))
 
-    def test_utf8charset_detection( self ):
+    def test_utf8charset_detection(self):
         import mimetypes
 
         file_name = 'testUtf8.js'
@@ -214,34 +214,36 @@
     def test_unnecessary_invalidation_avoidance(self):
         # See https://bugs.launchpad.net/zope-cmf/+bug/325246
         invalidated = []
+
         def fake_invalidate(*args, **kw):
             invalidated.append(True)
-        file = self._makeOne( 'test_file', 'test_file.swf' )
+
+        file = self._makeOne('test_file', 'test_file.swf')
         file.ZCacheable_invalidate = fake_invalidate
 
         # First pass: The internal file modification representation
         # equals the filesystem modification time.
         del invalidated[:]
         file._readFile(True)
-        self.failIf(invalidated)
+        self.assertFalse(invalidated)
 
         del invalidated[:]
         file._parsed = False
         file._updateFromFS()
-        self.failIf(invalidated)
+        self.assertFalse(invalidated)
 
         # Second pass: Forcing a different internal file modification
         # time onto the instance. Now the file will be invalidated.
         del invalidated[:]
         file._file_mod_time = 0
         file._readFile(True)
-        self.failUnless(invalidated)
+        self.assertTrue(invalidated)
 
         del invalidated[:]
         file._file_mod_time = 0
         file._parsed = False
         file._updateFromFS()
-        self.failUnless(invalidated)
+        self.assertTrue(invalidated)
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_FSImage.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_FSImage.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_FSImage.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -47,9 +47,9 @@
 
         return FSImage(id, path_join(self.skin_path_name, filename))
 
-    def _extractFile( self ):
+    def _extractFile(self):
         path = path_join(self.skin_path_name, 'test_image.gif')
-        f = open( path, 'rb' )
+        f = open(path, 'rb')
         try:
             data = f.read()
         finally:
@@ -57,66 +57,66 @@
 
         return path, data
 
-    def test_ctor( self ):
+    def test_ctor(self):
         _path, ref = self._extractFile()
 
-        image = self._makeOne( 'test_image', 'test_image.gif' )
+        image = self._makeOne('test_image', 'test_image.gif')
         image = image.__of__(self.app)
 
-        self.assertEqual( image.get_size(), len( ref ) )
-        self.assertEqual( image._data, ref )
+        self.assertEqual(image.get_size(), len(ref))
+        self.assertEqual(image._data, ref)
 
-    def test_index_html( self ):
+    def test_index_html(self):
         path, ref = self._extractFile()
-        mod_time = os.stat( path )[ 8 ]
+        mod_time = os.stat(path)[8]
 
-        image = self._makeOne( 'test_image', 'test_image.gif' )
+        image = self._makeOne('test_image', 'test_image.gif')
         image = image.__of__(self.app)
 
-        data = image.index_html( self.REQUEST, self.RESPONSE )
+        data = image.index_html(self.REQUEST, self.RESPONSE)
 
-        self.assertEqual( len( data ), len( ref ) )
-        self.assertEqual( data, ref )
+        self.assertEqual(len(data), len(ref))
+        self.assertEqual(data, ref)
         # ICK!  'HTTPResponse.getHeader' doesn't case-flatten the key!
-        self.assertEqual( self.RESPONSE.getHeader( 'Content-Length'.lower() )
-                        , str(len(ref)) )
-        self.assertEqual( self.RESPONSE.getHeader( 'Content-Type'.lower() )
-                        , 'image/gif' )
-        self.assertEqual( self.RESPONSE.getHeader( 'Last-Modified'.lower() )
-                        , rfc1123_date( mod_time ) )
+        self.assertEqual(self.RESPONSE.getHeader('Content-Length'.lower()),
+                         str(len(ref)))
+        self.assertEqual(self.RESPONSE.getHeader('Content-Type'.lower()),
+                         'image/gif')
+        self.assertEqual(self.RESPONSE.getHeader('Last-Modified'.lower()),
+                         rfc1123_date(mod_time))
 
-    def test_index_html_with_304( self ):
+    def test_index_html_with_304(self):
         path, _ref = self._extractFile()
-        mod_time = os.stat( path )[ 8 ]
+        mod_time = os.stat(path)[8]
 
-        image = self._makeOne( 'test_image', 'test_image.gif' )
+        image = self._makeOne('test_image', 'test_image.gif')
         image = image.__of__(self.app)
 
-        self.REQUEST.environ[ 'IF_MODIFIED_SINCE'
-                            ] = '%s;' % rfc1123_date( mod_time+3600 )
+        self.REQUEST.environ['IF_MODIFIED_SINCE'
+                            ] = '%s;' % rfc1123_date(mod_time + 3600)
 
-        data = image.index_html( self.REQUEST, self.RESPONSE )
+        data = image.index_html(self.REQUEST, self.RESPONSE)
 
-        self.assertEqual( data, '' )
+        self.assertEqual(data, '')
         # test that we don't supply a content-length
-        self.assertEqual( self.RESPONSE.getHeader('Content-Length'.lower()),
-                                                  None )
-        self.assertEqual( self.RESPONSE.getStatus(), 304 )
+        self.assertEqual(self.RESPONSE.getHeader('Content-Length'.lower()),
+                                                  None)
+        self.assertEqual(self.RESPONSE.getStatus(), 304)
 
-    def test_index_html_without_304( self ):
+    def test_index_html_without_304(self):
         path, _ref = self._extractFile()
-        mod_time = os.stat( path )[ 8 ]
+        mod_time = os.stat(path)[8]
 
-        image = self._makeOne( 'test_image', 'test_image.gif' )
+        image = self._makeOne('test_image', 'test_image.gif')
         image = image.__of__(self.app)
 
-        self.REQUEST.environ[ 'IF_MODIFIED_SINCE'
-                            ] = '%s;' % rfc1123_date( mod_time-3600 )
+        self.REQUEST.environ['IF_MODIFIED_SINCE'
+                            ] = '%s;' % rfc1123_date(mod_time - 3600)
 
-        data = image.index_html( self.REQUEST, self.RESPONSE )
+        data = image.index_html(self.REQUEST, self.RESPONSE)
 
-        self.failUnless( data, '' )
-        self.assertEqual( self.RESPONSE.getStatus(), 200 )
+        self.assertTrue(data, '')
+        self.assertEqual(self.RESPONSE.getStatus(), 200)
 
     def test_index_html_with_304_from_cpm(self):
         cpm = DummyCachingManagerWithPolicy()
@@ -151,12 +151,12 @@
         self.assertEqual(len(data), len(ref))
         self.assertEqual(data, ref)
         # ICK!  'HTTPResponse.getHeader' doesn't case-flatten the key!
-        self.assertEqual(self.RESPONSE.getHeader('Content-Length'.lower())
-                        , str(len(ref)))
-        self.assertEqual(self.RESPONSE.getHeader('Content-Type'.lower())
-                        , 'image/gif')
-        self.assertEqual(self.RESPONSE.getHeader('Last-Modified'.lower())
-                        , rfc1123_date(mod_time))
+        self.assertEqual(self.RESPONSE.getHeader('Content-Length'.lower()),
+                         str(len(ref)))
+        self.assertEqual(self.RESPONSE.getHeader('Content-Type'.lower()),
+                         'image/gif')
+        self.assertEqual(self.RESPONSE.getHeader('Last-Modified'.lower()),
+                         rfc1123_date(mod_time))
 
     def test_caching(self):
         cpm = DummyCachingManager()
@@ -166,9 +166,9 @@
         obj = obj.__of__(self.app)
         obj.index_html(self.REQUEST, self.RESPONSE)
         headers = self.RESPONSE.headers
-        self.failUnless(len(headers) >= original_len + 3)
-        self.failUnless('foo' in headers.keys())
-        self.failUnless('bar' in headers.keys())
+        self.assertTrue(len(headers) >= original_len + 3)
+        self.assertTrue('foo' in headers.keys())
+        self.assertTrue('bar' in headers.keys())
         self.assertEqual(headers['test_path'], '/test_image')
 
     def test_index_html_with_304_and_caching(self):
@@ -191,9 +191,9 @@
         self.assertEqual(self.RESPONSE.getStatus(), 304)
 
         headers = self.RESPONSE.headers
-        self.failUnless(len(headers) >= original_len + 3)
-        self.failUnless('foo' in headers.keys())
-        self.failUnless('bar' in headers.keys())
+        self.assertTrue(len(headers) >= original_len + 3)
+        self.assertTrue('foo' in headers.keys())
+        self.assertTrue('bar' in headers.keys())
         self.assertEqual(headers['test_path'], '/test_image')
 
     def test_tag_with_acquired_clashing_attrs(self):
@@ -206,43 +206,45 @@
         self.app.height = Clash()
         self.app.width = Clash()
 
-        image = self._makeOne( 'test_image', 'test_image.gif' )
+        image = self._makeOne('test_image', 'test_image.gif')
         image = image.__of__(self.app)
 
         tag = image.tag()
-        self.failUnless('alt=""' in tag)
+        self.assertTrue('alt=""' in tag)
 
     def test_unnecessary_invalidation_avoidance(self):
         # See https://bugs.launchpad.net/zope-cmf/+bug/325246
         invalidated = []
+
         def fake_invalidate(*args, **kw):
             invalidated.append(True)
-        image = self._makeOne( 'test_image', 'test_image.gif' )
+
+        image = self._makeOne('test_image', 'test_image.gif')
         image.ZCacheable_invalidate = fake_invalidate
 
         # First pass: The images internal file modification representation
         # equals the filesystem modification time.
         del invalidated[:]
         image._readFile(True)
-        self.failIf(invalidated)
+        self.assertFalse(invalidated)
 
         del invalidated[:]
         image._parsed = False
         image._updateFromFS()
-        self.failIf(invalidated)
+        self.assertFalse(invalidated)
 
         # Second pass: Forcing a different internal file modification
         # time onto the image instance. Now the image will be invalidated.
         del invalidated[:]
         image._file_mod_time = 0
         image._readFile(True)
-        self.failUnless(invalidated)
+        self.assertTrue(invalidated)
 
         del invalidated[:]
         image._file_mod_time = 0
         image._parsed = False
         image._updateFromFS()
-        self.failUnless(invalidated)
+        self.assertTrue(invalidated)
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPageTemplate.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPageTemplate.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPageTemplate.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -44,7 +44,7 @@
         path = path_join(self.skin_path_name, filename)
         metadata = FSMetadata(path)
         metadata.read()
-        return FSPageTemplate( id, path, properties=metadata.getProperties() )
+        return FSPageTemplate(id, path, properties=metadata.getProperties())
 
 
 class FSPageTemplateTests(TransactionalTest, FSPTMaker):
@@ -65,25 +65,26 @@
         self.assertEqual(script(), 'nohost')
 
     def test_ContentType(self):
-        script = self._makeOne( 'testXMLPT', 'testXMLPT.pt' )
+        script = self._makeOne('testXMLPT', 'testXMLPT.pt')
         script = script.__of__(self.app)
         script()
         self.assertEqual(script.content_type, 'text/xml; charset=utf-8')
-        self.assertEqual(self.RESPONSE.getHeader('content-type'), 'text/xml; charset=utf-8')
+        self.assertEqual(self.RESPONSE.getHeader('content-type'),
+                         'text/xml; charset=utf-8')
         # purge RESPONSE Content-Type header for new test
         del self.RESPONSE.headers['content-type']
-        script = self._makeOne( 'testPT', 'testPT.pt' )
+        script = self._makeOne('testPT', 'testPT.pt')
         script = script.__of__(self.app)
         script()
         self.assertEqual(script.content_type, 'text/html')
         self.assertEqual(self.RESPONSE.getHeader('content-type'), 'text/html')
 
     def test_ContentTypeOverride(self):
-        script = self._makeOne( 'testPT_utf8', 'testPT_utf8.pt' )
+        script = self._makeOne('testPT_utf8', 'testPT_utf8.pt')
         script = script.__of__(self.app)
         script()
-        self.assertEqual( self.RESPONSE.getHeader('content-type')
-                        , 'text/html; charset=utf-8')
+        self.assertEqual(self.RESPONSE.getHeader('content-type'),
+                         'text/html; charset=utf-8')
 
     def test_ContentTypeFromFSMetadata(self):
         # Test to see if a content_type specified in a .metadata file
@@ -91,9 +92,8 @@
         script = self._makeOne('testPT2', 'testPT2.pt')
         script = script.__of__(self.app)
         script()
-        self.assertEqual( self.RESPONSE.getHeader('content-type')
-                        , 'text/xml'
-                        )
+        self.assertEqual(self.RESPONSE.getHeader('content-type'),
+                         'text/xml')
 
     def test_CharsetFromFSMetadata(self):
         # testPT3 is an UTF-16 encoded file (see its .metadatafile)
@@ -101,7 +101,7 @@
         script = self._makeOne('testPT3', 'testPT3.pt')
         script = script.__of__(self.app)
         data = script.read()
-        self.failUnless(u'123üöäß' in data)
+        self.assertTrue(u'123üöäß' in data)
         self.assertEqual(script.content_type, 'text/html')
 
     def test_CharsetFrom2FSMetadata(self):
@@ -110,18 +110,18 @@
         script = self._makeOne('testPT4', 'testPT4.pt')
         script = script.__of__(self.app)
         data = script.read()
-        self.failUnless(u'123üöäß' in data)
+        self.assertTrue(u'123üöäß' in data)
         self.assertEqual(script.content_type, 'text/html')
 
     def test_CharsetFromContentTypeMetadata(self):
         script = self._makeOne('testPT5', 'testPT5.pt')
         script = script.__of__(self.app)
         data = script.read()
-        self.failUnless(u'123üöäß' in data)
+        self.assertTrue(u'123üöäß' in data)
         self.assertEqual(script.content_type, 'text/html; charset=utf-16')
 
-    def test_BadCall( self ):
-        script = self._makeOne( 'testPTbad', 'testPTbad.pt' )
+    def test_BadCall(self):
+        script = self._makeOne('testPTbad', 'testPTbad.pt')
         script = script.__of__(self.app)
 
         try: # can't use assertRaises, because different types raised.
@@ -139,16 +139,16 @@
         obj = self._makeOne('testPT', 'testPT.pt')
         obj = obj.__of__(self.app)
         obj()
-        self.failUnless(len(self.RESPONSE.headers) >= original_len + 2)
-        self.failUnless('foo' in self.RESPONSE.headers.keys())
-        self.failUnless('bar' in self.RESPONSE.headers.keys())
+        self.assertTrue(len(self.RESPONSE.headers) >= original_len + 2)
+        self.assertTrue('foo' in self.RESPONSE.headers.keys())
+        self.assertTrue('bar' in self.RESPONSE.headers.keys())
 
-    def test_pt_properties( self ):
-        script = self._makeOne( 'testPT', 'testPT.pt' )
-        self.assertEqual( script.pt_source_file(), 'file:%s'
-                               % path_join(self.skin_path_name, 'testPT.pt') )
+    def test_pt_properties(self):
+        script = self._makeOne('testPT', 'testPT.pt')
+        self.assertEqual(script.pt_source_file(), 'file:%s'
+                               % path_join(self.skin_path_name, 'testPT.pt'))
 
-    def test_foreign_line_endings( self ):
+    def test_foreign_line_endings(self):
         # Lead the various line ending files and get their output
         for fformat in ('unix', 'dos', 'mac'):
             script = self._makeOne(fformat,
@@ -170,41 +170,39 @@
         SecurityTest.tearDown(self)
         FSPTMaker.tearDown(self)
 
-    def test_customize( self ):
-        self.fsPT.manage_doCustomize( folder_path='custom' )
+    def test_customize(self):
+        self.fsPT.manage_doCustomize(folder_path='custom')
 
-        self.assertEqual( len( self.custom.objectIds() ), 1 )
-        self.failUnless( 'testPT' in self.custom.objectIds() )
+        self.assertEqual(len(self.custom.objectIds()), 1)
+        self.assertTrue('testPT' in self.custom.objectIds())
 
-    def test_customize_alternate_root( self ):
+    def test_customize_alternate_root(self):
         self.app.other = Folder('other')
 
         self.fsPT.manage_doCustomize(folder_path='other', root=self.app)
 
-        self.failIf( 'testPT' in self.custom.objectIds() )  
-        self.failUnless( 'testPT' in self.app.other.objectIds() )  
+        self.assertFalse('testPT' in self.custom.objectIds())
+        self.assertTrue('testPT' in self.app.other.objectIds())
 
-    def test_customize_fspath_as_dot( self ):
-        self.fsPT.manage_doCustomize( folder_path='.' )
+    def test_customize_fspath_as_dot(self):
+        self.fsPT.manage_doCustomize(folder_path='.')
 
-        self.failIf( 'testPT' in self.custom.objectIds() )  
-        self.failUnless( 'testPT' in self.skins.objectIds() )  
+        self.assertFalse('testPT' in self.custom.objectIds())
+        self.assertTrue('testPT' in self.skins.objectIds())
 
-    def test_customize_manual_clone( self ):
+    def test_customize_manual_clone(self):
         clone = Folder('testPT')
 
-        self.fsPT.manage_doCustomize( folder_path='custom', obj=clone )
+        self.fsPT.manage_doCustomize(folder_path='custom', obj=clone)
 
-        self.failUnless( 'testPT' in self.custom.objectIds() )  
-        self.failUnless( aq_base(self.custom._getOb('testPT')) is clone )  
+        self.assertTrue('testPT' in self.custom.objectIds())
+        self.assertTrue(aq_base(self.custom._getOb('testPT')) is clone)
 
     def test_customize_caching(self):
         # Test to ensure that cache manager associations survive customizing
         cache_id = 'gofast'
-        RAMCacheManager.manage_addRAMCacheManager( self.app
-                                                 , cache_id
-                                                 , REQUEST=None
-                                                 )
+        RAMCacheManager.manage_addRAMCacheManager(self.app, cache_id,
+                                                  REQUEST=None)
         self.fsPT.ZCacheable_setManagerId(cache_id, REQUEST=None)
 
         self.assertEqual(self.fsPT.ZCacheable_getManagerId(), cache_id)
@@ -214,12 +212,11 @@
 
         self.assertEqual(custom_pt.ZCacheable_getManagerId(), cache_id)
 
+    def test_dontExpandOnCreation(self):
+        self.fsPT.manage_doCustomize(folder_path='custom')
 
-    def test_dontExpandOnCreation( self ):
-        self.fsPT.manage_doCustomize( folder_path='custom' )
-
         customized = self.custom.testPT
-        self.failIf( customized.expand )
+        self.assertFalse(customized.expand)
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPropertiesObject.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPropertiesObject.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPropertiesObject.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -43,23 +43,22 @@
         path = join(self.skin_path_name, filename)
         return self._getTargetClass()(id, path)
 
-    def test__readFile( self ):
+    def test__readFile(self):
         from DateTime.DateTime import DateTime
 
         _stool, _custom, _fsdir, fspo = self._makeContext('test_props',
                                                           'test_props.props')
 
-        self.assertEqual( fspo.getProperty( 'title' ), 'Test properties' )
-        self.assertEqual( fspo.getProperty( 'value1' ), 'one' )
-        self.assertEqual( fspo.getProperty( 'value2' ), 'two' )
-        self.assertEqual( fspo.getProperty( 'an_int' ), 42 )
-        self.assertEqual( fspo.getProperty( 'a_float' ), 3.1415926 )
-        self.assertEqual( fspo.getProperty( 'a_boolean' ), False )
-        self.assertEqual( fspo.getProperty( 'a_long' ), 40000000000 )
-        self.assertEqual( fspo.getProperty( 'a_date' )
-                        , DateTime( '01/01/2001' ) )
-        self.assertEqual( fspo.getProperty( 'a_tokens' )
-                        , [ 'peter', 'paul', 'mary' ] )
+        self.assertEqual(fspo.getProperty('title'), 'Test properties')
+        self.assertEqual(fspo.getProperty('value1'), 'one')
+        self.assertEqual(fspo.getProperty('value2'), 'two')
+        self.assertEqual(fspo.getProperty('an_int'), 42)
+        self.assertEqual(fspo.getProperty('a_float'), 3.1415926)
+        self.assertEqual(fspo.getProperty('a_boolean'), False)
+        self.assertEqual(fspo.getProperty('a_long'), 40000000000)
+        self.assertEqual(fspo.getProperty('a_date'), DateTime('01/01/2001'))
+        self.assertEqual(fspo.getProperty('a_tokens'),
+                         ['peter', 'paul', 'mary'])
 
     def test__createZODBClone(self):
         from OFS.Folder import Folder
@@ -68,19 +67,19 @@
                                                           'test_props.props')
 
         target = fspo._createZODBClone()
-        self.failUnless( isinstance( target, Folder ) )
+        self.assertTrue(isinstance(target, Folder))
         for prop_id in fspo.propertyIds():
-            self.assertEqual( target.getProperty( prop_id )
-                            , fspo.getProperty( prop_id ) )
+            self.assertEqual(target.getProperty(prop_id),
+                             fspo.getProperty(prop_id))
 
     def test_manage_doCustomize(self):
         _stool, custom, _fsdir, fspo = self._makeContext('test_props',
                                                          'test_props.props')
 
-        fspo.manage_doCustomize( folder_path='custom' )
+        fspo.manage_doCustomize(folder_path='custom')
 
-        self.assertEqual( len( custom.objectIds() ), 1 )
-        self.failUnless( 'test_props' in custom.objectIds() )  
+        self.assertEqual(len(custom.objectIds()), 1)
+        self.assertTrue('test_props' in custom.objectIds())
 
     def test_manage_doCustomize_alternate_root(self):
         from OFS.Folder import Folder
@@ -91,16 +90,16 @@
 
         fspo.manage_doCustomize(folder_path='other', root=self.app)
 
-        self.failIf('test_props' in custom.objectIds())
-        self.failUnless('test_props' in self.app.other.objectIds())
+        self.assertFalse('test_props' in custom.objectIds())
+        self.assertTrue('test_props' in self.app.other.objectIds())
 
     def test_manage_doCustomize_fspath_as_dot(self):
         stool, custom, _fsdir, fspo = self._makeContext('test_props',
                                                         'test_props.props')
-        fspo.manage_doCustomize( folder_path='.' )
+        fspo.manage_doCustomize(folder_path='.')
 
-        self.failIf( 'test_props' in custom.objectIds() )  
-        self.failUnless( 'test_props' in stool.objectIds() )  
+        self.assertFalse('test_props' in custom.objectIds())
+        self.assertTrue('test_props' in stool.objectIds())
 
     def test_manage_doCustomize_manual_clone(self):
         from OFS.Folder import Folder
@@ -108,13 +107,13 @@
         _stool, custom, _fsdir, fspo = self._makeContext('test_props',
                                                          'test_props.props')
         clone = Folder('test_props')
-        fspo.manage_doCustomize( folder_path='custom', obj=clone )
+        fspo.manage_doCustomize(folder_path='custom', obj=clone)
 
-        self.failUnless( 'test_props' in custom.objectIds() )  
-        self.failUnless( aq_base(custom._getOb('test_props')) is clone )  
+        self.assertTrue('test_props' in custom.objectIds())
+        self.assertTrue(aq_base(custom._getOb('test_props')) is clone)
 
 
 def test_suite():
     return unittest.TestSuite((
-        unittest.makeSuite( FSPOTests ),
+        unittest.makeSuite(FSPOTests),
         ))

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPythonScript.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPythonScript.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_FSPythonScript.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -39,11 +39,11 @@
 
 class FSPSMaker(FSDVTest):
 
-    def _makeOne( self, id, filename ):
+    def _makeOne(self, id, filename):
         path = join(self.skin_path_name, filename)
         metadata = FSMetadata(path)
         metadata.read()
-        return FSPythonScript( id, path, properties=metadata.getProperties() ) 
+        return FSPythonScript(id, path, properties=metadata.getProperties())
 
 
 class FSPythonScriptTests(FSPSMaker):
@@ -87,7 +87,7 @@
                 sleep(0.05)
             self.assertEqual(res, ['test1', 'test1'], res)
 
-    def test_foreign_line_endings( self ):
+    def test_foreign_line_endings(self):
         # Load the various line ending files and get their output
         container = Folder('container_for_execution')
         for fformat in ('unix', 'dos', 'mac'):
@@ -113,14 +113,14 @@
 
         _stool, custom, _fsdir, fsPS = self._makeContext('test6', 'test6.py')
 
-        fsPS.manage_doCustomize( folder_path='custom' )
+        fsPS.manage_doCustomize(folder_path='custom')
 
-        self.assertEqual( len( custom.objectIds() ), 1 )
-        self.failUnless( 'test6' in custom.objectIds() )  
+        self.assertEqual(len(custom.objectIds()), 1)
+        self.assertTrue('test6' in custom.objectIds())
 
         test6 = custom._getOb('test6')
 
-        self.failUnless(isinstance(test6, CustomizedPythonScript))
+        self.assertTrue(isinstance(test6, CustomizedPythonScript))
         self.assertEqual(test6.original_source, fsPS.read())
 
     def test_customize_alternate_root(self):
@@ -129,35 +129,33 @@
 
         fsPS.manage_doCustomize(folder_path='other', root=self.app)
 
-        self.failIf('test6' in custom.objectIds())
-        self.failUnless('test6' in self.app.other.objectIds())
+        self.assertFalse('test6' in custom.objectIds())
+        self.assertTrue('test6' in self.app.other.objectIds())
 
     def test_customize_fspath_as_dot(self):
         stool, custom, _fsdir, fsPS = self._makeContext('test6', 'test6.py')
 
-        fsPS.manage_doCustomize( folder_path='.' )
+        fsPS.manage_doCustomize(folder_path='.')
 
-        self.failIf( 'test6' in custom.objectIds() )  
-        self.failUnless( 'test6' in stool.objectIds() )  
+        self.assertFalse('test6' in custom.objectIds())
+        self.assertTrue('test6' in stool.objectIds())
 
     def test_customize_manual_clone(self):
         _stool, custom, _fsdir, fsPS = self._makeContext('test6', 'test6.py')
         clone = Folder('test6')
 
-        fsPS.manage_doCustomize( folder_path='custom', obj=clone )
+        fsPS.manage_doCustomize(folder_path='custom', obj=clone)
 
-        self.failUnless( 'test6' in custom.objectIds() )  
-        self.failUnless( aq_base(custom._getOb('test6')) is clone )  
+        self.assertTrue('test6' in custom.objectIds())
+        self.assertTrue(aq_base(custom._getOb('test6')) is clone)
 
     def test_customize_caching(self):
         # Test to ensure that cache manager associations survive customizing
         _stool, custom, _fsdir, fsPS = self._makeContext('test6', 'test6.py')
 
         cache_id = 'gofast'
-        RAMCacheManager.manage_addRAMCacheManager( self.app
-                                                 , cache_id
-                                                 , REQUEST=None
-                                                 )
+        RAMCacheManager.manage_addRAMCacheManager(self.app, cache_id,
+                                                  REQUEST=None)
         fsPS.ZCacheable_setManagerId(cache_id, REQUEST=None)
 
         self.assertEqual(fsPS.ZCacheable_getManagerId(), cache_id)
@@ -172,13 +170,13 @@
         _stool, custom, _fsdir, fsPS = self._makeContext('test6', 'test6.py')
 
         fsPS._proxy_roles = ('Manager', 'Anonymous')
-        self.failUnless(fsPS.manage_haveProxy('Anonymous'))
-        self.failUnless(fsPS.manage_haveProxy('Manager'))
+        self.assertTrue(fsPS.manage_haveProxy('Anonymous'))
+        self.assertTrue(fsPS.manage_haveProxy('Manager'))
 
         fsPS.manage_doCustomize(folder_path='custom')
         custom_ps = custom.test6
-        self.failUnless(custom_ps.manage_haveProxy('Anonymous'))
-        self.failUnless(custom_ps.manage_haveProxy('Manager'))
+        self.assertTrue(custom_ps.manage_haveProxy('Anonymous'))
+        self.assertTrue(custom_ps.manage_haveProxy('Manager'))
 
     def test_customization_permissions(self):
         # Test to ensure that permission settings survive customizing
@@ -186,16 +184,13 @@
         perm = 'View management screens'
 
         # First, set a permission to an odd role and verify
-        fsPS.manage_permission( perm
-                              , roles=('Anonymous',)
-                              , acquire=0
-                              )
+        fsPS.manage_permission(perm, roles=('Anonymous',), acquire=0)
         rop = fsPS.rolesOfPermission(perm)
         for rop_info in rop:
             if rop_info['name'] == 'Anonymous':
-                self.failIf(rop_info['selected'] == '')
+                self.assertFalse(rop_info['selected'] == '')
             else:
-                self.failUnless(rop_info['selected'] == '')
+                self.assertTrue(rop_info['selected'] == '')
 
         # Now customize and verify again
         fsPS.manage_doCustomize(folder_path='custom')
@@ -203,9 +198,9 @@
         rop = custom_ps.rolesOfPermission(perm)
         for rop_info in rop:
             if rop_info['name'] == 'Anonymous':
-                self.failIf(rop_info['selected'] == '')
+                self.assertFalse(rop_info['selected'] == '')
             else:
-                self.failUnless(rop_info['selected'] == '')
+                self.assertTrue(rop_info['selected'] == '')
 
 _ORIGINAL_TEXT = """\
 ## Script (Python) "cps"
@@ -244,6 +239,7 @@
 +return 'cps -- replaced'
 """
 
+
 class CustomizedPythonScriptTests(unittest.TestCase):
 
     def _getTargetClass(self):
@@ -282,7 +278,7 @@
 
 class FSPythonScriptWarningsTests(SecurityTest, FSPSMaker, WarningInterceptor):
 
-    def setUp( self ):
+    def setUp(self):
         SecurityTest.setUp(self)
         FSPSMaker.setUp(self)
         self._trap_warning_output()
@@ -296,7 +292,8 @@
         self.app._setObject('warn_me', WarnMe(2))
         self.app._setObject('warn1', self._makeOne('warn1', 'test_warn.py'))
         # This used to raise an error:
-        #   File "/usr/local/python2.3/lib/python2.3/warnings.py", line 63, in warn_explicit
+        #   File "/usr/local/python2.3/lib/python2.3/warnings.py", line 63,
+        #   in warn_explicit
         #     if module[-3:].lower() == ".py":
         # TypeError: unsubscriptable object
         self.app.warn1()

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_FSReSTMethod.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_FSReSTMethod.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_FSReSTMethod.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -43,14 +43,14 @@
         main = ZopePageTemplate('main_template', _TEST_MAIN_TEMPLATE)
         self.app._setOb('main_template', main)
 
-    def _makeOne( self, id, filename ):
+    def _makeOne(self, id, filename):
         from Products.CMFCore.FSMetadata import FSMetadata
         from Products.CMFCore.FSReSTMethod import FSReSTMethod
 
         path = os.path.join(self.skin_path_name, filename)
         metadata = FSMetadata(path)
         metadata.read()
-        return FSReSTMethod( id, path, properties=metadata.getProperties() )
+        return FSReSTMethod(id, path, properties=metadata.getProperties())
 
 _EXPECTED_HTML = """\
 <html>
@@ -111,9 +111,9 @@
         obj = self._makeOne('testReST', 'testReST.rst')
         obj = obj.__of__(self.app)
         obj(self.REQUEST, self.RESPONSE)
-        self.failUnless(len(self.RESPONSE.headers) >= original_len + 2)
-        self.failUnless('foo' in self.RESPONSE.headers.keys())
-        self.failUnless('bar' in self.RESPONSE.headers.keys())
+        self.assertTrue(len(self.RESPONSE.headers) >= original_len + 2)
+        self.assertTrue('foo' in self.RESPONSE.headers.keys())
+        self.assertTrue('bar' in self.RESPONSE.headers.keys())
 
     def test_ownership(self):
         script = self._makeOne('testReST', 'testReST.rst')
@@ -143,12 +143,9 @@
 
 
 ADD_ZPT = 'Add page templates'
-ZPT_META_TYPES = ( { 'name'        : 'Page Template'
-                   , 'action'      : 'manage_addPageTemplate'
-                   , 'permission'  : ADD_ZPT
-                   }
-                 ,
-                 )
+ZPT_META_TYPES = ({'name': 'Page Template',
+                   'action': 'manage_addPageTemplate',
+                   'permission': ADD_ZPT},)
 
 
 class FSReSTMethodCustomizationTests(SecurityTest, FSReSTMaker):
@@ -164,7 +161,7 @@
         FSReSTMaker.tearDown(self)
         SecurityTest.tearDown(self)
 
-    def test_customize( self ):
+    def test_customize(self):
         from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate
         from Products.CMFCore.FSReSTMethod import _CUSTOMIZED_TEMPLATE_ZPT
 
@@ -173,10 +170,10 @@
         self.fsReST.manage_doCustomize(folder_path='custom')
 
         self.assertEqual(len(self.custom.objectIds()), 1)
-        self.failUnless('testReST' in self.custom.objectIds())
+        self.assertTrue('testReST' in self.custom.objectIds())
         target = self.custom._getOb('testReST')
 
-        self.failUnless(isinstance(target, ZopePageTemplate))
+        self.assertTrue(isinstance(target, ZopePageTemplate))
 
         propinfo = target.propdict()['rest']
         self.assertEqual(propinfo['type'], 'text')
@@ -185,42 +182,40 @@
         self.assertEqual(_normalize_whitespace(target.document_src()),
                          _normalize_whitespace(_CUSTOMIZED_TEMPLATE_ZPT))
 
-    def test_customize_alternate_root( self ):
+    def test_customize_alternate_root(self):
         from OFS.Folder import Folder
 
         self.app.other = Folder('other')
 
         self.fsReST.manage_doCustomize(folder_path='other', root=self.app)
 
-        self.failIf('testReST' in self.custom.objectIds())
-        self.failUnless('testReST' in self.app.other.objectIds())
+        self.assertFalse('testReST' in self.custom.objectIds())
+        self.assertTrue('testReST' in self.app.other.objectIds())
 
-    def test_customize_fpath_as_dot( self ):
+    def test_customize_fpath_as_dot(self):
 
         self.fsReST.manage_doCustomize(folder_path='.')
 
-        self.failIf('testReST' in self.custom.objectIds())
-        self.failUnless('testReST' in self.skins.objectIds())
+        self.assertFalse('testReST' in self.custom.objectIds())
+        self.assertTrue('testReST' in self.skins.objectIds())
 
-    def test_customize_manual_clone( self ):
+    def test_customize_manual_clone(self):
         from OFS.Folder import Folder
 
         clone = Folder('testReST')
 
         self.fsReST.manage_doCustomize(folder_path='custom', obj=clone)
 
-        self.failUnless('testReST' in self.custom.objectIds())
-        self.failUnless(aq_base(self.custom._getOb('testReST')) is clone)
+        self.assertTrue('testReST' in self.custom.objectIds())
+        self.assertTrue(aq_base(self.custom._getOb('testReST')) is clone)
 
     def test_customize_caching(self):
         # Test to ensure that cache manager associations survive customizing
         from Products.StandardCacheManagers import RAMCacheManager
         cache_id = 'gofast'
         self.custom.all_meta_types = ZPT_META_TYPES
-        RAMCacheManager.manage_addRAMCacheManager( self.app
-                                                 , cache_id
-                                                 , REQUEST=None
-                                                 )
+        RAMCacheManager.manage_addRAMCacheManager(self.app, cache_id,
+                                                  REQUEST=None)
         self.fsReST.ZCacheable_setManagerId(cache_id, REQUEST=None)
 
         self.assertEqual(self.fsReST.ZCacheable_getManagerId(), cache_id)

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_FSSTXMethod.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_FSSTXMethod.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_FSSTXMethod.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -36,14 +36,14 @@
 
 class FSSTXMaker(FSDVTest):
 
-    def _makeOne( self, id, filename ):
+    def _makeOne(self, id, filename):
         from Products.CMFCore.FSMetadata import FSMetadata
         from Products.CMFCore.FSSTXMethod import FSSTXMethod
 
         path = os.path.join(self.skin_path_name, filename)
         metadata = FSMetadata(path)
         metadata.read()
-        return FSSTXMethod( id, path, properties=metadata.getProperties() )
+        return FSSTXMethod(id, path, properties=metadata.getProperties())
 
 _EXPECTED_HTML = """\
 <html>
@@ -138,9 +138,9 @@
         obj = self._makeOne('testSTX', 'testSTX.stx')
         obj = obj.__of__(self.app)
         obj(self.REQUEST, self.RESPONSE)
-        self.failUnless(len(self.RESPONSE.headers) >= original_len + 2)
-        self.failUnless('foo' in self.RESPONSE.headers.keys())
-        self.failUnless('bar' in self.RESPONSE.headers.keys())
+        self.assertTrue(len(self.RESPONSE.headers) >= original_len + 2)
+        self.assertTrue('foo' in self.RESPONSE.headers.keys())
+        self.assertTrue('bar' in self.RESPONSE.headers.keys())
 
     def test_ownership(self):
         script = self._makeOne('testSTX', 'testSTX.stx')
@@ -170,12 +170,9 @@
 
 
 ADD_ZPT = 'Add page templates'
-ZPT_META_TYPES = ( { 'name'        : 'Page Template'
-                   , 'action'      : 'manage_addPageTemplate'
-                   , 'permission'  : ADD_ZPT
-                   }
-                 ,
-                 )
+ZPT_META_TYPES = ({'name': 'Page Template',
+                   'action': 'manage_addPageTemplate',
+                   'permission': ADD_ZPT},)
 
 
 class FSSTXMethodCustomizationTests(SecurityTest,
@@ -196,7 +193,7 @@
         SecurityTest.tearDown(self)
         _TemplateSwitcher.tearDown(self)
 
-    def test_customize_alternate_root( self ):
+    def test_customize_alternate_root(self):
         from OFS.Folder import Folder
 
         self._setWhichTemplate('DTML')
@@ -204,18 +201,18 @@
 
         self.fsSTX.manage_doCustomize(folder_path='other', root=self.app)
 
-        self.failIf('testSTX' in self.custom.objectIds())
-        self.failUnless('testSTX' in self.app.other.objectIds())
+        self.assertFalse('testSTX' in self.custom.objectIds())
+        self.assertTrue('testSTX' in self.app.other.objectIds())
 
-    def test_customize_fspath_as_dot( self ):
+    def test_customize_fspath_as_dot(self):
         self._setWhichTemplate('DTML')
 
         self.fsSTX.manage_doCustomize(folder_path='.')
 
-        self.failIf('testSTX' in self.custom.objectIds())
-        self.failUnless('testSTX' in self.skins.objectIds())
+        self.assertFalse('testSTX' in self.custom.objectIds())
+        self.assertTrue('testSTX' in self.skins.objectIds())
 
-    def test_customize_manual_clone( self ):
+    def test_customize_manual_clone(self):
         from OFS.Folder import Folder
 
         clone = Folder('testSTX')
@@ -224,10 +221,10 @@
 
         self.fsSTX.manage_doCustomize(folder_path='custom', obj=clone)
 
-        self.failUnless('testSTX' in self.custom.objectIds())
-        self.failUnless(aq_base(self.custom._getOb('testSTX')) is clone)
+        self.assertTrue('testSTX' in self.custom.objectIds())
+        self.assertTrue(aq_base(self.custom._getOb('testSTX')) is clone)
 
-    def test_customize_with_DTML( self ):
+    def test_customize_with_DTML(self):
         from OFS.DTMLDocument import DTMLDocument
         from Products.CMFCore.FSSTXMethod import _CUSTOMIZED_TEMPLATE_DTML
 
@@ -236,10 +233,10 @@
         self.fsSTX.manage_doCustomize(folder_path='custom')
 
         self.assertEqual(len(self.custom.objectIds()), 1)
-        self.failUnless('testSTX' in self.custom.objectIds())
+        self.assertTrue('testSTX' in self.custom.objectIds())
         target = self.custom._getOb('testSTX')
 
-        self.failUnless(isinstance(target, DTMLDocument))
+        self.assertTrue(isinstance(target, DTMLDocument))
 
         propinfo = target.propdict()['stx']
         self.assertEqual(propinfo['type'], 'text')
@@ -247,7 +244,7 @@
 
         self.assertEqual(target.document_src(), _CUSTOMIZED_TEMPLATE_DTML)
 
-    def test_customize_with_ZPT( self ):
+    def test_customize_with_ZPT(self):
         from Products.PageTemplates.ZopePageTemplate import ZopePageTemplate
         from Products.CMFCore.FSSTXMethod import _CUSTOMIZED_TEMPLATE_ZPT
 
@@ -257,10 +254,10 @@
         self.fsSTX.manage_doCustomize(folder_path='custom')
 
         self.assertEqual(len(self.custom.objectIds()), 1)
-        self.failUnless('testSTX' in self.custom.objectIds())
+        self.assertTrue('testSTX' in self.custom.objectIds())
         target = self.custom._getOb('testSTX')
 
-        self.failUnless(isinstance(target, ZopePageTemplate))
+        self.assertTrue(isinstance(target, ZopePageTemplate))
 
         propinfo = target.propdict()['stx']
         self.assertEqual(propinfo['type'], 'text')
@@ -275,10 +272,8 @@
         cache_id = 'gofast'
         self._setWhichTemplate('ZPT')
         self.custom.all_meta_types = ZPT_META_TYPES
-        RAMCacheManager.manage_addRAMCacheManager( self.app
-                                                 , cache_id
-                                                 , REQUEST=None
-                                                 )
+        RAMCacheManager.manage_addRAMCacheManager(self.app, cache_id,
+                                                  REQUEST=None)
         self.fsSTX.ZCacheable_setManagerId(cache_id, REQUEST=None)
 
         self.assertEqual(self.fsSTX.ZCacheable_getManagerId(), cache_id)

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_FSZSQLMethod.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_FSZSQLMethod.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_FSZSQLMethod.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -30,11 +30,11 @@
 
 class FSZSQLMaker(FSDVTest):
 
-    def _makeOne( self, id, filename ):
+    def _makeOne(self, id, filename):
         path = join(self.skin_path_name, filename)
         metadata = FSMetadata(path)
         metadata.read()
-        return FSZSQLMethod( id, path, properties=metadata.getProperties() )
+        return FSZSQLMethod(id, path, properties=metadata.getProperties())
 
 
 class FSZSQLMethodTests(FSDVTest):
@@ -54,7 +54,7 @@
         self.assertEqual(zsql.class_name_, 'MyRecord')
         self.assertEqual(zsql.class_file_, 'CMFCore.TestRecord')
         self.assertEqual(zsql.connection_hook, 'MyHook')
-        self.failIf(zsql.allow_simple_one_argument_traversal is None)
+        self.assertFalse(zsql.allow_simple_one_argument_traversal is None)
 
 
 class FSZSQLMethodCustomizationTests(SecurityTest, FSZSQLMaker):
@@ -74,7 +74,7 @@
         self.fsZSQL.manage_doCustomize(folder_path='custom')
 
         self.assertEqual(len(self.custom.objectIds()), 1)
-        self.failUnless('testsql' in self.custom.objectIds())
+        self.assertTrue('testsql' in self.custom.objectIds())
 
     def test_customize_alternate_root(self):
         from OFS.Folder import Folder
@@ -83,14 +83,14 @@
 
         self.fsZSQL.manage_doCustomize(folder_path='other', root=self.app)
 
-        self.failIf('testsql' in self.custom.objectIds())
-        self.failUnless('testsql' in self.app.other.objectIds())
+        self.assertFalse('testsql' in self.custom.objectIds())
+        self.assertTrue('testsql' in self.app.other.objectIds())
 
     def test_customize_fspath_as_dot(self):
         self.fsZSQL.manage_doCustomize(folder_path='.')
 
-        self.failIf('testsql' in self.custom.objectIds())
-        self.failUnless('testsql' in self.skins.objectIds())
+        self.assertFalse('testsql' in self.custom.objectIds())
+        self.assertTrue('testsql' in self.skins.objectIds())
 
     def test_customize_manual_clone(self):
         from OFS.Folder import Folder
@@ -99,8 +99,8 @@
 
         self.fsZSQL.manage_doCustomize(folder_path='custom', obj=clone)
 
-        self.failUnless('testsql' in self.custom.objectIds())
-        self.failUnless(aq_base(self.custom._getOb('testsql')) is clone)
+        self.assertTrue('testsql' in self.custom.objectIds())
+        self.assertTrue(aq_base(self.custom._getOb('testsql')) is clone)
 
     def test_customize_properties(self):
         # Make sure all properties are coming across
@@ -116,7 +116,7 @@
         self.assertEqual(zsql.class_name_, 'MyRecord')
         self.assertEqual(zsql.class_file_, 'CMFCore.TestRecord')
         self.assertEqual(zsql.connection_hook, 'MyHook')
-        self.failIf(zsql.allow_simple_one_argument_traversal is None)
+        self.assertFalse(zsql.allow_simple_one_argument_traversal is None)
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_MembershipTool.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_MembershipTool.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_MembershipTool.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -52,110 +52,110 @@
 
     def _makeSite(self, parent=None):
         if parent is None:
-            parent = self.root
-        site = DummySite( 'site' ).__of__( parent )
-        site._setObject( 'portal_membership', self._makeOne() )
+            parent = self.app
+        site = DummySite('site').__of__(parent)
+        site._setObject('portal_membership', self._makeOne())
         return site
 
     def test_getCandidateLocalRoles(self):
         site = self._makeSite()
         mtool = site.portal_membership
-        acl_users = site._setObject( 'acl_users', DummyUserFolder() )
+        acl_users = site._setObject('acl_users', DummyUserFolder())
 
         newSecurityManager(None, acl_users.user_foo)
         rval = mtool.getCandidateLocalRoles(mtool)
-        self.assertEqual( rval, ('Dummy',) )
+        self.assertEqual(rval, ('Dummy',))
         newSecurityManager(None, acl_users.all_powerful_Oz)
         rval = mtool.getCandidateLocalRoles(mtool)
-        self.assertEqual( rval, ('Manager', 'Member', 'Owner', 'Reviewer') )
+        self.assertEqual(rval, ('Manager', 'Member', 'Owner', 'Reviewer'))
 
     def test_createMemberArea(self):
         site = self._makeSite()
         mtool = site.portal_membership
-        members = site._setObject( 'Members', PortalFolder('Members') )
-        acl_users = site._setObject( 'acl_users', DummyUserFolder() )
+        members = site._setObject('Members', PortalFolder('Members'))
+        acl_users = site._setObject('acl_users', DummyUserFolder())
         getSiteManager().registerUtility(DummyTool(), IWorkflowTool)
 
         # permission
         mtool.createMemberArea('user_foo')
-        self.failIf( hasattr(members.aq_self, 'user_foo') )
+        self.assertFalse(hasattr(members.aq_self, 'user_foo'))
         newSecurityManager(None, acl_users.user_bar)
         mtool.createMemberArea('user_foo')
-        self.failIf( hasattr(members.aq_self, 'user_foo') )
+        self.assertFalse(hasattr(members.aq_self, 'user_foo'))
         newSecurityManager(None, acl_users.user_foo)
         mtool.setMemberareaCreationFlag()
         mtool.createMemberArea('user_foo')
-        self.failIf( hasattr(members.aq_self, 'user_foo') )
+        self.assertFalse(hasattr(members.aq_self, 'user_foo'))
         newSecurityManager(None, acl_users.all_powerful_Oz)
         mtool.setMemberareaCreationFlag()
         mtool.createMemberArea('user_foo')
-        self.failUnless( hasattr(members.aq_self, 'user_foo') )
+        self.assertTrue(hasattr(members.aq_self, 'user_foo'))
 
         # default content
         f = members.user_foo
         ownership = acl_users.user_foo
-        localroles = ( ( 'user_foo', ('Owner',) ), )
-        self.assertEqual( f.getOwner(), ownership )
-        self.assertEqual( f.get_local_roles(), localroles,
-                          'CMF Collector issue #162 (LocalRoles broken): %s'
-                          % str( f.get_local_roles() ) )
+        localroles = (('user_foo', ('Owner',)),)
+        self.assertEqual(f.getOwner(), ownership)
+        self.assertEqual(f.get_local_roles(), localroles,
+                         'CMF Collector issue #162 (LocalRoles broken): %s'
+                         % str(f.get_local_roles()))
 
     def test_createMemberAreaCMFBTreeFolder(self):
         # Test member area creation if the toplevel "Members" folder is
         # a CMFBTreeFolder (http://www.zope.org/Collectors/CMF/441
         site = self._makeSite()
         mtool = site.portal_membership
-        members = site._setObject( 'Members', CMFBTreeFolder('Members') )
-        acl_users = site._setObject( 'acl_users', DummyUserFolder() )
+        members = site._setObject('Members', CMFBTreeFolder('Members'))
+        acl_users = site._setObject('acl_users', DummyUserFolder())
         getSiteManager().registerUtility(DummyTool(), IWorkflowTool)
 
         # permission
         mtool.createMemberArea('user_foo')
-        self.failIf( hasattr(members.aq_self, 'user_foo') )
+        self.assertFalse(hasattr(members.aq_self, 'user_foo'))
         newSecurityManager(None, acl_users.user_bar)
         mtool.createMemberArea('user_foo')
-        self.failIf( hasattr(members.aq_self, 'user_foo') )
+        self.assertFalse(hasattr(members.aq_self, 'user_foo'))
         newSecurityManager(None, acl_users.user_foo)
         mtool.setMemberareaCreationFlag()
         mtool.createMemberArea('user_foo')
-        self.failIf( hasattr(members.aq_self, 'user_foo') )
+        self.assertFalse(hasattr(members.aq_self, 'user_foo'))
         newSecurityManager(None, acl_users.all_powerful_Oz)
         mtool.setMemberareaCreationFlag()
         mtool.createMemberArea('user_foo')
-        self.failUnless( hasattr(members.aq_self, 'user_foo') )
+        self.assertTrue(hasattr(members.aq_self, 'user_foo'))
 
         # default content
         f = members.user_foo
         ownership = acl_users.user_foo
-        localroles = ( ( 'user_foo', ('Owner',) ), )
-        self.assertEqual( f.getOwner(), ownership )
-        self.assertEqual( f.get_local_roles(), localroles,
-                          'CMF Collector issue #162 (LocalRoles broken): %s'
-                          % str( f.get_local_roles() ) )
+        localroles = (('user_foo', ('Owner',)),)
+        self.assertEqual(f.getOwner(), ownership)
+        self.assertEqual(f.get_local_roles(), localroles,
+                         'CMF Collector issue #162 (LocalRoles broken): %s'
+                         % str(f.get_local_roles()))
 
     def test_createMemberArea_chained(self):
         LOCAL_USER_ID = 'user_foo'
         NONLOCAL_USER_ID = 'user_bar'
 
-        self.root._setObject( 'folder', Folder('folder') )
-        site = self._makeSite( self.root.folder )
+        self.app._setObject('folder', Folder('folder'))
+        site = self._makeSite(self.app.folder)
         mtool = site.portal_membership
-        members = site._setObject( 'Members', PortalFolder('Members') )
+        members = site._setObject('Members', PortalFolder('Members'))
         getSiteManager().registerUtility(DummyTool(), IWorkflowTool)
 
         local_uf = DummyUserFolder()
-        delattr( local_uf, NONLOCAL_USER_ID )
+        delattr(local_uf, NONLOCAL_USER_ID)
         acl_users = site._setObject('acl_users', local_uf)
 
         nonlocal_uf = DummyUserFolder()
-        delattr( nonlocal_uf, LOCAL_USER_ID )
-        self.root.folder._setObject('acl_users', nonlocal_uf)
+        delattr(nonlocal_uf, LOCAL_USER_ID)
+        self.app.folder._setObject('acl_users', nonlocal_uf)
 
         newSecurityManager(None, acl_users.all_powerful_Oz)
-        mtool.createMemberArea( NONLOCAL_USER_ID )
-        self.failUnless( hasattr(members.aq_self, NONLOCAL_USER_ID ) )
-        mtool.createMemberArea( LOCAL_USER_ID )
-        self.failUnless( hasattr(members.aq_self, LOCAL_USER_ID ) )
+        mtool.createMemberArea(NONLOCAL_USER_ID)
+        self.assertTrue(hasattr(members.aq_self, NONLOCAL_USER_ID))
+        mtool.createMemberArea(LOCAL_USER_ID)
+        self.assertTrue(hasattr(members.aq_self, LOCAL_USER_ID))
 
     def test_isMemberAccessAllowed(self):
         site = self._makeSite()
@@ -183,18 +183,17 @@
         sm.registerUtility(mdtool, IMemberDataTool)
         newSecurityManager(None, acl_users.all_powerful_Oz)
 
-        self.assertEqual( acl_users.getUserById('user_foo'),
-                          acl_users.user_foo )
+        self.assertEqual(acl_users.getUserById('user_foo'), acl_users.user_foo)
         mtool.createMemberArea('user_foo')
-        self.failUnless( hasattr(members.aq_self, 'user_foo') )
+        self.assertTrue(hasattr(members.aq_self, 'user_foo'))
         mdtool.registerMemberData('Dummy', 'user_foo')
-        self.failUnless( mdtool._members.has_key('user_foo') )
+        self.assertTrue('user_foo' in mdtool._members)
 
-        rval = mtool.deleteMembers( ('user_foo', 'user_baz') )
-        self.assertEqual( rval, ('user_foo',) )
-        self.failIf( acl_users.getUserById('user_foo', None) )
-        self.failIf( mdtool._members.has_key('user_foo') )
-        self.failIf( hasattr(members.aq_self, 'user_foo') )
+        rval = mtool.deleteMembers(('user_foo', 'user_baz'))
+        self.assertEqual(rval, ('user_foo',))
+        self.assertFalse(acl_users.getUserById('user_foo', None))
+        self.assertFalse('user_foo' in mdtool._members)
+        self.assertFalse(hasattr(members.aq_self, 'user_foo'))
 
         cleanUp()
 
@@ -212,23 +211,20 @@
         sm.registerUtility(mdtool, IMemberDataTool)
         newSecurityManager(None, acl_users.all_powerful_Oz)
 
-        self.assertEqual( acl_users.getUserById('user_foo'),
-                          acl_users.user_foo )
+        self.assertEqual(acl_users.getUserById('user_foo'), acl_users.user_foo)
         mtool.createMemberArea('user_foo')
-        self.failUnless( hasattr(members.aq_self, 'user_foo') )
+        self.assertTrue(hasattr(members.aq_self, 'user_foo'))
         mdtool.registerMemberData('Dummy', 'user_foo')
-        self.failUnless( mdtool._members.has_key('user_foo') )
+        self.assertTrue('user_foo' in mdtool._members)
 
         # Fake an incompatible user folder by deleting the class method
         deletion_method = DummyUserFolder.userFolderDelUsers
         del DummyUserFolder.userFolderDelUsers
-        self.assertRaises( NotImplementedError
-                         , mtool.deleteMembers
-                         , ('user_foo',)
-                         )
-        self.failUnless( acl_users.getUserById('user_foo', None) )
-        self.failUnless( mdtool._members.has_key('user_foo') )
-        self.failUnless( hasattr(members.aq_self, 'user_foo') )
+        self.assertRaises(NotImplementedError, mtool.deleteMembers,
+                          ('user_foo',))
+        self.assertTrue(acl_users.getUserById('user_foo', None))
+        self.assertTrue('user_foo' in mdtool._members)
+        self.assertTrue(hasattr(members.aq_self, 'user_foo'))
 
         # Cleanup
         DummyUserFolder.userFolderDelUsers = deletion_method
@@ -237,47 +233,47 @@
     def test_getMemberById_nonesuch(self):
         INVALID_USER_ID = 'nonesuch'
 
-        self.root._setObject( 'folder', Folder( 'folder' ) )
-        site = self._makeSite( self.root.folder )
+        self.app._setObject('folder', Folder('folder'))
+        site = self._makeSite(self.app.folder)
         tool = site.portal_membership
         site.acl_users = DummyUserFolder()
-        self.assertEqual( None, tool.getMemberById( INVALID_USER_ID ) )
+        self.assertEqual(None, tool.getMemberById(INVALID_USER_ID))
 
     def test_getMemberById_local(self):
         LOCAL_USER_ID = 'user_foo'
 
-        self.root._setObject( 'folder', Folder('folder') )
-        site = self._makeSite( self.root.folder )
-        site._setObject( 'acl_users', DummyUserFolder() )
+        self.app._setObject('folder', Folder('folder'))
+        site = self._makeSite(self.app.folder)
+        site._setObject('acl_users', DummyUserFolder())
         tool = site.portal_membership
-        member = tool.getMemberById( LOCAL_USER_ID)
-        self.assertEqual( member.getId(), LOCAL_USER_ID )
+        member = tool.getMemberById(LOCAL_USER_ID)
+        self.assertEqual(member.getId(), LOCAL_USER_ID)
 
     def test_getMemberById_nonlocal(self):
         NONLOCAL_USER_ID = 'user_bar'
 
-        self.root._setObject( 'folder', Folder( 'folder' ) )
-        site = self._makeSite( self.root.folder )
-        self.root.folder._setObject( 'acl_users', DummyUserFolder() )
+        self.app._setObject('folder', Folder('folder'))
+        site = self._makeSite(self.app.folder)
+        self.app.folder._setObject('acl_users', DummyUserFolder())
         tool = site.portal_membership
-        member = tool.getMemberById( NONLOCAL_USER_ID )
-        self.assertEqual( member.getId(), NONLOCAL_USER_ID )
+        member = tool.getMemberById(NONLOCAL_USER_ID)
+        self.assertEqual(member.getId(), NONLOCAL_USER_ID)
 
     def test_getMemberById_chained(self):
         LOCAL_USER_ID = 'user_foo'
         NONLOCAL_USER_ID = 'user_bar'
 
-        self.root._setObject( 'folder', Folder( 'folder' ) )
-        site = self._makeSite( self.root.folder )
+        self.app._setObject('folder', Folder('folder'))
+        site = self._makeSite(self.app.folder)
         tool = site.portal_membership
 
         local_uf = DummyUserFolder()
-        delattr( local_uf, NONLOCAL_USER_ID )
+        delattr(local_uf, NONLOCAL_USER_ID)
         site._setObject('acl_users', local_uf)
 
         nonlocal_uf = DummyUserFolder()
-        delattr( nonlocal_uf, LOCAL_USER_ID )
-        self.root.folder._setObject('acl_users', nonlocal_uf)
+        delattr(nonlocal_uf, LOCAL_USER_ID)
+        self.app.folder._setObject('acl_users', nonlocal_uf)
 
         local_member = tool.getMemberById(LOCAL_USER_ID)
         self.assertEqual(local_member.getId(), LOCAL_USER_ID)

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_OpaqueItems.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_OpaqueItems.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_OpaqueItems.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -40,7 +40,8 @@
              'permission': 'View'}]
 
 def addDummyContent(container, id, opaqueItem):
-    container._setObject(id, DummyContent(id, opaqueItem=opaqueItem, catalog=1))
+    container._setObject(id, DummyContent(id, opaqueItem=opaqueItem,
+                                          catalog=1))
     return getattr(container, id)
 
 
@@ -189,9 +190,9 @@
         sub = self.sub
         dummy = addDummyContent(folder, 'dummy', Marker)
 
-        self.failIf(dummy.isNotifiedByAfterAdd())
-        self.failIf(dummy.isNotifiedByAfterClone())
-        self.failIf(dummy.isNotifiedByBeforeDelete())
+        self.assertFalse(dummy.isNotifiedByAfterAdd())
+        self.assertFalse(dummy.isNotifiedByAfterClone())
+        self.assertFalse(dummy.isNotifiedByBeforeDelete())
 
         # WAAAA! must get _p_jar set
         old, dummy._p_jar = sub._p_jar, self.app._p_jar
@@ -201,18 +202,18 @@
         finally:
             dummy._p_jar = old
 
-        self.failIf(dummy.isNotifiedByAfterAdd())
-        self.failIf(dummy.isNotifiedByAfterClone())
-        self.failIf(dummy.isNotifiedByBeforeDelete())
+        self.assertFalse(dummy.isNotifiedByAfterAdd())
+        self.assertFalse(dummy.isNotifiedByAfterClone())
+        self.assertFalse(dummy.isNotifiedByBeforeDelete())
 
     def test_callableItemWithHooksOnly(self):
         folder = self.folder
         sub = self.sub
         dummy = addDummyContent(folder, 'dummy', Hooks)
 
-        self.failIf(dummy.isNotifiedByAfterAdd())
-        self.failIf(dummy.isNotifiedByAfterClone())
-        self.failIf(dummy.isNotifiedByBeforeDelete())
+        self.assertFalse(dummy.isNotifiedByAfterAdd())
+        self.assertFalse(dummy.isNotifiedByAfterClone())
+        self.assertFalse(dummy.isNotifiedByBeforeDelete())
 
         # WAAAA! must get _p_jar set
         old, dummy._p_jar = sub._p_jar, self.app._p_jar
@@ -222,9 +223,9 @@
         finally:
             dummy._p_jar = old
 
-        self.failIf(dummy.isNotifiedByAfterAdd())
-        self.failIf(dummy.isNotifiedByAfterClone())
-        self.failIf(dummy.isNotifiedByBeforeDelete())
+        self.assertFalse(dummy.isNotifiedByAfterAdd())
+        self.assertFalse(dummy.isNotifiedByAfterClone())
+        self.assertFalse(dummy.isNotifiedByBeforeDelete())
 
     def test_callableItemWithMarkerAndHooks(self):
         folder = self.folder
@@ -232,8 +233,8 @@
         dummy = addDummyContent(folder, 'dummy', MarkerAndHooks)
 
         self.assertEqual(dummy.isNotifiedByAfterAdd(), 1)
-        self.failIf(dummy.isNotifiedByAfterClone())
-        self.failIf(dummy.isNotifiedByBeforeDelete())
+        self.assertFalse(dummy.isNotifiedByAfterClone())
+        self.assertFalse(dummy.isNotifiedByBeforeDelete())
 
         # WAAAA! must get _p_jar set
         old, dummy._p_jar = sub._p_jar, self.app._p_jar
@@ -245,7 +246,7 @@
 
         self.assertEqual(dummy.isNotifiedByAfterAdd(), 2)
         self.assertEqual(dummy.isNotifiedByAfterClone(), 1)
-        self.failIf(dummy.isNotifiedByBeforeDelete())
+        self.assertFalse(dummy.isNotifiedByBeforeDelete())
 
     def test_talkbackItem(self):
         folder = self.folder
@@ -254,8 +255,8 @@
         dummy = addDummyContent(folder, 'dummy', 'talkback')
 
         self.assertEqual(dummy.isNotifiedByAfterAdd(), 1)
-        self.failIf(dummy.isNotifiedByAfterClone())
-        self.failIf(dummy.isNotifiedByBeforeDelete())
+        self.assertFalse(dummy.isNotifiedByAfterClone())
+        self.assertFalse(dummy.isNotifiedByBeforeDelete())
 
         # WAAAA! must get _p_jar set
         old, dummy._p_jar = sub._p_jar, self.app._p_jar
@@ -267,7 +268,7 @@
 
         self.assertEqual(dummy.isNotifiedByAfterAdd(), 2)
         self.assertEqual(dummy.isNotifiedByAfterClone(), 1)
-        self.failIf(dummy.isNotifiedByBeforeDelete())
+        self.assertFalse(dummy.isNotifiedByBeforeDelete())
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_PortalFolder.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_PortalFolder.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_PortalFolder.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -50,6 +50,7 @@
     return [{'name': 'Dummy', 'action': 'manage_addFolder',
              'permission': 'View'}]
 
+
 class DummyCatalogTool:
     implements(ICatalogTool)
 
@@ -115,16 +116,16 @@
 
     def test_invokeFactory(self):
         f = self.f
-        self.failIf( 'foo' in f.objectIds() )
+        self.assertFalse('foo' in f.objectIds())
 
         f.manage_addProduct = {'FooProduct': DummyFactoryDispatcher(f)}
-        f.invokeFactory( type_name='Dummy Content', id='foo' )
+        f.invokeFactory(type_name='Dummy Content', id='foo')
 
-        self.failUnless( 'foo' in f.objectIds() )
+        self.assertTrue('foo' in f.objectIds())
         foo = f.foo
-        self.assertEqual( foo.getId(), 'foo' )
-        self.assertEqual( foo.getPortalTypeName(), 'Dummy Content' )
-        self.assertEqual( foo.Type(), 'Dummy Content Title' )
+        self.assertEqual(foo.getId(), 'foo')
+        self.assertEqual(foo.getPortalTypeName(), 'Dummy Content')
+        self.assertEqual(foo.Type(), 'Dummy Content Title')
 
     def test_invokeFactory_disallowed_type(self):
         f = self.f
@@ -135,7 +136,7 @@
 
         ftype.allowed_content_types = (self._PORTAL_TYPE,)
         f.invokeFactory(self._PORTAL_TYPE, id='sub')
-        self.failUnless('sub' in f.objectIds())
+        self.assertTrue('sub' in f.objectIds())
         self.assertRaises(ValueError, f.invokeFactory, 'Dummy Content', 'foo')
 
 
@@ -177,38 +178,38 @@
         getSiteManager().registerUtility(ttool, ITypesTool)
 
         f = self._makeOne('foo')
-        self.assertEqual( f.objectValues(), [] )
-        self.assertEqual( f.contentIds(), [] )
-        self.assertEqual( f.contentItems(), [] )
-        self.assertEqual( f.contentValues(), [] )
-        self.assertEqual( f.listFolderContents(), [] )
-        self.assertEqual( f.listDAVObjects(), [] )
+        self.assertEqual(f.objectValues(), [])
+        self.assertEqual(f.contentIds(), [])
+        self.assertEqual(f.contentItems(), [])
+        self.assertEqual(f.contentValues(), [])
+        self.assertEqual(f.listFolderContents(), [])
+        self.assertEqual(f.listDAVObjects(), [])
 
-        f._setObject('sub1', DummyContent('sub1') )
-        self.assertEqual( f.objectValues(), [f.sub1] )
-        self.assertEqual( f.contentIds(), [] )
-        self.assertEqual( f.contentItems(), [] )
-        self.assertEqual( f.contentValues(), [] )
-        self.assertEqual( f.listFolderContents(), [] )
-        self.assertEqual( f.listDAVObjects(), [f.sub1] )
+        f._setObject('sub1', DummyContent('sub1'))
+        self.assertEqual(f.objectValues(), [f.sub1])
+        self.assertEqual(f.contentIds(), [])
+        self.assertEqual(f.contentItems(), [])
+        self.assertEqual(f.contentValues(), [])
+        self.assertEqual(f.listFolderContents(), [])
+        self.assertEqual(f.listDAVObjects(), [f.sub1])
 
         fti = FTIDATA_DUMMY[0].copy()
-        ttool._setObject( 'Dummy Content', FTI(**fti) )
-        self.assertEqual( f.objectValues(), [f.sub1] )
-        self.assertEqual( f.contentIds(), ['sub1'] )
-        self.assertEqual( f.contentItems(), [ ('sub1', f.sub1) ] )
-        self.assertEqual( f.contentValues(), [f.sub1] )
-        self.assertEqual( f.listFolderContents(), [f.sub1] )
-        self.assertEqual( f.listDAVObjects(), [f.sub1] )
+        ttool._setObject('Dummy Content', FTI(**fti))
+        self.assertEqual(f.objectValues(), [f.sub1])
+        self.assertEqual(f.contentIds(), ['sub1'])
+        self.assertEqual(f.contentItems(), [('sub1', f.sub1)])
+        self.assertEqual(f.contentValues(), [f.sub1])
+        self.assertEqual(f.listFolderContents(), [f.sub1])
+        self.assertEqual(f.listDAVObjects(), [f.sub1])
 
-        f._setObject('hidden_sub2', DummyContent('hidden_sub2') )
-        self.assertEqual( f.objectValues(), [f.sub1, f.hidden_sub2] )
-        self.assertEqual( f.contentIds(), ['sub1', 'hidden_sub2'] )
-        self.assertEqual( f.contentItems(), [ ('sub1', f.sub1),
-                                            ('hidden_sub2', f.hidden_sub2) ] )
-        self.assertEqual( f.contentValues(), [f.sub1, f.hidden_sub2] )
-        self.assertEqual( f.listFolderContents(), [f.sub1] )
-        self.assertEqual( f.listDAVObjects(), [f.sub1, f.hidden_sub2] )
+        f._setObject('hidden_sub2', DummyContent('hidden_sub2'))
+        self.assertEqual(f.objectValues(), [f.sub1, f.hidden_sub2])
+        self.assertEqual(f.contentIds(), ['sub1', 'hidden_sub2'])
+        self.assertEqual(f.contentItems(), [('sub1', f.sub1),
+                                            ('hidden_sub2', f.hidden_sub2)])
+        self.assertEqual(f.contentValues(), [f.sub1, f.hidden_sub2])
+        self.assertEqual(f.listFolderContents(), [f.sub1])
+        self.assertEqual(f.listDAVObjects(), [f.sub1, f.hidden_sub2])
 
     def test_deletePropagation(self):
         acl_users = self.site._setObject('acl_users', DummyUserFolder())
@@ -216,23 +217,23 @@
         test = self._makeOne('test')
         foo = DummyContent('foo')
         foo.reset()
-        self.failIf( foo.after_add_called )
-        self.failIf( foo.before_delete_called )
+        self.assertFalse(foo.after_add_called)
+        self.assertFalse(foo.before_delete_called)
 
         test._setObject('foo', foo)
-        self.failUnless( foo.after_add_called )
-        self.failIf( foo.before_delete_called )
+        self.assertTrue(foo.after_add_called)
+        self.assertFalse(foo.before_delete_called)
 
         foo.reset()
         test._delObject('foo')
-        self.failIf( foo.after_add_called )
-        self.failUnless( foo.before_delete_called )
+        self.assertFalse(foo.after_add_called)
+        self.assertTrue(foo.before_delete_called)
 
         foo.reset()
         test._setObject('foo', foo)
         test._delOb('foo')    # doesn't propagate
-        self.failUnless( foo.after_add_called )
-        self.failIf( foo.before_delete_called )
+        self.assertTrue(foo.after_add_called)
+        self.assertFalse(foo.before_delete_called)
 
     def test_manageDelObjects(self):
         acl_users = self.site._setObject('acl_users', DummyUserFolder())
@@ -242,9 +243,9 @@
 
         test._setObject('foo', foo)
         foo.reset()
-        test.manage_delObjects( ids=['foo'] )
-        self.failIf( foo.after_add_called )
-        self.failUnless( foo.before_delete_called )
+        test.manage_delObjects(ids=['foo'])
+        self.assertFalse(foo.after_add_called)
+        self.assertTrue(foo.before_delete_called)
 
     def test_catalogUnindexAndIndex(self):
         #
@@ -260,16 +261,16 @@
         sm.registerUtility(ctool, ICatalogTool)
         sm.registerUtility(TypesTool(), ITypesTool)
 
-        test._setObject('foo', DummyContent('foo' , catalog=1))
+        test._setObject('foo', DummyContent('foo', catalog=1))
         foo = test.foo
-        self.failUnless(foo.after_add_called)
-        self.failIf(foo.before_delete_called)
+        self.assertTrue(foo.after_add_called)
+        self.assertFalse(foo.before_delete_called)
         self.assertEqual(len(ctool), 1)
 
         foo.reset()
         test._delObject('foo')
-        self.failIf(foo.after_add_called)
-        self.failUnless(foo.before_delete_called)
+        self.assertFalse(foo.after_add_called)
+        self.assertTrue(foo.before_delete_called)
         self.assertEqual(len(ctool), 0)
 
     def test_portalfolder_cataloging(self):
@@ -302,21 +303,21 @@
         getSiteManager().registerUtility(ctool, ICatalogTool)
         self.assertEqual(len(ctool), 0)
 
-        test._setObject( 'sub', PortalFolder( 'sub', '' ) )
+        test._setObject('sub', PortalFolder('sub', ''))
         sub = test.sub
 
-        sub._setObject( 'foo', DummyContent( 'foo', catalog=1 ) )
+        sub._setObject('foo', DummyContent('foo', catalog=1))
         foo = sub.foo
 
-        self.failUnless( foo.after_add_called )
-        self.failIf( foo.before_delete_called )
-        self.assertEqual( len(ctool), 1 )
+        self.assertTrue(foo.after_add_called)
+        self.assertFalse(foo.before_delete_called)
+        self.assertEqual(len(ctool), 1)
 
         foo.reset()
         test._delObject('sub')
-        self.failIf( foo.after_add_called )
-        self.failUnless( foo.before_delete_called )
-        self.assertEqual( len(ctool), 0 )
+        self.assertFalse(foo.after_add_called)
+        self.assertTrue(foo.before_delete_called)
+        self.assertEqual(len(ctool), 0)
 
     def test_manageAddFolder(self):
         #
@@ -330,54 +331,50 @@
         test = self._makeOne('test')
 
         ttool = TypesTool()
-        ttool._setObject( 'Folder'
-                        , FTI( id='Folder'
-                             , title='Folder or Directory'
-                             , meta_type=PortalFolder.meta_type
-                             , factory='cmf.folder'
-                             , filter_content_types=0
-                             )
-                        )
-        ttool._setObject( 'Grabbed'
-                        , FTI( 'Grabbed'
-                             , title='Grabbed Content'
-                             , meta_type=PortalFolder.meta_type
-                             , factory='cmf.folder'
-                             )
-                        )
+        ttool._setObject('Folder',
+                         FTI(id='Folder',
+                             title='Folder or Directory',
+                             meta_type=PortalFolder.meta_type,
+                             factory='cmf.folder',
+                             filter_content_types=0))
+        ttool._setObject('Grabbed',
+                         FTI('Grabbed',
+                             title='Grabbed Content',
+                             meta_type=PortalFolder.meta_type,
+                             factory='cmf.folder'))
         sm = getSiteManager()
         sm.registerUtility(ttool, ITypesTool)
         sm.registerUtility(PortalFolderFactory, IFactory, 'cmf.folder')
 
         # First, test default behavior
         test.manage_addFolder(id='simple', title='Simple')
-        self.assertEqual( test.simple.getPortalTypeName(), 'Folder' )
-        self.assertEqual( test.simple.Type(), 'Folder or Directory' )
-        self.assertEqual( test.simple.getId(), 'simple' )
-        self.assertEqual( test.simple.Title(), 'Simple' )
+        self.assertEqual(test.simple.getPortalTypeName(), 'Folder')
+        self.assertEqual(test.simple.Type(), 'Folder or Directory')
+        self.assertEqual(test.simple.getId(), 'simple')
+        self.assertEqual(test.simple.Title(), 'Simple')
 
         # Now, test overridden behavior
-        ttool.Folder.setMethodAliases( {'mkdir': 'grabbed'} )
+        ttool.Folder.setMethodAliases({'mkdir': 'grabbed'})
 
         class Grabbed:
 
             _grabbed_with = None
 
-            def __init__( self, context ):
+            def __init__(self, context):
                 self._context = context
 
-            def __call__( self, id ):
+            def __call__(self, id):
                 self._grabbed_with = id
-                self._context._setOb( id, PortalFolder( id ) )
-                self._context._getOb( id )._setPortalTypeName( 'Grabbed' )
+                self._context._setOb(id, PortalFolder(id))
+                self._context._getOb(id)._setPortalTypeName('Grabbed')
 
         self.app.grabbed = Grabbed(test)
 
         test.manage_addFolder(id='indirect', title='Indirect')
-        self.assertEqual( test.indirect.getPortalTypeName(), 'Grabbed' )
-        self.assertEqual( test.indirect.Type(), 'Grabbed Content' )
-        self.assertEqual( test.indirect.getId(), 'indirect' )
-        self.assertEqual( test.indirect.Title(), 'Indirect' )
+        self.assertEqual(test.indirect.getPortalTypeName(), 'Grabbed')
+        self.assertEqual(test.indirect.Type(), 'Grabbed Content')
+        self.assertEqual(test.indirect.getId(), 'indirect')
+        self.assertEqual(test.indirect.Title(), 'Indirect')
 
     def test_contentPasteAllowedTypes(self):
         #
@@ -386,10 +383,10 @@
         ttool = TypesTool()
         getSiteManager().registerUtility(ttool, ITypesTool)
         fti = FTIDATA_DUMMY[0].copy()
-        ttool._setObject( 'Dummy Content', FTI(**fti) )
-        ttool._setObject( 'Folder', FTI(**fti) )
+        ttool._setObject('Dummy Content', FTI(**fti))
+        ttool._setObject('Folder', FTI(**fti))
         sub1 = self._makeOne('sub1')
-        sub1._setObject( 'dummy', DummyContent( 'dummy' ) )
+        sub1._setObject('dummy', DummyContent('dummy'))
         sub2 = self._makeOne('sub2')
         sub2.all_meta_types = extra_meta_types()
 
@@ -397,15 +394,15 @@
         ttool.Folder.manage_changeProperties(filter_content_types=False)
 
         # Copy/paste should work fine
-        cookie = sub1.manage_copyObjects( ids = ['dummy'] )
-        sub2.manage_pasteObjects( cookie )
+        cookie = sub1.manage_copyObjects(ids=['dummy'])
+        sub2.manage_pasteObjects(cookie)
 
         # Disallow adding of Dummy Content
         ttool.Folder.manage_changeProperties(filter_content_types=True)
 
         # Now copy/paste should raise a ValueError
-        cookie = sub1.manage_copyObjects( ids = ( 'dummy', ) )
-        self.assertRaises( ValueError, sub2.manage_pasteObjects, cookie )
+        cookie = sub1.manage_copyObjects(ids=('dummy',))
+        self.assertRaises(ValueError, sub2.manage_pasteObjects, cookie)
 
     def test_contentPasteFollowsWorkflowGuards(self):
         #
@@ -509,7 +506,7 @@
         acl_users = self.site._setObject('acl_users', DummyUserFolder())
         newSecurityManager(None, acl_users.user_foo)
 
-        self.assert_(sub.checkIdAvailable('.foo'))
+        self.assertTrue(sub.checkIdAvailable('.foo'))
 
     def test__checkId_Five(self):
         test = self._makeOne('test')
@@ -524,7 +521,7 @@
         newSecurityManager(None, acl_users.all_powerful_Oz)
         test = self._makeOne('test')
         test._setObject('foo', DummyContent('foo'))
-        self.failIf(test.checkIdAvailable('foo'))
+        self.assertFalse(test.checkIdAvailable('foo'))
 
 
 class PortalFolderMoveTests(SecurityTest):
@@ -539,7 +536,7 @@
     def _makeOne(self, id, *args, **kw):
         from Products.CMFCore.PortalFolder import PortalFolder
 
-        return self.site._setObject( id, PortalFolder(id, *args, **kw) )
+        return self.site._setObject(id, PortalFolder(id, *args, **kw))
 
     def test_folderMove(self):
         #
@@ -553,44 +550,41 @@
         sm = getSiteManager()
         sm.registerUtility(TypesTool(), ITypesTool)
         sm.registerUtility(ctool, ICatalogTool)
-        self.assertEqual( len(ctool), 0 )
+        self.assertEqual(len(ctool), 0)
 
         folder = self._makeOne('folder')
-        folder._setObject( 'sub', PortalFolder( 'sub', '' ) )
-        folder.sub._setObject( 'foo', DummyContent( 'foo', catalog=1 ) )
-        self.assertEqual( len(ctool), 1 )
-        self.failUnless( has_id(ctool, 'foo') )
-        self.failUnless( has_path(ctool,
-                                  '/bar/site/folder/sub/foo') )
+        folder._setObject('sub', PortalFolder('sub', ''))
+        folder.sub._setObject('foo', DummyContent('foo', catalog=1))
+        self.assertEqual(len(ctool), 1)
+        self.assertTrue(has_id(ctool, 'foo'))
+        self.assertTrue(has_path(ctool, '/bar/site/folder/sub/foo'))
 
         transaction.savepoint(optimistic=True)
         folder.manage_renameObject(id='sub', new_id='new_sub')
-        self.assertEqual( len(ctool), 1 )
-        self.failUnless( has_id(ctool, 'foo') )
-        self.failUnless( has_path(ctool,
-                                  '/bar/site/folder/new_sub/foo') )
+        self.assertEqual(len(ctool), 1)
+        self.assertTrue(has_id(ctool, 'foo'))
+        self.assertTrue(has_path(ctool, '/bar/site/folder/new_sub/foo'))
 
-        folder._setObject( 'bar', DummyContent( 'bar', catalog=1 ) )
-        self.assertEqual( len(ctool), 2 )
-        self.failUnless( has_id(ctool, 'bar') )
-        self.failUnless( has_path(ctool, '/bar/site/folder/bar') )
+        folder._setObject('bar', DummyContent('bar', catalog=1))
+        self.assertEqual(len(ctool), 2)
+        self.assertTrue(has_id(ctool, 'bar'))
+        self.assertTrue(has_path(ctool, '/bar/site/folder/bar'))
 
-        folder._setObject( 'sub2', PortalFolder( 'sub2', '' ) )
+        folder._setObject('sub2', PortalFolder('sub2', ''))
         sub2 = folder.sub2
         # Waaa! force sub2 to allow paste of Dummy object.
         sub2.all_meta_types = []
-        sub2.all_meta_types.extend( sub2.all_meta_types )
-        sub2.all_meta_types.extend( extra_meta_types() )
+        sub2.all_meta_types.extend(sub2.all_meta_types)
+        sub2.all_meta_types.extend(extra_meta_types())
 
         transaction.savepoint(optimistic=True)
         cookie = folder.manage_cutObjects(ids=['bar'])
         sub2.manage_pasteObjects(cookie)
 
-        self.failUnless( has_id( ctool, 'foo' ) )
-        self.failUnless( has_id( ctool, 'bar' ) )
-        self.assertEqual( len(ctool), 2 )
-        self.failUnless( has_path(ctool,
-                                  '/bar/site/folder/sub2/bar') )
+        self.assertTrue(has_id(ctool, 'foo'))
+        self.assertTrue(has_id(ctool, 'bar'))
+        self.assertEqual(len(ctool), 2)
+        self.assertTrue(has_path(ctool, '/bar/site/folder/sub2/bar'))
 
     def test_contentPaste(self):
         #
@@ -601,342 +595,322 @@
         ctool = DummyCatalogTool()
         ttool = TypesTool()
         fti = FTIDATA_DUMMY[0].copy()
-        ttool._setObject( 'Dummy Content', FTI(**fti) )
+        ttool._setObject('Dummy Content', FTI(**fti))
         sub1 = self._makeOne('sub1')
         sub2 = self._makeOne('sub2')
         sub3 = self._makeOne('sub3')
-        self.assertEqual( len(ctool), 0 )
+        self.assertEqual(len(ctool), 0)
         sm = getSiteManager()
         sm.registerUtility(ctool, ICatalogTool)
         sm.registerUtility(ttool, ITypesTool)
 
-        sub1._setObject( 'dummy', DummyContent( 'dummy', catalog=1 ) )
-        self.failUnless( 'dummy' in sub1.objectIds() )
-        self.failUnless( 'dummy' in sub1.contentIds() )
-        self.failIf( 'dummy' in sub2.objectIds() )
-        self.failIf( 'dummy' in sub2.contentIds() )
-        self.failIf( 'dummy' in sub3.objectIds() )
-        self.failIf( 'dummy' in sub3.contentIds() )
-        self.failUnless( has_path(ctool, '/bar/site/sub1/dummy') )
-        self.failIf( has_path(ctool, '/bar/site/sub2/dummy') )
-        self.failIf( has_path(ctool, '/bar/site/sub3/dummy') )
+        sub1._setObject('dummy', DummyContent('dummy', catalog=1))
+        self.assertTrue('dummy' in sub1.objectIds())
+        self.assertTrue('dummy' in sub1.contentIds())
+        self.assertFalse('dummy' in sub2.objectIds())
+        self.assertFalse('dummy' in sub2.contentIds())
+        self.assertFalse('dummy' in sub3.objectIds())
+        self.assertFalse('dummy' in sub3.contentIds())
+        self.assertTrue(has_path(ctool, '/bar/site/sub1/dummy'))
+        self.assertFalse(has_path(ctool, '/bar/site/sub2/dummy'))
+        self.assertFalse(has_path(ctool, '/bar/site/sub3/dummy'))
 
-        cookie = sub1.manage_copyObjects( ids = ( 'dummy', ) )
+        cookie = sub1.manage_copyObjects(ids=('dummy',))
         # Waaa! force sub2 to allow paste of Dummy object.
         sub2.all_meta_types = []
-        sub2.all_meta_types.extend( sub2.all_meta_types )
-        sub2.all_meta_types.extend( extra_meta_types() )
-        sub2.manage_pasteObjects( cookie )
-        self.failUnless( 'dummy' in sub1.objectIds() )
-        self.failUnless( 'dummy' in sub1.contentIds() )
-        self.failUnless( 'dummy' in sub2.objectIds() )
-        self.failUnless( 'dummy' in sub2.contentIds() )
-        self.failIf( 'dummy' in sub3.objectIds() )
-        self.failIf( 'dummy' in sub3.contentIds() )
-        self.failUnless( has_path(ctool, '/bar/site/sub1/dummy') )
-        self.failUnless( has_path(ctool, '/bar/site/sub2/dummy') )
-        self.failIf( has_path(ctool, '/bar/site/sub3/dummy') )
+        sub2.all_meta_types.extend(sub2.all_meta_types)
+        sub2.all_meta_types.extend(extra_meta_types())
+        sub2.manage_pasteObjects(cookie)
+        self.assertTrue('dummy' in sub1.objectIds())
+        self.assertTrue('dummy' in sub1.contentIds())
+        self.assertTrue('dummy' in sub2.objectIds())
+        self.assertTrue('dummy' in sub2.contentIds())
+        self.assertFalse('dummy' in sub3.objectIds())
+        self.assertFalse('dummy' in sub3.contentIds())
+        self.assertTrue(has_path(ctool, '/bar/site/sub1/dummy'))
+        self.assertTrue(has_path(ctool, '/bar/site/sub2/dummy'))
+        self.assertFalse(has_path(ctool, '/bar/site/sub3/dummy'))
 
         transaction.savepoint(optimistic=True)
-        cookie = sub1.manage_cutObjects( ids = ('dummy',) )
+        cookie = sub1.manage_cutObjects(ids=('dummy',))
         # Waaa! force sub2 to allow paste of Dummy object.
         sub3.all_meta_types = []
         sub3.all_meta_types.extend(sub3.all_meta_types)
-        sub3.all_meta_types.extend( extra_meta_types() )
+        sub3.all_meta_types.extend(extra_meta_types())
         sub3.manage_pasteObjects(cookie)
-        self.failIf( 'dummy' in sub1.objectIds() )
-        self.failIf( 'dummy' in sub1.contentIds() )
-        self.failUnless( 'dummy' in sub2.objectIds() )
-        self.failUnless( 'dummy' in sub2.contentIds() )
-        self.failUnless( 'dummy' in sub3.objectIds() )
-        self.failUnless( 'dummy' in sub3.contentIds() )
-        self.failIf( has_path(ctool, '/bar/site/sub1/dummy') )
-        self.failUnless( has_path(ctool, '/bar/site/sub2/dummy') )
-        self.failUnless( has_path(ctool, '/bar/site/sub3/dummy') )
+        self.assertFalse('dummy' in sub1.objectIds())
+        self.assertFalse('dummy' in sub1.contentIds())
+        self.assertTrue('dummy' in sub2.objectIds())
+        self.assertTrue('dummy' in sub2.contentIds())
+        self.assertTrue('dummy' in sub3.objectIds())
+        self.assertTrue('dummy' in sub3.contentIds())
+        self.assertFalse(has_path(ctool, '/bar/site/sub1/dummy'))
+        self.assertTrue(has_path(ctool, '/bar/site/sub2/dummy'))
+        self.assertTrue(has_path(ctool, '/bar/site/sub3/dummy'))
 
 
 class ContentFilterTests(unittest.TestCase):
 
-    def setUp( self ):
-        self.dummy=DummyContent('Dummy')
+    def setUp(self):
+        self.dummy = DummyContent('Dummy')
 
-    def test_empty( self ):
-
+    def test_empty(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
         cfilter = ContentFilter()
         dummy = self.dummy
-        assert cfilter( dummy )
-        desc = str( cfilter )
-        lines = filter( None, desc.split('; ') )
-        assert not lines
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
+        lines = filter(None, desc.split('; '))
+        self.assertFalse(lines)
 
-    def test_Type( self ):
-
+    def test_Type(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
-        cfilter = ContentFilter( Type='foo' )
+        cfilter = ContentFilter(Type='foo')
         dummy = self.dummy
-        assert not cfilter( dummy )
-        cfilter = ContentFilter( Type='Dummy Content Title' )
-        assert cfilter( dummy )
-        desc = str( cfilter )
+        self.assertFalse(cfilter(dummy))
+        cfilter = ContentFilter(Type='Dummy Content Title')
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        assert len( lines ) == 1
-        assert lines[0] == 'Type: Dummy Content Title'
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0], 'Type: Dummy Content Title')
 
-        cfilter = ContentFilter( Type=( 'foo', 'bar' ) )
+        cfilter = ContentFilter(Type=('foo', 'bar'))
         dummy = self.dummy
-        assert not cfilter( dummy )
-        cfilter = ContentFilter( Type=( 'Dummy Content Title',
-                                        'something else' ) )
-        assert cfilter( dummy )
-        desc = str( cfilter )
+        self.assertFalse(cfilter(dummy))
+        cfilter = ContentFilter(Type=('Dummy Content Title', 'something else'))
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        assert len( lines ) == 1
-        assert lines[0] == 'Type: Dummy Content Title, something else'
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0], 'Type: Dummy Content Title, something else')
 
-    def test_portal_type( self ):
-
+    def test_portal_type(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
-        cfilter = ContentFilter( portal_type='some_pt' )
+        cfilter = ContentFilter(portal_type='some_pt')
         dummy = self.dummy
-        assert not cfilter( dummy )
+        self.assertFalse(cfilter(dummy))
         dummy.portal_type = 'asdf'
-        assert not cfilter( dummy )
+        self.assertFalse(cfilter(dummy))
         dummy.portal_type = 'some_ptyyy'
-        assert not cfilter( dummy )
+        self.assertFalse(cfilter(dummy))
         dummy.portal_type = 'xxxsome_ptyyy'
-        assert not cfilter( dummy )
+        self.assertFalse(cfilter(dummy))
         dummy.portal_type = 'some_pt'
-        assert cfilter( dummy )
-        desc = str( cfilter )
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        assert len( lines ) == 1
-        assert lines[0] == 'Portal Type: some_pt'
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0], 'Portal Type: some_pt')
 
-    def test_Title( self ):
-
+    def test_Title(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
-        cfilter = ContentFilter( Title='foo' )
+        cfilter = ContentFilter(Title='foo')
         dummy = self.dummy
-        assert not cfilter( dummy )
+        self.assertFalse(cfilter(dummy))
         dummy.title = 'asdf'
-        assert not cfilter( dummy )
+        self.assertFalse(cfilter(dummy))
         dummy.title = 'foolish'
-        assert cfilter( dummy )
+        self.assertTrue(cfilter(dummy))
         dummy.title = 'ohsofoolish'
-        assert cfilter( dummy )
-        desc = str( cfilter )
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        assert len( lines ) == 1
-        assert lines[0] == 'Title: foo'
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0], 'Title: foo')
 
-    def test_Creator( self ):
-
+    def test_Creator(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
-        cfilter = ContentFilter( Creator='moe' )
+        cfilter = ContentFilter(Creator='moe')
         dummy = self.dummy
-        self.failIf( cfilter(dummy) )
+        self.assertFalse(cfilter(dummy))
         dummy.creators = ('curly',)
-        self.failIf( cfilter(dummy) )
+        self.assertFalse(cfilter(dummy))
         dummy.creators = ('moe',)
-        self.failUnless( cfilter(dummy) )
+        self.assertTrue(cfilter(dummy))
         dummy.creators = ('moe', 'curly')
-        self.failUnless( cfilter(dummy) )
-        desc = str( cfilter )
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        self.assertEqual(len( lines ),1)
-        self.assertEqual(lines[0],'Creator: moe')
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0], 'Creator: moe')
 
-    def test_Description( self ):
-
+    def test_Description(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
-        cfilter = ContentFilter( Description='funny' )
+        cfilter = ContentFilter(Description='funny')
         dummy = self.dummy
-        assert not cfilter( dummy )
+        self.assertFalse(cfilter(dummy))
         dummy.description = 'sad'
-        assert not cfilter( dummy )
+        self.assertFalse(cfilter(dummy))
         dummy.description = 'funny'
-        assert cfilter( dummy )
+        self.assertTrue(cfilter(dummy))
         dummy.description = 'it is funny you should mention it...'
-        assert cfilter( dummy )
-        desc = str( cfilter )
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        assert len( lines ) == 1
-        assert lines[0] == 'Description: funny'
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0], 'Description: funny')
 
-    def test_Subject( self ):
-
+    def test_Subject(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
-        cfilter = ContentFilter( Subject=('foo',) )
+        cfilter = ContentFilter(Subject=('foo',))
         dummy = self.dummy
-        assert not cfilter( dummy )
-        dummy.subject = ( 'bar', )
-        assert not cfilter( dummy )
-        dummy.subject = ( 'foo', )
-        assert cfilter( dummy )
-        dummy.subject = ( 'foo', 'bar', )
-        assert cfilter( dummy )
-        desc = str( cfilter )
+        self.assertFalse(cfilter(dummy))
+        dummy.subject = ('bar',)
+        self.assertFalse(cfilter(dummy))
+        dummy.subject = ('foo',)
+        self.assertTrue(cfilter(dummy))
+        dummy.subject = ('foo', 'bar',)
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        assert len( lines ) == 1
-        assert lines[0] == 'Subject: foo'
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0], 'Subject: foo')
 
-    def test_Subject2( self ):
+    def test_Subject2(self):
         # Now test with mutli-valued
-
         from Products.CMFCore.PortalFolder import ContentFilter
 
-        cfilter = ContentFilter( Subject=('foo', 'bar' ) )
+        cfilter = ContentFilter(Subject=('foo', 'bar'))
         dummy = self.dummy
-        assert not cfilter( dummy )
-        dummy.subject = ( 'baz', )
-        assert not cfilter( dummy )
-        dummy.subject = ( 'bar', )
-        assert cfilter( dummy )
-        dummy.subject = ( 'foo', )
-        assert cfilter( dummy )
-        dummy.subject = ( 'foo', 'bar', )
-        assert cfilter( dummy )
-        desc = str( cfilter )
+        self.assertFalse(cfilter(dummy))
+        dummy.subject = ('baz',)
+        self.assertFalse(cfilter(dummy))
+        dummy.subject = ('bar',)
+        self.assertTrue(cfilter(dummy))
+        dummy.subject = ('foo',)
+        self.assertTrue(cfilter(dummy))
+        dummy.subject = ('foo', 'bar',)
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        assert len( lines ) == 1
-        assert lines[0] == 'Subject: foo, bar'
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0], 'Subject: foo, bar')
 
-    def test_created( self ):
-
+    def test_created(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
         creation_date = DateTime('2001/01/01')
         tz = creation_date.timezone()
-        cfilter = ContentFilter( created=creation_date
-                               , created_usage='range:min' )
+        cfilter = ContentFilter(created=creation_date,
+                                created_usage='range:min')
         dummy = self.dummy
-        self.failIf(cfilter(dummy))
-        dummy.created_date = DateTime( '2000/12/31' )
-        self.failIf(cfilter(dummy))
-        dummy.created_date = DateTime( '2001/12/31' )
-        self.failUnless(cfilter(dummy))
-        dummy.created_date = DateTime( '2001/01/01' )
-        self.failUnless(cfilter(dummy))
-        desc = str( cfilter )
+        self.assertFalse(cfilter(dummy))
+        dummy.created_date = DateTime('2000/12/31')
+        self.assertFalse(cfilter(dummy))
+        dummy.created_date = DateTime('2001/12/31')
+        self.assertTrue(cfilter(dummy))
+        dummy.created_date = DateTime('2001/01/01')
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        self.assertEquals(len(lines), 1)
-        self.assertEquals( lines[0]
-                         , 'Created since: 2001/01/01 00:00:00 %s' % tz
-                         )
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0],
+                         'Created since: 2001/01/01 00:00:00 %s' % tz)
 
-    def test_created2( self ):
-
+    def test_created2(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
         creation_date = DateTime('2001/01/01')
         tz = creation_date.timezone()
-        cfilter = ContentFilter( created=creation_date
-                               , created_usage='range:max' )
+        cfilter = ContentFilter(created=creation_date,
+                                created_usage='range:max')
 
         dummy = self.dummy
-        self.failIf(cfilter(dummy))
-        dummy.created_date = DateTime( '2000/12/31' )
-        self.failUnless(cfilter(dummy))
-        dummy.created_date = DateTime( '2001/12/31' )
-        self.failIf(cfilter(dummy))
-        dummy.created_date = DateTime( '2001/01/01' )
-        self.failUnless(cfilter(dummy))
-        desc = str( cfilter )
+        self.assertFalse(cfilter(dummy))
+        dummy.created_date = DateTime('2000/12/31')
+        self.assertTrue(cfilter(dummy))
+        dummy.created_date = DateTime('2001/12/31')
+        self.assertFalse(cfilter(dummy))
+        dummy.created_date = DateTime('2001/01/01')
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        self.assertEquals(len(lines), 1)
-        self.assertEquals( lines[0]
-                         , 'Created before: 2001/01/01 00:00:00 %s' % tz
-                         )
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0],
+                         'Created before: 2001/01/01 00:00:00 %s' % tz)
 
-    def test_modified( self ):
-
+    def test_modified(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
         creation_date = DateTime('2001/01/01')
         tz = creation_date.timezone()
-        cfilter = ContentFilter( modified=DateTime( '2001/01/01' )
-                               , modified_usage='range:min' )
+        cfilter = ContentFilter(modified=DateTime('2001/01/01'),
+                                modified_usage='range:min')
         dummy = self.dummy
-        self.failIf(cfilter(dummy))
-        dummy.modified_date = DateTime( '2000/12/31' )
-        self.failIf(cfilter(dummy))
-        dummy.modified_date = DateTime( '2001/12/31' )
-        self.failUnless(cfilter(dummy))
-        dummy.modified_date = DateTime( '2001/01/01' )
-        self.failUnless(cfilter(dummy))
-        desc = str( cfilter )
+        self.assertFalse(cfilter(dummy))
+        dummy.modified_date = DateTime('2000/12/31')
+        self.assertFalse(cfilter(dummy))
+        dummy.modified_date = DateTime('2001/12/31')
+        self.assertTrue(cfilter(dummy))
+        dummy.modified_date = DateTime('2001/01/01')
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        self.assertEquals(len(lines), 1)
-        self.assertEquals( lines[0]
-                         , 'Modified since: 2001/01/01 00:00:00 %s' % tz
-                         )
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0],
+                         'Modified since: 2001/01/01 00:00:00 %s' % tz)
 
-    def test_modified2( self ):
-
+    def test_modified2(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
         creation_date = DateTime('2001/01/01')
         tz = creation_date.timezone()
-        cfilter = ContentFilter( modified=DateTime( '2001/01/01' )
-                               , modified_usage='range:max' )
+        cfilter = ContentFilter(modified=DateTime('2001/01/01'),
+                                modified_usage='range:max')
         dummy = self.dummy
-        self.failIf(cfilter(dummy))
-        dummy.modified_date = DateTime( '2000/12/31' )
-        self.failUnless(cfilter(dummy))
-        dummy.modified_date = DateTime( '2001/12/31' )
-        self.failIf(cfilter(dummy))
-        dummy.modified_date = DateTime( '2001/01/01' )
-        self.failUnless(cfilter(dummy))
-        desc = str( cfilter )
+        self.assertFalse(cfilter(dummy))
+        dummy.modified_date = DateTime('2000/12/31')
+        self.assertTrue(cfilter(dummy))
+        dummy.modified_date = DateTime('2001/12/31')
+        self.assertFalse(cfilter(dummy))
+        dummy.modified_date = DateTime('2001/01/01')
+        self.assertTrue(cfilter(dummy))
+        desc = str(cfilter)
         lines = desc.split('; ')
-        self.assertEquals(len(lines), 1)
-        self.assertEquals( lines[0]
-                         , 'Modified before: 2001/01/01 00:00:00 %s' % tz
-                         )
+        self.assertEqual(len(lines), 1)
+        self.assertEqual(lines[0],
+                         'Modified before: 2001/01/01 00:00:00 %s' % tz)
 
-    def test_mixed( self ):
-
+    def test_mixed(self):
         from Products.CMFCore.PortalFolder import ContentFilter
 
         creation_date = DateTime('2001/01/01')
         tz = creation_date.timezone()
-        cfilter = ContentFilter( created=DateTime( '2001/01/01' )
-                               , created_usage='range:max'
-                               , Title='foo'
-                               )
+        cfilter = ContentFilter(created=DateTime('2001/01/01'),
+                                created_usage='range:max', Title='foo')
 
         dummy = self.dummy
-        self.failIf(cfilter(dummy))
-        dummy.created_date = DateTime( '2000/12/31' )
-        self.failIf(cfilter(dummy))
-        dummy.created_date = DateTime( '2001/12/31' )
-        self.failIf(cfilter(dummy))
-        dummy.created_date = DateTime( '2001/01/01' )
-        self.failIf(cfilter(dummy))
+        self.assertFalse(cfilter(dummy))
+        dummy.created_date = DateTime('2000/12/31')
+        self.assertFalse(cfilter(dummy))
+        dummy.created_date = DateTime('2001/12/31')
+        self.assertFalse(cfilter(dummy))
+        dummy.created_date = DateTime('2001/01/01')
+        self.assertFalse(cfilter(dummy))
 
         dummy.title = 'ohsofoolish'
         del dummy.created_date
-        self.failIf(cfilter(dummy))
-        dummy.created_date = DateTime( '2000/12/31' )
-        self.failUnless(cfilter(dummy))
-        dummy.created_date = DateTime( '2001/12/31' )
-        self.failIf(cfilter(dummy))
-        dummy.created_date = DateTime( '2001/01/01' )
-        self.failUnless(cfilter(dummy))
+        self.assertFalse(cfilter(dummy))
+        dummy.created_date = DateTime('2000/12/31')
+        self.assertTrue(cfilter(dummy))
+        dummy.created_date = DateTime('2001/12/31')
+        self.assertFalse(cfilter(dummy))
+        dummy.created_date = DateTime('2001/01/01')
+        self.assertTrue(cfilter(dummy))
 
-        desc = str( cfilter )
+        desc = str(cfilter)
         lines = desc.split('; ')
-        self.assertEquals(len(lines), 2)
-        self.failUnless('Created before: 2001/01/01 00:00:00 %s' % tz in lines)
-        self.failUnless('Title: foo' in lines)
+        self.assertEqual(len(lines), 2)
+        self.assertTrue('Created before: 2001/01/01 00:00:00 %s' % tz in lines)
+        self.assertTrue('Title: foo' in lines)
 
 
 #------------------------------------------------------------------------------
@@ -944,38 +918,38 @@
 #   / head OFS.tests.testCopySupport (see Collector #259).
 #------------------------------------------------------------------------------
 ADD_IMAGES_AND_FILES = 'Add images and files'
-FILE_META_TYPES = ( { 'name'        : 'File'
-                    , 'action'      : 'manage_addFile'
-                    , 'permission'  : ADD_IMAGES_AND_FILES
-                    }
-                  ,
-                  )
+FILE_META_TYPES = ({'name': 'File',
+                    'action': 'manage_addFile',
+                    'permission': ADD_IMAGES_AND_FILES},)
+
+
 class _SensitiveSecurityPolicy:
 
-    def __init__( self, validate_lambda, checkPermission_lambda ):
-        self._lambdas = ( validate_lambda, checkPermission_lambda )
+    def __init__(self, validate_lambda, checkPermission_lambda):
+        self._lambdas = (validate_lambda, checkPermission_lambda)
 
-    def validate( self, *args, **kw ):
-        if self._lambdas[ 0 ]( *args, **kw ):
+    def validate(self, *args, **kw):
+        if self._lambdas[0](*args, **kw):
             return True
         raise Unauthorized
 
-    def checkPermission( self, *args, **kw ) :
-        return self._lambdas[ 1 ]( *args, **kw )
+    def checkPermission(self, *args, **kw):
+        return self._lambdas[1](*args, **kw)
 
-class _AllowedUser( Implicit ):
 
-    def __init__( self, allowed_lambda ):
-        self._lambdas = ( allowed_lambda, )
+class _AllowedUser(Implicit):
 
-    def getId( self ):
+    def __init__(self, allowed_lambda):
+        self._lambdas = (allowed_lambda,)
+
+    def getId(self):
         return 'unit_tester'
 
     def getUserName(self):
         return 'Unit Tester'
 
-    def allowed( self, object, object_roles=None ):
-        return self._lambdas[ 0 ]( object, object_roles )
+    def allowed(self, object, object_roles=None):
+        return self._lambdas[0](object, object_roles)
 
 
 class PortalFolderCopySupportTests(SecurityTest):
@@ -985,53 +959,43 @@
     def _initFolders(self):
         from Products.CMFCore.PortalFolder import PortalFolder
 
-        self.app._setObject( 'folder1', PortalFolder( 'folder1' ) )
-        self.app._setObject( 'folder2', PortalFolder( 'folder2' ) )
-        folder1 = getattr( self.app, 'folder1' )
+        self.app._setObject('folder1', PortalFolder('folder1'))
+        self.app._setObject('folder2', PortalFolder('folder2'))
+        folder1 = getattr(self.app, 'folder1')
         manage_addFile(folder1, 'file', file='', content_type='text/plain')
 
         # Hack, we need a _p_mtime for the file, so we make sure that it
         # has one. We use a subtransaction, which means we can rollback
         # later and pretend we didn't touch the ZODB.
         transaction.savepoint(optimistic=True)
-        return self.app._getOb( 'folder1' ), self.app._getOb( 'folder2' )
+        return self.app._getOb('folder1'), self.app._getOb('folder2')
 
-    def _assertCopyErrorUnauth( self, callable, *args, **kw ):
-
+    def _assertCopyErrorUnauth(self, callable, *args, **kw):
         import re
-        from zExceptions import Unauthorized
         from OFS.CopySupport import CopyError
+        from Products.CMFCore.exceptions import zExceptions_Unauthorized
 
-        ce_regex = kw.get( 'ce_regex' )
+        ce_regex = kw.get('ce_regex')
         if ce_regex is not None:
-            del kw[ 'ce_regex' ]
+            del kw['ce_regex']
 
         try:
-            callable( *args, **kw )
-
+            callable(*args, **kw)
         except CopyError, e:
-
             if ce_regex is not None:
-
-                pattern = re.compile( ce_regex, re.DOTALL )
+                pattern = re.compile(ce_regex, re.DOTALL)
                 if pattern.search(str(e)) is None:
-                    self.fail( "Paste failed; didn't match pattern:\n%s" % e )
-
+                    self.fail("Paste failed; didn't match pattern:\n%s" % e)
             else:
-                self.fail( "Paste failed; no pattern:\n%s" % e )
+                self.fail("Paste failed; no pattern:\n%s" % e)
 
-        except Unauthorized, e:
+        except zExceptions_Unauthorized, e:
             pass
-
         else:
-            self.fail( "Paste allowed unexpectedly." )
+            self.fail("Paste allowed unexpectedly.")
 
-    def _initPolicyAndUser( self
-                          , a_lambda=None
-                          , v_lambda=None
-                          , c_lambda=None
-                          ):
-        def _promiscuous( *args, **kw ):
+    def _initPolicyAndUser(self, a_lambda=None, v_lambda=None, c_lambda=None):
+        def _promiscuous(*args, **kw):
             return 1
 
         if a_lambda is None:
@@ -1043,104 +1007,97 @@
         if c_lambda is None:
             c_lambda = _promiscuous
 
-        scp = _SensitiveSecurityPolicy( v_lambda, c_lambda )
-        SecurityManager.setSecurityPolicy( scp )
+        scp = _SensitiveSecurityPolicy(v_lambda, c_lambda)
+        SecurityManager.setSecurityPolicy(scp)
 
-        newSecurityManager( None
-                          , _AllowedUser(a_lambda).__of__(self.app.acl_users))
+        newSecurityManager(None,
+                           _AllowedUser(a_lambda).__of__(self.app.acl_users))
 
-    def test_copy_baseline( self ):
+    def test_copy_baseline(self):
 
         folder1, folder2 = self._initFolders()
         folder2.all_meta_types = FILE_META_TYPES
 
         self._initPolicyAndUser()
 
-        self.failUnless( 'file' in folder1.objectIds() )
-        self.failIf( 'file' in folder2.objectIds() )
+        self.assertTrue('file' in folder1.objectIds())
+        self.assertFalse('file' in folder2.objectIds())
 
-        cookie = folder1.manage_copyObjects( ids=( 'file', ) )
-        folder2.manage_pasteObjects( cookie )
+        cookie = folder1.manage_copyObjects(ids=('file',))
+        folder2.manage_pasteObjects(cookie)
 
-        self.failUnless( 'file' in folder1.objectIds() )
-        self.failUnless( 'file' in folder2.objectIds() )
+        self.assertTrue('file' in folder1.objectIds())
+        self.assertTrue('file' in folder2.objectIds())
 
-    def test_copy_cant_read_source( self ):
+    def test_copy_cant_read_source(self):
 
         folder1, folder2 = self._initFolders()
         folder2.all_meta_types = FILE_META_TYPES
 
-        a_file = folder1._getOb( 'file' )
+        a_file = folder1._getOb('file')
 
-        def _validate( a, c, n, v, *args, **kw ):
-            return aq_base( v ) is not aq_base( a_file )
+        def _validate(a, c, n, v, *args, **kw):
+            return aq_base(v) is not aq_base(a_file)
 
-        self._initPolicyAndUser( v_lambda=_validate )
+        self._initPolicyAndUser(v_lambda=_validate)
 
-        cookie = folder1.manage_copyObjects( ids=( 'file', ) )
-        self._assertCopyErrorUnauth( folder2.manage_pasteObjects
-                                   , cookie
-                                   , ce_regex='Insufficient privileges'
-                                   )
+        cookie = folder1.manage_copyObjects(ids=('file',))
+        self._assertCopyErrorUnauth(folder2.manage_pasteObjects,
+                                    cookie,
+                                    ce_regex='Insufficient privileges')
 
-    def test_copy_cant_create_target_metatype_not_supported( self ):
+    def test_copy_cant_create_target_metatype_not_supported(self):
         folder1, folder2 = self._initFolders()
         folder2.all_meta_types = ()
 
         self._initPolicyAndUser()
 
-        cookie = folder1.manage_copyObjects( ids=( 'file', ) )
-        self._assertCopyErrorUnauth( folder2.manage_pasteObjects
-                                   , cookie
-                                   , ce_regex='Not Supported'
-                                   )
+        cookie = folder1.manage_copyObjects(ids=('file',))
+        self._assertCopyErrorUnauth(folder2.manage_pasteObjects, cookie,
+                                    ce_regex='Not Supported')
 
-    def test_move_baseline( self ):
+    def test_move_baseline(self):
 
         folder1, folder2 = self._initFolders()
         folder2.all_meta_types = FILE_META_TYPES
 
-        self.failUnless( 'file' in folder1.objectIds() )
-        self.failIf( 'file' in folder2.objectIds() )
+        self.assertTrue('file' in folder1.objectIds())
+        self.assertFalse('file' in folder2.objectIds())
 
         self._initPolicyAndUser()
 
-        cookie = folder1.manage_cutObjects( ids=( 'file', ) )
-        folder2.manage_pasteObjects( cookie )
+        cookie = folder1.manage_cutObjects(ids=('file',))
+        folder2.manage_pasteObjects(cookie)
 
-        self.failIf( 'file' in folder1.objectIds() )
-        self.failUnless( 'file' in folder2.objectIds() )
+        self.assertFalse('file' in folder1.objectIds())
+        self.assertTrue('file' in folder2.objectIds())
 
-    def test_move_cant_read_source( self ):
+    def test_move_cant_read_source(self):
         folder1, folder2 = self._initFolders()
         folder2.all_meta_types = FILE_META_TYPES
 
-        a_file = folder1._getOb( 'file' )
+        a_file = folder1._getOb('file')
 
-        def _validate( a, c, n, v, *args, **kw ):
-            return aq_base( v ) is not aq_base( a_file )
+        def _validate(a, c, n, v, *args, **kw):
+            return aq_base(v) is not aq_base(a_file)
 
-        self._initPolicyAndUser( v_lambda=_validate )
+        self._initPolicyAndUser(v_lambda=_validate)
 
-        cookie = folder1.manage_cutObjects( ids=( 'file', ) )
-        self._assertCopyErrorUnauth( folder2.manage_pasteObjects
-                                   , cookie
-                                   , ce_regex='Insufficient privileges'
-                                   )
+        cookie = folder1.manage_cutObjects(ids=('file',))
+        self._assertCopyErrorUnauth(folder2.manage_pasteObjects, cookie,
+                                    ce_regex='Insufficient privileges')
 
-    def test_move_cant_create_target_metatype_not_supported( self ):
+    def test_move_cant_create_target_metatype_not_supported(self):
         folder1, folder2 = self._initFolders()
         folder2.all_meta_types = ()
 
         self._initPolicyAndUser()
 
-        cookie = folder1.manage_cutObjects( ids=( 'file', ) )
-        self._assertCopyErrorUnauth( folder2.manage_pasteObjects
-                                   , cookie
-                                   , ce_regex='Not Supported'
-                                   )
+        cookie = folder1.manage_cutObjects(ids=('file',))
+        self._assertCopyErrorUnauth(folder2.manage_pasteObjects, cookie,
+                                    ce_regex='Not Supported')
 
-    def test_move_cant_create_target_metatype_not_allowed( self ):
+    def test_move_cant_create_target_metatype_not_allowed(self):
 
         #
         #   This test can't succeed on Zope's earlier than 2.7.3 because
@@ -1154,43 +1111,39 @@
         folder1, folder2 = self._initFolders()
         folder2.all_meta_types = FILE_META_TYPES
 
-        def _no_manage_addFile( a, c, n, v, *args, **kw ):
+        def _no_manage_addFile(a, c, n, v, *args, **kw):
             return n != 'manage_addFile'
 
         def _no_add_images_and_files(permission, object, context):
             return permission != ADD_IMAGES_AND_FILES
 
-        self._initPolicyAndUser( v_lambda=_no_manage_addFile,
-                                 c_lambda=_no_add_images_and_files )
+        self._initPolicyAndUser(v_lambda=_no_manage_addFile,
+                                c_lambda=_no_add_images_and_files)
 
-        cookie = folder1.manage_cutObjects( ids=( 'file', ) )
-        self._assertCopyErrorUnauth( folder2.manage_pasteObjects
-                                   , cookie
-                                   , ce_regex='Insufficient Privileges'
-                                             + '.*%s' % ADD_IMAGES_AND_FILES
-                                   )
+        cookie = folder1.manage_cutObjects(ids=('file',))
+        self._assertCopyErrorUnauth(folder2.manage_pasteObjects, cookie,
+                                    ce_regex='Insufficient Privileges'
+                                            + '.*%s' % ADD_IMAGES_AND_FILES)
 
     def test_move_cant_delete_source(self):
         from AccessControl.Permissions import delete_objects as DeleteObjects
         from Products.CMFCore.PortalFolder import PortalFolder
 
         folder1, folder2 = self._initFolders()
-        folder1.manage_permission( DeleteObjects, roles=(), acquire=0 )
+        folder1.manage_permission(DeleteObjects, roles=(), acquire=0)
 
-        folder1._setObject( 'sub', PortalFolder( 'sub' ) )
+        folder1._setObject('sub', PortalFolder('sub'))
         transaction.savepoint(optimistic=True) # get a _p_jar for 'sub'
 
         def _no_delete_objects(permission, object, context):
             return permission != DeleteObjects
 
-        self._initPolicyAndUser( c_lambda=_no_delete_objects )
+        self._initPolicyAndUser(c_lambda=_no_delete_objects)
 
-        cookie = folder1.manage_cutObjects( ids=( 'sub', ) )
-        self._assertCopyErrorUnauth( folder2.manage_pasteObjects
-                                   , cookie
-                                   , ce_regex='Insufficient Privileges'
-                                             + '.*%s' % DeleteObjects
-                                   )
+        cookie = folder1.manage_cutObjects(ids=('sub',))
+        self._assertCopyErrorUnauth(folder2.manage_pasteObjects, cookie,
+                                    ce_regex='Insufficient Privileges'
+                                            + '.*%s' % DeleteObjects)
 
     def test_paste_with_restricted_item_content_type_not_allowed(self):
         #   Test from CMF Collector #216 (Plone #2186), for the case
@@ -1209,23 +1162,19 @@
 
         ttool = TypesTool()
         ttool._setObject(RESTRICTED_TYPE,
-                                FTI(id=RESTRICTED_TYPE
-                                  , title=RESTRICTED_TYPE
-                                  , meta_type=PortalFolder.meta_type
-                                  , product='CMFCore'
-                                  , factory='manage_addPortalFolder'
-                                  , global_allow=0
-                                  )
-                             )
+                         FTI(id=RESTRICTED_TYPE,
+                             title=RESTRICTED_TYPE,
+                             meta_type=PortalFolder.meta_type,
+                             product='CMFCore',
+                             factory='manage_addPortalFolder',
+                             global_allow=0))
         ttool._setObject(UNRESTRICTED_TYPE,
-                                FTI(id=UNRESTRICTED_TYPE
-                                  , title=UNRESTRICTED_TYPE
-                                  , meta_type=PortalFolder.meta_type
-                                  , product='CMFCore'
-                                  , factory='manage_addPortalFolder'
-                                  , filter_content_types=0
-                                  )
-                             )
+                         FTI(id=UNRESTRICTED_TYPE,
+                             title=UNRESTRICTED_TYPE,
+                             meta_type=PortalFolder.meta_type,
+                             product='CMFCore',
+                             factory='manage_addPortalFolder',
+                             filter_content_types=0))
         getSiteManager().registerUtility(ttool, ITypesTool)
 
         # copy and pasting the object into the folder should raise
@@ -1250,31 +1199,27 @@
 
         ttool = TypesTool()
         ttool._setObject(RESTRICTED_TYPE,
-                                FTI(id=RESTRICTED_TYPE
-                                  , title=RESTRICTED_TYPE
-                                  , meta_type=PortalFolder.meta_type
-                                  , product='CMFCore'
-                                  , factory='manage_addPortalFolder'
-                                  , global_allow=0
-                                  )
-                             )
+                         FTI(id=RESTRICTED_TYPE,
+                             title=RESTRICTED_TYPE,
+                             meta_type=PortalFolder.meta_type,
+                             product='CMFCore',
+                             factory='manage_addPortalFolder',
+                             global_allow=0))
         ttool._setObject(UNRESTRICTED_TYPE,
-                                FTI(id=UNRESTRICTED_TYPE
-                                  , title=UNRESTRICTED_TYPE
-                                  , meta_type=PortalFolder.meta_type
-                                  , product='CMFCore'
-                                  , factory='manage_addPortalFolder'
-                                  , filter_content_types=1
-                                  , allowed_content_types=[RESTRICTED_TYPE]
-                                  )
-                             )
+                         FTI(id=UNRESTRICTED_TYPE,
+                             title=UNRESTRICTED_TYPE,
+                             meta_type=PortalFolder.meta_type,
+                             product='CMFCore',
+                             factory='manage_addPortalFolder',
+                             filter_content_types=1,
+                             allowed_content_types=[RESTRICTED_TYPE]))
         getSiteManager().registerUtility(ttool, ITypesTool)
 
         # copy and pasting the object into the folder should *not* raise
         # an exception, because the folder's type allows it.
         copy_cookie = self.app.manage_copyObjects(ids=['folder2'])
         folder1.manage_pasteObjects(copy_cookie)
-        self.failUnless('folder2' in folder1.objectIds())
+        self.assertTrue('folder2' in folder1.objectIds())
 
     def test_paste_with_restricted_container_content_type(self):
         #   Test from CMF Collector #216 (Plone #2186), for the case
@@ -1293,24 +1238,20 @@
 
         ttool = TypesTool()
         ttool._setObject(RESTRICTED_TYPE,
-                                FTI(id=RESTRICTED_TYPE
-                                  , title=RESTRICTED_TYPE
-                                  , meta_type=PortalFolder.meta_type
-                                  , product='CMFCore'
-                                  , factory='manage_addPortalFolder'
-                                  , filter_content_types=1
-                                  , allowed_content_types=()
-                                  )
-                             )
+                         FTI(id=RESTRICTED_TYPE,
+                             title=RESTRICTED_TYPE,
+                             meta_type=PortalFolder.meta_type,
+                             product='CMFCore',
+                             factory='manage_addPortalFolder',
+                             filter_content_types=1,
+                             allowed_content_types=()))
         ttool._setObject(UNRESTRICTED_TYPE,
-                                FTI(id=UNRESTRICTED_TYPE
-                                  , title=UNRESTRICTED_TYPE
-                                  , meta_type=PortalFolder.meta_type
-                                  , product='CMFCore'
-                                  , factory='manage_addPortalFolder'
-                                  , global_allow=1
-                                  )
-                             )
+                         FTI(id=UNRESTRICTED_TYPE,
+                            title=UNRESTRICTED_TYPE,
+                            meta_type=PortalFolder.meta_type,
+                            product='CMFCore',
+                            factory='manage_addPortalFolder',
+                            global_allow=1))
         getSiteManager().registerUtility(ttool, ITypesTool)
 
         # copy and pasting the object into the folder should raise

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_RegistrationTool.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_RegistrationTool.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_RegistrationTool.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -34,7 +34,7 @@
 
     def test_generatePassword(self):
         rtool = self._makeOne()
-        self.failUnless( len( rtool.generatePassword() ) >= 5 )
+        self.assertTrue(len(rtool.generatePassword()) >= 5)
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_SkinsTool.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_SkinsTool.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_SkinsTool.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -50,7 +50,7 @@
         tool = self._makeOne()
 
         # We start out with no wkin selections
-        self.assertEquals(len(tool.getSkinSelections()), 0)
+        self.assertEqual(len(tool.getSkinSelections()), 0)
 
         # Add a skin selection with an invalid path element
         paths = 'foo, bar, .svn'
@@ -58,12 +58,12 @@
 
         # Make sure the skin selection exists
         paths = tool.getSkinPath('fooskin')
-        self.failIf(paths is None)
+        self.assertFalse(paths is None)
 
         # Test for the contents
-        self.failIf(paths.find('foo') == -1)
-        self.failIf(paths.find('bar') == -1)
-        self.failUnless(paths.find('.svn') == -1)
+        self.assertFalse(paths.find('foo') == -1)
+        self.assertFalse(paths.find('bar') == -1)
+        self.assertTrue(paths.find('.svn') == -1)
 
 
 class SkinnableTests(unittest.TestCase):
@@ -77,6 +77,7 @@
             # This is needed otherwise REQUEST is the string
             # '<Special Object Used to Force Acquisition>'
             REQUEST = None
+
             def getSkinsFolderName(self):
                 '''tool'''
                 return 'tool'
@@ -100,11 +101,11 @@
         som.tool.manage_properties(default_skin='skinA')
 
         # Expect the default skin name to be returned
-        self.failUnless(som.getCurrentSkinName() == 'skinA')
+        self.assertTrue(som.getCurrentSkinName() == 'skinA')
 
         # after a changeSkin the new skin name should be returned
         som.changeSkin('skinB', som.REQUEST)
-        self.failUnless(som.getCurrentSkinName() == 'skinB')
+        self.assertTrue(som.getCurrentSkinName() == 'skinB')
 
 
 def test_suite():

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_TypesTool.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_TypesTool.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_TypesTool.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -69,7 +69,7 @@
 
         ti = ActionTesterTypeInfo()
         tool = self._makeOne()
-        setattr( tool, 'Dummy Content', ti )
+        setattr(tool, 'Dummy Content', ti)
 
         dummy = DummyContent('dummy')
         tool.listActions('fake_info', dummy)
@@ -111,11 +111,11 @@
                 continue
             meta_types[factype['name']] = 1
             act = tool.unrestrictedTraverse(factype['action'])
-            self.failIf(type(aq_base(act)) is NullResource)
+            self.assertFalse(type(aq_base(act)) is NullResource)
 
         # Check the ones we're expecting are there
-        self.failUnless(meta_types.has_key('Scriptable Type Information'))
-        self.failUnless(meta_types.has_key('Factory-based Type Information'))
+        self.assertTrue('Scriptable Type Information' in meta_types)
+        self.assertTrue('Factory-based Type Information' in meta_types)
 
     def test_constructContent_simple_FTI(self):
         from AccessControl.SecurityManagement import newSecurityManager
@@ -241,18 +241,18 @@
         tool._setObject('Baz', sti_baz)
         script = PythonScript('addBaz')
         script.write(STI_SCRIPT)
-        tool._setObject('addBaz',  script)
-        folder = site._setObject( 'folder', PortalFolder(id='folder') )
+        tool._setObject('addBaz', script)
+        folder = site._setObject('folder', PortalFolder(id='folder'))
         folder.manage_addProduct = {'FooProduct':
-                                        DummyFactoryDispatcher(folder) }
+                                    DummyFactoryDispatcher(folder)}
         folder._owner = (['acl_users'], 'user_foo')
-        self.assertEqual( folder.getOwner(), acl_users.user_foo )
+        self.assertEqual(folder.getOwner(), acl_users.user_foo)
 
         try:
             tool.constructContent('Baz', container=folder, id='page2')
         except Unauthorized:
             self.fail('CMF Collector issue #165 (Ownership bug): '
-                      'Unauthorized raised' )
+                      'Unauthorized raised')
 
         self.assertEqual(folder.page2.portal_type, 'Baz')
 
@@ -287,113 +287,111 @@
     def test_construction(self):
         ti = self._makeOne('Foo', description='Description', meta_type='Foo',
                            icon='foo.gif')
-        self.assertEqual( ti.getId(), 'Foo' )
-        self.assertEqual( ti.Title(), 'Foo' )
-        self.assertEqual( ti.Description(), 'Description' )
-        self.assertEqual( ti.Metatype(), 'Foo' )
-        self.assertEqual( ti.getIconExprObject().text,
-                          'string:${portal_url}/foo.gif' )
-        self.assertEqual( ti.getIcon(), 'foo.gif' )
-        self.assertEqual( ti.immediate_view, '' )
+        self.assertEqual(ti.getId(), 'Foo')
+        self.assertEqual(ti.Title(), 'Foo')
+        self.assertEqual(ti.Description(), 'Description')
+        self.assertEqual(ti.Metatype(), 'Foo')
+        self.assertEqual(ti.getIconExprObject().text,
+                         'string:${portal_url}/foo.gif')
+        self.assertEqual(ti.getIcon(), 'foo.gif')
+        self.assertEqual(ti.immediate_view, '')
 
         ti = self._makeOne('Foo', immediate_view='foo_view')
-        self.assertEqual( ti.immediate_view, 'foo_view' )
+        self.assertEqual(ti.immediate_view, 'foo_view')
 
     def _makeAndSetInstance(self, id, **kw):
         tool = self.tool
         t = self._makeOne(id, **kw)
-        tool._setObject(id,t)
+        tool._setObject(id, t)
         return tool[id]
 
-    def test_allowType( self ):
+    def test_allowType(self):
         self.tool = self._makeTypesTool()
-        ti = self._makeAndSetInstance( 'Foo' )
-        self.failIf( ti.allowType( 'Foo' ) )
-        self.failIf( ti.allowType( 'Bar' ) )
+        ti = self._makeAndSetInstance('Foo')
+        self.assertFalse(ti.allowType('Foo'))
+        self.assertFalse(ti.allowType('Bar'))
 
-        ti = self._makeAndSetInstance( 'Foo2', allowed_content_types=( 'Bar', ) )
-        self.failUnless( ti.allowType( 'Bar' ) )
+        ti = self._makeAndSetInstance('Foo2', allowed_content_types=('Bar',))
+        self.assertTrue(ti.allowType('Bar'))
 
-        ti = self._makeAndSetInstance( 'Foo3', filter_content_types=0 )
-        self.failUnless( ti.allowType( 'Foo3' ) )
+        ti = self._makeAndSetInstance('Foo3', filter_content_types=0)
+        self.assertTrue(ti.allowType('Foo3'))
 
-    def test_GlobalHide( self ):
+    def test_GlobalHide(self):
         self.tool = self._makeTypesTool()
-        tnf = self._makeAndSetInstance( 'Folder', filter_content_types=0)
-        taf = self._makeAndSetInstance( 'Allowing Folder'
-                                      , allowed_content_types=( 'Hidden'
-                                                              ,'Not Hidden'))
+        tnf = self._makeAndSetInstance('Folder', filter_content_types=0)
+        taf = self._makeAndSetInstance('Allowing Folder',
+                                       allowed_content_types=('Hidden',
+                                                              'Not Hidden'))
         self._makeAndSetInstance('Hidden', global_allow=0)
         self._makeAndSetInstance('Not Hidden')
         # make sure we're normally hidden but everything else is visible
-        self.failIf     ( tnf.allowType( 'Hidden' ) )
-        self.failUnless ( tnf.allowType( 'Not Hidden') )
+        self.assertFalse(tnf.allowType('Hidden'))
+        self.assertTrue(tnf.allowType('Not Hidden'))
         # make sure we're available where we should be
-        self.failUnless ( taf.allowType( 'Hidden' ) )
-        self.failUnless ( taf.allowType( 'Not Hidden') )
+        self.assertTrue(taf.allowType('Hidden'))
+        self.assertTrue(taf.allowType('Not Hidden'))
         # make sure we're available in a non-content-type-filtered type
         # where we have been explicitly allowed
-        taf2 = self._makeAndSetInstance( 'Allowing Folder2'
-                                       , allowed_content_types=( 'Hidden'
-                                                               , 'Not Hidden'
-                                                               )
-                                       , filter_content_types=0
-                                       )
-        self.failUnless ( taf2.allowType( 'Hidden' ) )
-        self.failUnless ( taf2.allowType( 'Not Hidden') )
+        taf2 = self._makeAndSetInstance('Allowing Folder2',
+                                        allowed_content_types=('Hidden',
+                                                               'Not Hidden'),
+                                        filter_content_types=0)
+        self.assertTrue(taf2.allowType('Hidden'))
+        self.assertTrue(taf2.allowType('Not Hidden'))
 
-    def test_allowDiscussion( self ):
-        ti = self._makeOne( 'Foo' )
-        self.failIf( ti.allowDiscussion() )
+    def test_allowDiscussion(self):
+        ti = self._makeOne('Foo')
+        self.assertFalse(ti.allowDiscussion())
 
-        ti = self._makeOne( 'Foo', allow_discussion=1 )
-        self.failUnless( ti.allowDiscussion() )
+        ti = self._makeOne('Foo', allow_discussion=1)
+        self.assertTrue(ti.allowDiscussion())
 
-    def test_listActions( self ):
+    def test_listActions(self):
         from Products.CMFCore.tests.base.tidata import FTIDATA_ACTIONS
-        ti = self._makeOne( 'Foo' )
-        self.failIf( ti.listActions() )
+        ti = self._makeOne('Foo')
+        self.assertFalse(ti.listActions())
 
-        ti = self._makeOne( **FTIDATA_ACTIONS[0] )
+        ti = self._makeOne(**FTIDATA_ACTIONS[0])
         actions = ti.listActions()
-        self.failUnless( actions )
+        self.assertTrue(actions)
 
         ids = [ x.getId() for x in actions ]
-        self.failUnless( 'view' in ids )
-        self.failUnless( 'edit' in ids )
-        self.failUnless( 'objectproperties' in ids )
-        self.failUnless( 'slot' in ids )
+        self.assertTrue('view' in ids)
+        self.assertTrue('edit' in ids)
+        self.assertTrue('objectproperties' in ids)
+        self.assertTrue('slot' in ids)
 
         names = [ x.Title() for x in actions ]
-        self.failUnless( 'View' in names )
-        self.failUnless( 'Edit' in names )
-        self.failUnless( 'Object Properties' in names )
-        self.failIf( 'slot' in names )
-        self.failUnless( 'Slot' in names )
+        self.assertTrue('View' in names)
+        self.assertTrue('Edit' in names)
+        self.assertTrue('Object Properties' in names)
+        self.assertFalse('slot' in names)
+        self.assertTrue('Slot' in names)
 
         visible = [ x.getId() for x in actions if x.getVisibility() ]
-        self.failUnless( 'view' in visible )
-        self.failUnless( 'edit' in visible )
-        self.failUnless( 'objectproperties' in visible )
-        self.failIf( 'slot' in visible )
+        self.assertTrue('view' in visible)
+        self.assertTrue('edit' in visible)
+        self.assertTrue('objectproperties' in visible)
+        self.assertFalse('slot' in visible)
 
     def test_MethodAliases_methods(self):
         from Products.CMFCore.tests.base.tidata import FTIDATA_CMF
-        ti = self._makeOne( **FTIDATA_CMF[0] )
-        self.assertEqual( ti.getMethodAliases(), FTIDATA_CMF[0]['aliases'] )
-        self.assertEqual( ti.queryMethodID('view'), 'dummy_view' )
-        self.assertEqual( ti.queryMethodID('view.html'), 'dummy_view' )
+        ti = self._makeOne(**FTIDATA_CMF[0])
+        self.assertEqual(ti.getMethodAliases(), FTIDATA_CMF[0]['aliases'])
+        self.assertEqual(ti.queryMethodID('view'), 'dummy_view')
+        self.assertEqual(ti.queryMethodID('view.html'), 'dummy_view')
 
-        ti.setMethodAliases( ti.getMethodAliases() )
-        self.assertEqual( ti.getMethodAliases(), FTIDATA_CMF[0]['aliases'] )
+        ti.setMethodAliases(ti.getMethodAliases())
+        self.assertEqual(ti.getMethodAliases(), FTIDATA_CMF[0]['aliases'])
 
     def test_getInfoData(self):
         ti_data = {'id': 'foo',
                    'title': 'Foo',
                    'description': 'Foo objects are just used for testing.',
                    'content_meta_type': 'Foo Content',
-                   'factory' : 'cmf.foo',
-                   'icon_expr' : 'string:${portal_url}/foo_icon_expr.gif',
+                   'factory': 'cmf.foo',
+                   'icon_expr': 'string:${portal_url}/foo_icon_expr.gif',
                    'add_view_expr': 'string:${folder_url}/foo_add_view',
                    'link_target': '_new'}
         ti = self._makeOne(**ti_data)
@@ -422,7 +420,7 @@
                    'title': 'Foo',
                    'description': 'Foo objects are just used for testing.',
                    'content_meta_type': 'Foo Content',
-                   'factory' : 'cmf.foo'}
+                   'factory': 'cmf.foo'}
         ti = self._makeOne(**ti_data)
         info_data = ti.getInfoData()
         self.assertEqual(len(info_data), 2)
@@ -443,36 +441,36 @@
 
     def _checkContentTI(self, ti):
         from Products.CMFCore.ActionInformation import ActionInformation
-        wanted_aliases = { 'view': 'dummy_view', '(Default)': 'dummy_view' }
+        wanted_aliases = {'view': 'dummy_view', '(Default)': 'dummy_view'}
         wanted_actions_text0 = 'string:${object_url}/dummy_view'
         wanted_actions_text1 = 'string:${object_url}/dummy_edit_form'
         wanted_actions_text2 = 'string:${object_url}/metadata_edit_form'
 
-        self.failUnless( isinstance( ti._actions[0], ActionInformation ) )
-        self.assertEqual( len( ti._actions ), 3 )
+        self.assertTrue(isinstance(ti._actions[0], ActionInformation))
+        self.assertEqual(len(ti._actions), 3)
         self.assertEqual(ti._aliases, wanted_aliases)
         self.assertEqual(ti._actions[0].action.text, wanted_actions_text0)
         self.assertEqual(ti._actions[1].action.text, wanted_actions_text1)
         self.assertEqual(ti._actions[2].action.text, wanted_actions_text2)
 
         action0 = ti._actions[0]
-        self.assertEqual( action0.getId(), 'view' )
-        self.assertEqual( action0.Title(), 'View' )
-        self.assertEqual( action0.getActionExpression(), wanted_actions_text0 )
-        self.assertEqual( action0.getCondition(), '' )
-        self.assertEqual( action0.getPermissions(), ( 'View', ) )
-        self.assertEqual( action0.getCategory(), 'object' )
-        self.assertEqual( action0.getVisibility(), 1 )
+        self.assertEqual(action0.getId(), 'view')
+        self.assertEqual(action0.Title(), 'View')
+        self.assertEqual(action0.getActionExpression(), wanted_actions_text0)
+        self.assertEqual(action0.getCondition(), '')
+        self.assertEqual(action0.getPermissions(), ('View',))
+        self.assertEqual(action0.getCategory(), 'object')
+        self.assertEqual(action0.getVisibility(), 1)
 
     def _checkFolderTI(self, ti):
         from Products.CMFCore.ActionInformation import ActionInformation
-        wanted_aliases = { 'view': '(Default)' }
+        wanted_aliases = {'view': '(Default)'}
         wanted_actions_text0 = 'string:${object_url}'
         wanted_actions_text1 = 'string:${object_url}/dummy_edit_form'
         wanted_actions_text2 = 'string:${object_url}/folder_localrole_form'
 
-        self.failUnless( isinstance( ti._actions[0], ActionInformation ) )
-        self.assertEqual( len( ti._actions ), 3 )
+        self.assertTrue(isinstance(ti._actions[0], ActionInformation))
+        self.assertEqual(len(ti._actions), 3)
         self.assertEqual(ti._aliases, wanted_aliases)
         self.assertEqual(ti._actions[0].action.text, wanted_actions_text0)
         self.assertEqual(ti._actions[1].action.text, wanted_actions_text1)
@@ -492,58 +490,53 @@
                    'link_target': '_new'}
         ti = self._makeOne(**ti_data)
         info_data = ti.getInfoData()
-        self.failUnless(hasattr(ti, 'icon_expr_object'))
-        self.failUnless(info_data[0].get('icon'))
-        self.failUnless('icon' in info_data[1])
-        self.failUnless(hasattr(ti, 'add_view_expr_object'))
-        self.failUnless(info_data[0].get('url'))
-        self.failUnless('url' in info_data[1])
+        self.assertTrue(hasattr(ti, 'icon_expr_object'))
+        self.assertTrue(info_data[0].get('icon'))
+        self.assertTrue('icon' in info_data[1])
+        self.assertTrue(hasattr(ti, 'add_view_expr_object'))
+        self.assertTrue(info_data[0].get('url'))
+        self.assertTrue('url' in info_data[1])
         ti.manage_changeProperties(icon_expr='', add_view_expr='')
         info_data = ti.getInfoData()
-        self.failIf(hasattr(ti, 'icon_expr_object'))
-        self.failIf(info_data[0].get('icon'))
-        self.failIf('icon' in info_data[1])
-        self.failIf(hasattr(ti, 'add_view_expr_object'))
-        self.failIf(info_data[0].get('url'))
-        self.failIf('url' in info_data[1])
+        self.assertFalse(hasattr(ti, 'icon_expr_object'))
+        self.assertFalse(info_data[0].get('icon'))
+        self.assertFalse('icon' in info_data[1])
+        self.assertFalse(hasattr(ti, 'add_view_expr_object'))
+        self.assertFalse(info_data[0].get('url'))
+        self.assertFalse('url' in info_data[1])
 
 
-class FTIDataTests( TypeInfoTests, unittest.TestCase ):
+class FTIDataTests(TypeInfoTests, unittest.TestCase):
 
     def _getTargetClass(self):
         from Products.CMFCore.TypesTool import FactoryTypeInformation
         return FactoryTypeInformation
 
-    def test_properties( self ):
-        ti = self._makeOne( 'Foo' )
-        self.assertEqual( ti.product, '' )
-        self.assertEqual( ti.factory, '' )
+    def test_properties(self):
+        ti = self._makeOne('Foo')
+        self.assertEqual(ti.product, '')
+        self.assertEqual(ti.factory, '')
 
-        ti = self._makeOne('Foo'
-                          , product='FooProduct'
-                          , factory='addFoo'
-                          )
-        self.assertEqual( ti.product, 'FooProduct' )
-        self.assertEqual( ti.factory, 'addFoo' )
+        ti = self._makeOne('Foo', product='FooProduct', factory='addFoo')
+        self.assertEqual(ti.product, 'FooProduct')
+        self.assertEqual(ti.factory, 'addFoo')
 
 
-class STIDataTests( TypeInfoTests, unittest.TestCase ):
+class STIDataTests(TypeInfoTests, unittest.TestCase):
 
     def _getTargetClass(self):
         from Products.CMFCore.TypesTool import ScriptableTypeInformation
         return ScriptableTypeInformation
 
-    def test_properties( self ):
-        ti = self._makeOne( 'Foo' )
-        self.assertEqual( ti.permission, '' )
-        self.assertEqual( ti.constructor_path, '' )
+    def test_properties(self):
+        ti = self._makeOne('Foo')
+        self.assertEqual(ti.permission, '')
+        self.assertEqual(ti.constructor_path, '')
 
-        ti = self._makeOne( 'Foo'
-                               , permission='Add Foos'
-                               , constructor_path='foo_add'
-                               )
-        self.assertEqual( ti.permission, 'Add Foos' )
-        self.assertEqual( ti.constructor_path, 'foo_add' )
+        ti = self._makeOne('Foo', permission='Add Foos',
+                           constructor_path='foo_add')
+        self.assertEqual(ti.permission, 'Add Foos')
+        self.assertEqual(ti.constructor_path, 'foo_add')
 
 
 class FTIConstructionTestCase:
@@ -556,31 +549,31 @@
         return self._getTargetClass()(*args, **kw)
 
     def test_isConstructionAllowed_wo_Container(self):
-        self.failIf(self.ti.isConstructionAllowed(None))
+        self.assertFalse(self.ti.isConstructionAllowed(None))
 
     def test_isConstructionAllowed_wo_ProductFactory(self):
         ti = self._makeOne('foo')
-        self.failIf(ti.isConstructionAllowed(self.f))
+        self.assertFalse(ti.isConstructionAllowed(self.f))
 
     def test_isConstructionAllowed_wo_Security(self):
         from AccessControl.SecurityManagement import noSecurityManager
         noSecurityManager()
-        self.failIf(self.ti.isConstructionAllowed(self.f))
+        self.assertFalse(self.ti.isConstructionAllowed(self.f))
 
     def test_isConstructionAllowed_for_Omnipotent(self):
         from AccessControl.SecurityManagement import newSecurityManager
         from Products.CMFCore.tests.base.security import OmnipotentUser
         newSecurityManager(None, OmnipotentUser().__of__(self.f))
-        self.failUnless(self.ti.isConstructionAllowed(self.f))
+        self.assertTrue(self.ti.isConstructionAllowed(self.f))
 
     def test_isConstructionAllowed_w_Role(self):
-        self.failUnless(self.ti.isConstructionAllowed(self.f))
+        self.assertTrue(self.ti.isConstructionAllowed(self.f))
 
     def test_isConstructionAllowed_wo_Role(self):
         from AccessControl.SecurityManagement import newSecurityManager
         from Products.CMFCore.tests.base.security import UserWithRoles
         newSecurityManager(None, UserWithRoles('FooViewer').__of__(self.f))
-        self.failIf(self.ti.isConstructionAllowed(self.f))
+        self.assertFalse(self.ti.isConstructionAllowed(self.f))
 
     def test_constructInstance_wo_Roles(self):
         from AccessControl.SecurityManagement import newSecurityManager
@@ -676,30 +669,29 @@
         provideHandler(_handleContainerModified)
 
         self.ti.constructInstance(self.f, 'foo')
-        self.assertEquals(len(events), 3)
+        self.assertEqual(len(events), 3)
 
         evt = events[0]
-        self.failUnless(IObjectCreatedEvent.providedBy(evt))
-        self.assertEquals(evt.object, self.f.foo)
+        self.assertTrue(IObjectCreatedEvent.providedBy(evt))
+        self.assertEqual(evt.object, self.f.foo)
 
         evt = events[1]
-        self.failUnless(IObjectAddedEvent.providedBy(evt))
-        self.assertEquals(evt.object, self.f.foo)
-        self.assertEquals(evt.oldParent, None)
-        self.assertEquals(evt.oldName, None)
-        self.assertEquals(evt.newParent, self.f)
-        self.assertEquals(evt.newName, 'foo')
+        self.assertTrue(IObjectAddedEvent.providedBy(evt))
+        self.assertEqual(evt.object, self.f.foo)
+        self.assertEqual(evt.oldParent, None)
+        self.assertEqual(evt.oldName, None)
+        self.assertEqual(evt.newParent, self.f)
+        self.assertEqual(evt.newName, 'foo')
 
         evt = events[2]
-        self.failUnless(IContainerModifiedEvent.providedBy(evt))
-        self.assertEquals(evt.object, self.f)
+        self.assertTrue(IContainerModifiedEvent.providedBy(evt))
+        self.assertEqual(evt.object, self.f)
 
 
 class FTINewstyleConstructionTests(FTIConstructionTestCase, SecurityTest):
 
     def setUp(self):
         from AccessControl.SecurityManagement import newSecurityManager
-        from zope.component import getSiteManager
         from zope.component.interfaces import IFactory
         from Products.CMFCore.tests.base.dummy import DummyFactory
         from Products.CMFCore.tests.base.dummy import DummyFolder
@@ -751,31 +743,31 @@
         provideHandler(_handleContainerModified)
 
         self.ti.constructInstance(self.f, 'foo')
-        self.assertEquals(len(events), 4)
+        self.assertEqual(len(events), 4)
 
         evt = events[0]
-        self.failUnless(IObjectCreatedEvent.providedBy(evt))
-        self.assertEquals(evt.object, self.f.foo)
+        self.assertTrue(IObjectCreatedEvent.providedBy(evt))
+        self.assertEqual(evt.object, self.f.foo)
 
         evt = events[1]
-        self.failUnless(IObjectWillBeAddedEvent.providedBy(evt))
-        self.assertEquals(evt.object, self.f.foo)
-        self.assertEquals(evt.oldParent, None)
-        self.assertEquals(evt.oldName, None)
-        self.assertEquals(evt.newParent, self.f)
-        self.assertEquals(evt.newName, 'foo')
+        self.assertTrue(IObjectWillBeAddedEvent.providedBy(evt))
+        self.assertEqual(evt.object, self.f.foo)
+        self.assertEqual(evt.oldParent, None)
+        self.assertEqual(evt.oldName, None)
+        self.assertEqual(evt.newParent, self.f)
+        self.assertEqual(evt.newName, 'foo')
 
         evt = events[2]
-        self.failUnless(IObjectAddedEvent.providedBy(evt))
-        self.assertEquals(evt.object, self.f.foo)
-        self.assertEquals(evt.oldParent, None)
-        self.assertEquals(evt.oldName, None)
-        self.assertEquals(evt.newParent, self.f)
-        self.assertEquals(evt.newName, 'foo')
+        self.assertTrue(IObjectAddedEvent.providedBy(evt))
+        self.assertEqual(evt.object, self.f.foo)
+        self.assertEqual(evt.oldParent, None)
+        self.assertEqual(evt.oldName, None)
+        self.assertEqual(evt.newParent, self.f)
+        self.assertEqual(evt.newName, 'foo')
 
         evt = events[3]
-        self.failUnless(IContainerModifiedEvent.providedBy(evt))
-        self.assertEquals(evt.object, self.f)
+        self.assertTrue(IContainerModifiedEvent.providedBy(evt))
+        self.assertEqual(evt.object, self.f)
 
 
 class DummyWorkflowTool:

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_WorkflowTool.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_WorkflowTool.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_WorkflowTool.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -34,100 +34,101 @@
 from Products.CMFCore.testing import TraversingEventZCMLLayer
 
 
-class Dummy( SimpleItem ):
+class Dummy(SimpleItem):
 
-    def __init__( self, id ):
+    def __init__(self, id):
         self._id = id
 
-    def getId( self ):
+    def getId(self):
         return self._id
 
 
-class DummyWorkflow( Dummy ):
+class DummyWorkflow(Dummy):
 
     implements(IWorkflowDefinition)
     meta_type = 'DummyWorkflow'
     _isAWorkflow = 1
-    _known_actions=()
-    _known_info=()
+    _known_actions = ()
+    _known_info = ()
 
-    def __init__( self, id ):
-        Dummy.__init__( self, id )
+    def __init__(self, id):
+        Dummy.__init__(self, id)
         self._did_action = {}
         self._gave_info = {}
         self._notified = {}
 
-    def setKnownActions( self, known_actions ):
+    def setKnownActions(self, known_actions):
         self._known_actions = known_actions
 
-    def setKnownInfo( self, known_info ):
+    def setKnownInfo(self, known_info):
         self._known_info = known_info
 
-    def didAction( self, action ):
-        return self._did_action.setdefault( action, [] )
+    def didAction(self, action):
+        return self._did_action.setdefault(action, [])
 
-    def gaveInfo( self, name ):
-        return self._gave_info.setdefault( name, [] )
+    def gaveInfo(self, name):
+        return self._gave_info.setdefault(name, [])
 
-    def notified( self, name ):
-        return self._notified.setdefault( name, [] )
+    def notified(self, name):
+        return self._notified.setdefault(name, [])
 
     #
     #   WorkflowDefinition interface
     #
-    def getCatalogVariablesFor( self, ob ):
-        return { 'dummy' : '%s: %s' % ( self.getId(), ob.getId() ) }
+    def getCatalogVariablesFor(self, ob):
+        return {'dummy': '%s: %s' % (self.getId(), ob.getId())}
 
-    def updateRoleMappingsFor( self, ob ):
+    def updateRoleMappingsFor(self, ob):
         pass
 
-    def listObjectActions( self, info ):
+    def listObjectActions(self, info):
         return () #XXX
 
-    def listGlobalActions( self, info ):
+    def listGlobalActions(self, info):
         return () #XXX
 
-    def isActionSupported( self, ob, action ):
+    def isActionSupported(self, ob, action):
         return action in self._known_actions
 
-    def doActionFor( self, ob, action, *args, **kw ):
-        self.didAction( action ).append( ob )
+    def doActionFor(self, ob, action, *args, **kw):
+        self.didAction(action).append(ob)
 
-    def isInfoSupported( self, ob, name ):
+    def isInfoSupported(self, ob, name):
         return name in self._known_info
 
-    def getInfoFor( self, ob, name, default, *args, **kw ):
-        self.gaveInfo( name ).append( ob )
+    def getInfoFor(self, ob, name, default, *args, **kw):
+        self.gaveInfo(name).append(ob)
         return name in self._known_info and 1 or 0
 
-    def notifyCreated( self, ob ):
-        self.notified( 'created' ).append( ( ob, ) )
+    def notifyCreated(self, ob):
+        self.notified('created').append((ob,))
 
-    def notifyBefore( self, ob, action ):
-        self.notified( 'before' ).append( ( ob, action ) )
+    def notifyBefore(self, ob, action):
+        self.notified('before').append((ob, action))
 
-    def notifySuccess( self, ob, action, result ):
-        self.notified( 'success' ).append( ( ob, action, result ) )
+    def notifySuccess(self, ob, action, result):
+        self.notified('success').append((ob, action, result))
 
-    def notifyException( self, ob, action, exc ):
-        self.notified( 'exception' ).append( ( ob, action, exc ) )
+    def notifyException(self, ob, action, exc):
+        self.notified('exception').append((ob, action, exc))
 
 @adapter(IActionWillBeInvokedEvent)
 def notifyBeforeHandler(evt):
-    evt.workflow.notified( 'before-evt' ).append( (evt.object, evt.action) )
+    evt.workflow.notified('before-evt').append((evt.object, evt.action))
 
 @adapter(IActionSucceededEvent)
 def notifySuccessHandler(evt):
-    evt.workflow.notified( 'success-evt' ).append( (evt.object, evt.action,
-                                                    evt.result ) )
+    evt.workflow.notified('success-evt').append((evt.object, evt.action,
+                                                 evt.result))
 
 @adapter(IActionRaisedExceptionEvent)
 def notifyExceptionHandler(evt):
-    evt.workflow.notified( 'exception-evt' ).append( (evt.object, evt.action,
-                                                      evt.exc) )
+    evt.workflow.notified('exception-evt').append((evt.object, evt.action,
+                                                   evt.exc))
 
-class DummyContent( Dummy ):
 
+class DummyContent(Dummy):
+
     implements(IContentish, IWorkflowAware)
     meta_type = 'Dummy'
 
@@ -135,24 +136,24 @@
         return 'Dummy Content'
 
 
-class DummyNotReallyContent( Dummy ):
+class DummyNotReallyContent(Dummy):
 
     meta_type = 'Dummy Content'
 
 
-class DummyTypeInfo( Dummy ):
+class DummyTypeInfo(Dummy):
 
     pass
 
 
-class DummyTypesTool( SimpleItem ):
+class DummyTypesTool(SimpleItem):
 
-    def listTypeInfo( self ):
-        return [ DummyTypeInfo( 'Dummy Content' ) ]
+    def listTypeInfo(self):
+        return [DummyTypeInfo('Dummy Content')]
 
-    def getTypeInfo( self, ob ):
-        if getattr( ob, 'meta_type', None ) is 'Dummy':
-            return DummyTypeInfo( 'Dummy Content' )
+    def getTypeInfo(self, ob):
+        if getattr(ob, 'meta_type', None) is 'Dummy':
+            return DummyTypeInfo('Dummy Content')
         return None
 
 
@@ -160,7 +161,7 @@
 
     layer = TraversingEventZCMLLayer
 
-    def _makeOne( self, workflow_ids=() ):
+    def _makeOne(self, workflow_ids=()):
         from Products.CMFCore.WorkflowTool import WorkflowTool
 
         tool = WorkflowTool()
@@ -177,14 +178,13 @@
         getSiteManager().registerUtility(DummyTypesTool(), ITypesTool)
         return root
 
-    def _makeWithTypes( self ):
+    def _makeWithTypes(self):
         root = self._makeRoot()
-        return self._makeOne( workflow_ids=( 'a', 'b' ) ).__of__( root )
+        return self._makeOne(workflow_ids=('a', 'b')).__of__(root)
 
-    def _makeWithTypesAndChain( self ):
-
+    def _makeWithTypesAndChain(self):
         tool = self._makeWithTypes()
-        tool.setChainForPortalTypes( ( 'Dummy Content', ), ( 'a', 'b' ) )
+        tool.setChainForPortalTypes(('Dummy Content',), ('a', 'b'))
         return tool
 
     def tearDown(self):
@@ -200,157 +200,146 @@
         verifyClass(IConfigurableWorkflowTool, WorkflowTool)
         verifyClass(IWorkflowTool, WorkflowTool)
 
-    def test_empty( self ):
-
+    def test_empty(self):
         from Products.CMFCore.WorkflowTool import WorkflowException
 
         tool = self._makeOne()
 
-        self.failIf( tool.getWorkflowIds() )
-        self.assertEqual( tool.getWorkflowById( 'default_workflow' ), None )
-        self.assertEqual( tool.getWorkflowById( 'a' ), None )
+        self.assertFalse(tool.getWorkflowIds())
+        self.assertEqual(tool.getWorkflowById('default_workflow'), None)
+        self.assertEqual(tool.getWorkflowById('a'), None)
 
-        self.assertRaises( WorkflowException, tool.getInfoFor, None, 'hmm' )
-        self.assertRaises( WorkflowException, tool.doActionFor, None, 'hmm' )
+        self.assertRaises(WorkflowException, tool.getInfoFor, None, 'hmm')
+        self.assertRaises(WorkflowException, tool.doActionFor, None, 'hmm')
 
-    def test_new_with_wf( self ):
-
+    def test_new_with_wf(self):
         from Products.CMFCore.WorkflowTool import WorkflowException
 
         tool = self._makeWithTypes()
 
         wfids = tool.getWorkflowIds()
-        self.assertEqual( len( wfids ), 2 )
-        self.failUnless( 'a' in wfids )
-        self.failUnless( 'b' in wfids )
-        self.assertEqual( tool.getWorkflowById( 'default' ), None )
-        wf = tool.getWorkflowById( 'a' )
-        self.assertEqual( wf.getId(), 'a' )
-        wf = tool.getWorkflowById( 'b' )
-        self.assertEqual( wf.getId(), 'b' )
+        self.assertEqual(len(wfids), 2)
+        self.assertTrue('a' in wfids)
+        self.assertTrue('b' in wfids)
+        self.assertEqual(tool.getWorkflowById('default'), None)
+        wf = tool.getWorkflowById('a')
+        self.assertEqual(wf.getId(), 'a')
+        wf = tool.getWorkflowById('b')
+        self.assertEqual(wf.getId(), 'b')
 
-        self.assertRaises( WorkflowException, tool.getInfoFor, None, 'hmm' )
-        self.assertRaises( WorkflowException, tool.doActionFor, None, 'hmm' )
+        self.assertRaises(WorkflowException, tool.getInfoFor, None, 'hmm')
+        self.assertRaises(WorkflowException, tool.doActionFor, None, 'hmm')
 
-    def test_nonContent( self ):
-
+    def test_nonContent(self):
         tool = self._makeWithTypesAndChain()
-        self.assertEquals( len( tool.getDefaultChainFor( None ) ), 0 )
-        self.assertEquals( len( tool.getDefaultChain() ), 1 )
-        self.assertEquals( len( tool.listChainOverrides() ), 1 )
-        self.assertEquals( len( tool.getChainFor( None ) ), 0 )
-        self.assertEquals( len( tool.getCatalogVariablesFor( None ) ), 0 )
+        self.assertEqual(len(tool.getDefaultChainFor(None)), 0)
+        self.assertEqual(len(tool.getDefaultChain()), 1)
+        self.assertEqual(len(tool.listChainOverrides()), 1)
+        self.assertEqual(len(tool.getChainFor(None)), 0)
+        self.assertEqual(len(tool.getCatalogVariablesFor(None)), 0)
 
-    def test_notReallyContent( self ):
-
+    def test_notReallyContent(self):
         tool = self._makeWithTypesAndChain()
-        dummy = DummyNotReallyContent( 'doh' )
-        self.assertEquals( len( tool.getDefaultChainFor( dummy ) ), 0 )
-        self.assertEquals( len( tool.getDefaultChain() ), 1 )
-        self.assertEquals( len( tool.listChainOverrides() ), 1 )
-        self.assertEquals( len( tool.getChainFor( dummy ) ), 0 )
-        self.assertEquals( len( tool.getCatalogVariablesFor( dummy ) ), 0 )
+        dummy = DummyNotReallyContent('doh')
+        self.assertEqual(len(tool.getDefaultChainFor(dummy)), 0)
+        self.assertEqual(len(tool.getDefaultChain()), 1)
+        self.assertEqual(len(tool.listChainOverrides()), 1)
+        self.assertEqual(len(tool.getChainFor(dummy)), 0)
+        self.assertEqual(len(tool.getCatalogVariablesFor(dummy)), 0)
 
-    def test_content_default_chain( self ):
-
+    def test_content_default_chain(self):
         tool = self._makeWithTypes()
-        dummy = DummyContent( 'dummy' )
-        self.assertEquals( len( tool.getDefaultChainFor( dummy ) ), 1 )
-        self.assertEquals( len( tool.getDefaultChain() ), 1 )
-        self.assertEquals( len( tool.listChainOverrides() ), 0 )
-        self.assertEquals( len( tool.getChainFor( dummy ) ), 1 )
-        self.assertEquals( len( tool.getCatalogVariablesFor( dummy ) ), 0 )
-        self.assertEquals( tool.getDefaultChain(), tool.getChainFor( dummy ) )
+        dummy = DummyContent('dummy')
+        self.assertEqual(len(tool.getDefaultChainFor(dummy)), 1)
+        self.assertEqual(len(tool.getDefaultChain()), 1)
+        self.assertEqual(len(tool.listChainOverrides()), 0)
+        self.assertEqual(len(tool.getChainFor(dummy)), 1)
+        self.assertEqual(len(tool.getCatalogVariablesFor(dummy)), 0)
+        self.assertEqual(tool.getDefaultChain(), tool.getChainFor(dummy))
 
-    def test_content_own_chain( self ):
-
+    def test_content_own_chain(self):
         tool = self._makeWithTypesAndChain()
 
-        dummy = DummyContent( 'dummy' )
+        dummy = DummyContent('dummy')
 
-        self.assertEquals( len( tool.getDefaultChainFor( dummy ) ), 1 )
-        self.assertEquals( len( tool.getDefaultChain() ), 1 )
-        self.assertEquals( len( tool.listChainOverrides() ), 1 )
-        chain = tool.getChainFor( dummy )
-        self.assertEquals( len( chain ), 2 )
-        self.failUnless( 'a' in chain )
-        self.failUnless( 'b' in chain )
+        self.assertEqual(len(tool.getDefaultChainFor(dummy)), 1)
+        self.assertEqual(len(tool.getDefaultChain()), 1)
+        self.assertEqual(len(tool.listChainOverrides()), 1)
+        chain = tool.getChainFor(dummy)
+        self.assertEqual(len(chain), 2)
+        self.assertTrue('a' in chain)
+        self.assertTrue('b' in chain)
 
-        vars = tool.getCatalogVariablesFor( dummy )
-        self.assertEquals( len( vars ), 1 )
-        self.failUnless( 'dummy' in vars.keys() )
-        self.failUnless( 'a: dummy' in vars.values() )
+        vars = tool.getCatalogVariablesFor(dummy)
+        self.assertEqual(len(vars), 1)
+        self.assertTrue('dummy' in vars.keys())
+        self.assertTrue('a: dummy' in vars.values())
 
     def test_setChainForPortalTypes(self):
-
         tool = self._makeWithTypes()
         tool.setDefaultChain('b, a')
         dummy = DummyContent('dummy')
 
-        tool.setChainForPortalTypes( ('Dummy Content',), ('a', 'b') )
-        self.assertEquals( tool.getChainFor(dummy), ('a', 'b') )
-        tool.setChainForPortalTypes( ('Dummy Content',), 'a, b' )
-        self.assertEquals( tool.getChainFor(dummy), ('a', 'b') )
+        tool.setChainForPortalTypes(('Dummy Content',), ('a', 'b'))
+        self.assertEqual(tool.getChainFor(dummy), ('a', 'b'))
+        tool.setChainForPortalTypes(('Dummy Content',), 'a, b')
+        self.assertEqual(tool.getChainFor(dummy), ('a', 'b'))
 
-        tool.setChainForPortalTypes( ('Dummy Content',), () )
-        self.assertEquals( tool.getChainFor(dummy), () )
-        tool.setChainForPortalTypes( ('Dummy Content',), '' )
-        self.assertEquals( tool.getChainFor(dummy), () )
+        tool.setChainForPortalTypes(('Dummy Content',), ())
+        self.assertEqual(tool.getChainFor(dummy), ())
+        tool.setChainForPortalTypes(('Dummy Content',), '')
+        self.assertEqual(tool.getChainFor(dummy), ())
 
-        tool.setChainForPortalTypes( ('Dummy Content',), None )
-        self.assertEquals( tool.getChainFor(dummy), ('b', 'a') )
+        tool.setChainForPortalTypes(('Dummy Content',), None)
+        self.assertEqual(tool.getChainFor(dummy), ('b', 'a'))
 
         # Using the '(Default)' keyword
         # https://bugs.launchpad.net/zope-cmf/+bug/161702
-        tool.setChainForPortalTypes( ('Dummy Content',), '(Default)' )
-        self.assertEquals( tool.getDefaultChain(), tool.getChainFor( dummy ) )
+        tool.setChainForPortalTypes(('Dummy Content',), '(Default)')
+        self.assertEqual(tool.getDefaultChain(), tool.getChainFor(dummy))
         tool.setDefaultChain('a, b')
-        self.assertEquals( tool.getDefaultChain(), tool.getChainFor( dummy ) )
+        self.assertEqual(tool.getDefaultChain(), tool.getChainFor(dummy))
 
-    def test_getCatalogVariablesFor( self ):
-
+    def test_getCatalogVariablesFor(self):
         tool = self._makeWithTypesAndChain()
-        dummy = DummyContent( 'dummy' )
+        dummy = DummyContent('dummy')
 
-        vars = tool.getCatalogVariablesFor( dummy )
-        self.assertEquals( len( vars ), 1 )
-        self.failUnless( 'dummy' in vars.keys() )
-        self.failUnless( 'a: dummy' in vars.values() )
+        vars = tool.getCatalogVariablesFor(dummy)
+        self.assertEqual(len(vars), 1)
+        self.assertTrue('dummy' in vars.keys())
+        self.assertTrue('a: dummy' in vars.values())
 
-    def test_getInfoFor( self ):
-
+    def test_getInfoFor(self):
         tool = self._makeWithTypesAndChain()
-        tool.b.setKnownInfo( ( 'info', ) )
-        dummy = DummyContent( 'dummy' )
+        tool.b.setKnownInfo(('info',))
+        dummy = DummyContent('dummy')
 
-        info = tool.getInfoFor( dummy, 'info' )
+        info = tool.getInfoFor(dummy, 'info')
 
-        self.assertEqual( info, 1 )
-        self.failIf( tool.a.gaveInfo( 'info' ) )
-        self.failUnless( tool.b.gaveInfo( 'info' ) )
+        self.assertEqual(info, 1)
+        self.assertFalse(tool.a.gaveInfo('info'))
+        self.assertTrue(tool.b.gaveInfo('info'))
 
-    def test_doActionFor( self ):
-
+    def test_doActionFor(self):
         tool = self._makeWithTypesAndChain()
-        tool.a.setKnownActions( ( 'action', ) )
-        dummy = DummyContent( 'dummy' )
+        tool.a.setKnownActions(('action',))
+        dummy = DummyContent('dummy')
 
-        tool.doActionFor( dummy, 'action' )
+        tool.doActionFor(dummy, 'action')
 
-        self.failUnless( tool.a.didAction( 'action' ) )
-        self.failIf( tool.b.didAction( 'action' ) )
+        self.assertTrue(tool.a.didAction('action'))
+        self.assertFalse(tool.b.didAction('action'))
 
-    def test_notifyCreated( self ):
-
+    def test_notifyCreated(self):
         tool = self._makeWithTypesAndChain()
 
-        ob = DummyContent( 'dummy' )
-        tool.notifyCreated( ob )
+        ob = DummyContent('dummy')
+        tool.notifyCreated(ob)
 
         for wf in tool.a, tool.b:
-            notified = wf.notified( 'created' )
-            self.assertEqual( len( notified ), 1 )
-            self.assertEqual( notified[0], ( ob, ) )
+            notified = wf.notified('created')
+            self.assertEqual(len(notified), 1)
+            self.assertEqual(notified[0], (ob,))
 
     def test_notifyCreated_skips_workflows_with_status(self):
         tool = self._makeWithTypesAndChain()
@@ -361,65 +350,62 @@
         tool.notifyCreated(ob)
 
         notified = tool.a.notified('created')
-        self.assertEqual( len(notified), 0 )
+        self.assertEqual(len(notified), 0)
 
         notified = tool.b.notified('created')
-        self.assertEqual( len(notified), 1 )
-        self.assertEqual( notified[0], (ob,) )
+        self.assertEqual(len(notified), 1)
+        self.assertEqual(notified[0], (ob,))
 
-    def test_notifyBefore( self ):
-
+    def test_notifyBefore(self):
         provideHandler(notifyBeforeHandler)
 
         tool = self._makeWithTypesAndChain()
 
-        ob = DummyContent( 'dummy' )
-        tool.notifyBefore( ob, 'action' )
+        ob = DummyContent('dummy')
+        tool.notifyBefore(ob, 'action')
 
         for wf in tool.a, tool.b:
-            notified = wf.notified( 'before' )
-            self.assertEqual( len( notified ), 1 )
-            self.assertEqual( notified[0], ( ob, 'action' ) )
+            notified = wf.notified('before')
+            self.assertEqual(len(notified), 1)
+            self.assertEqual(notified[0], (ob, 'action'))
 
-            notified = wf.notified( 'before-evt' )
-            self.assertEqual( len( notified ), 1 )
-            self.assertEqual( notified[0], ( ob, 'action' ) )
+            notified = wf.notified('before-evt')
+            self.assertEqual(len(notified), 1)
+            self.assertEqual(notified[0], (ob, 'action'))
 
-    def test_notifySuccess( self ):
-
+    def test_notifySuccess(self):
         provideHandler(notifySuccessHandler)
 
         tool = self._makeWithTypesAndChain()
 
-        ob = DummyContent( 'dummy' )
-        tool.notifySuccess( ob, 'action' )
+        ob = DummyContent('dummy')
+        tool.notifySuccess(ob, 'action')
 
         for wf in tool.a, tool.b:
-            notified = wf.notified( 'success' )
-            self.assertEqual( len( notified ), 1 )
-            self.assertEqual( notified[0], ( ob, 'action', None ) )
+            notified = wf.notified('success')
+            self.assertEqual(len(notified), 1)
+            self.assertEqual(notified[0], (ob, 'action', None))
 
-            notified = wf.notified( 'success-evt' )
-            self.assertEqual( len( notified ), 1 )
-            self.assertEqual( notified[0], ( ob, 'action', None ) )
+            notified = wf.notified('success-evt')
+            self.assertEqual(len(notified), 1)
+            self.assertEqual(notified[0], (ob, 'action', None))
 
-    def test_notifyException( self ):
-
+    def test_notifyException(self):
         provideHandler(notifyExceptionHandler)
 
         tool = self._makeWithTypesAndChain()
 
-        ob = DummyContent( 'dummy' )
-        tool.notifyException( ob, 'action', 'exception' )
+        ob = DummyContent('dummy')
+        tool.notifyException(ob, 'action', 'exception')
 
         for wf in tool.a, tool.b:
-            notified = wf.notified( 'exception' )
-            self.assertEqual( len( notified ), 1 )
-            self.assertEqual( notified[0], ( ob, 'action', 'exception' ) )
+            notified = wf.notified('exception')
+            self.assertEqual(len(notified), 1)
+            self.assertEqual(notified[0], (ob, 'action', 'exception'))
 
-            notified = wf.notified( 'exception-evt' )
-            self.assertEqual( len( notified ), 1 )
-            self.assertEqual( notified[0], ( ob, 'action', 'exception' ) )
+            notified = wf.notified('exception-evt')
+            self.assertEqual(len(notified), 1)
+            self.assertEqual(notified[0], (ob, 'action', 'exception'))
 
     def test_getStatusOf(self):
         tool = self._makeWithTypesAndChain()
@@ -429,7 +415,7 @@
         dummy_status1 = object()
         ob.workflow_history = {'a': (dummy_status0, dummy_status1)}
 
-        self.assertEqual( tool.getStatusOf('a', ob), dummy_status1 )
+        self.assertEqual(tool.getStatusOf('a', ob), dummy_status1)
 
     def test_setStatusOf(self):
         tool = self._makeWithTypesAndChain()
@@ -438,19 +424,19 @@
         dummy_status0 = object()
         tool.setStatusOf('a', ob, dummy_status0)
 
-        self.failUnless( 'a' in ob.workflow_history )
-        self.assertEqual( len(ob.workflow_history['a']), 1 )
-        self.assertEqual( ob.workflow_history['a'][0], dummy_status0 )
+        self.assertTrue('a' in ob.workflow_history)
+        self.assertEqual(len(ob.workflow_history['a']), 1)
+        self.assertEqual(ob.workflow_history['a'][0], dummy_status0)
 
         dummy_status1 = object()
         tool.setStatusOf('a', ob, dummy_status1)
 
-        self.failUnless( 'a' in ob.workflow_history )
-        self.assertEqual( len(ob.workflow_history['a']), 2 )
-        self.assertEqual( ob.workflow_history['a'][0], dummy_status0 )
-        self.assertEqual( ob.workflow_history['a'][1], dummy_status1 )
+        self.assertTrue('a' in ob.workflow_history)
+        self.assertEqual(len(ob.workflow_history['a']), 2)
+        self.assertEqual(ob.workflow_history['a'][0], dummy_status0)
+        self.assertEqual(ob.workflow_history['a'][1], dummy_status1)
 
-    def xxx_test_updateRoleMappings( self ):
+    def xxx_test_updateRoleMappings(self):
         """
             Build a tree of objects, invoke tool.updateRoleMappings,
             and then check to see that the workflows each got called;

Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_utils.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_utils.py	2012-04-22 11:03:11 UTC (rev 125227)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_utils.py	2012-04-22 11:04:10 UTC (rev 125228)
@@ -28,57 +28,47 @@
     def test_normalize(self):
         from Products.CMFCore.utils import normalize
 
-        self.assertEqual( normalize('foo/bar'), 'foo/bar' )
-        self.assertEqual( normalize('foo\\bar'), 'foo/bar' )
+        self.assertEqual(normalize('foo/bar'), 'foo/bar')
+        self.assertEqual(normalize('foo\\bar'), 'foo/bar')
 
     def test_keywordsplitter_empty(self):
         from Products.CMFCore.utils import keywordsplitter
 
-        for x in [ '', ' ', ',', ',,', ';', ';;' ]:
-            self.assertEqual( keywordsplitter({'Keywords': x}), 
-                              [] )
+        for x in ['', ' ', ',', ',,', ';', ';;']:
+            self.assertEqual(keywordsplitter({'Keywords': x}), [])
 
     def test_keywordsplitter_single(self):
         from Products.CMFCore.utils import keywordsplitter
 
-        for x in [ 'foo', ' foo ', 'foo,', 'foo ,,', 'foo;', 'foo ;;' ]:
-            self.assertEqual( keywordsplitter({'Keywords': x}), 
-                              ['foo'] )
+        for x in ['foo', ' foo ', 'foo,', 'foo ,,', 'foo;', 'foo ;;']:
+            self.assertEqual(keywordsplitter({'Keywords': x}), ['foo'])
 
     def test_keywordsplitter_multi(self):
         from Products.CMFCore.utils import keywordsplitter
 
-        for x in [ 'foo, bar, baz'
-                 , 'foo, bar , baz'
-                 , 'foo, bar,, baz'
-                 , 'foo; bar; baz'
-                 ]:
-            self.assertEqual( keywordsplitter({'Keywords': x}), 
-                              ['foo', 'bar', 'baz'] )
+        for x in ['foo, bar, baz', 'foo, bar , baz', 'foo, bar,, baz',
+                  'foo; bar; baz']:
+            self.assertEqual(keywordsplitter({'Keywords': x}),
+                             ['foo', 'bar', 'baz'])
 
     def test_contributorsplitter_emtpy(self):
         from Products.CMFCore.utils import contributorsplitter
 
-        for x in [ '', ' ', ';', ';;' ]:
-            self.assertEqual( contributorsplitter({'Contributors': x}), 
-                              [] )
+        for x in ['', ' ', ';', ';;']:
+            self.assertEqual(contributorsplitter({'Contributors': x}), [])
 
     def test_contributorsplitter_single(self):
         from Products.CMFCore.utils import contributorsplitter
 
-        for x in [ 'foo', ' foo ', 'foo;', 'foo ;;' ]:
-            self.assertEqual( contributorsplitter({'Contributors': x}), 
-                              ['foo'] )
+        for x in ['foo', ' foo ', 'foo;', 'foo ;;']:
+            self.assertEqual(contributorsplitter({'Contributors': x}), ['foo'])
 
     def test_contributorsplitter_multi(self):
         from Products.CMFCore.utils import contributorsplitter
 
-        for x in [ 'foo; bar; baz'
-                 , 'foo; bar ; baz'
-                 , 'foo; bar;; baz'
-                 ]:
-            self.assertEqual( contributorsplitter({'Contributors': x}), 
-                              ['foo', 'bar', 'baz'] )
+        for x in ['foo; bar; baz', 'foo; bar ; baz', 'foo; bar;; baz']:
+            self.assertEqual(contributorsplitter({'Contributors': x}),
+                             ['foo', 'bar', 'baz'])
 
     def test_getPackageName(self):
         from Products.CMFCore.utils import getPackageName
@@ -91,11 +81,11 @@
         from Products.CMFCore.utils import getContainingPackage
 
         self.assertEqual(getContainingPackage('Products.CMFCore.exceptions'),
-                'Products.CMFCore')
+                         'Products.CMFCore')
         self.assertEqual(getContainingPackage('Products.CMFCore'),
-                'Products.CMFCore')
+                         'Products.CMFCore')
         self.assertEqual(getContainingPackage('zope.interface.verify'),
-                'zope.interface')
+                         'zope.interface')
 
     def test_ImmutableId(self):
         from Products.CMFCore.utils import ImmutableId
@@ -179,8 +169,8 @@
         class _DummyObject(Owned, DummyObject):
             pass
 
-        site = DummySite('site').__of__(self.root)
-        site._setObject( 'acl_users', DummyUserFolder() )
+        site = DummySite('site').__of__(self.app)
+        site._setObject('acl_users', DummyUserFolder())
         site._setObject('foo_dummy', _DummyObject(id='foo_dummy'))
         site._setObject('bar_dummy', _DummyObject(id='bar_dummy'))
 
@@ -198,25 +188,25 @@
         site = self._makeSite()
         newSecurityManager(None, site.acl_users.user_foo)
         o = site.bar_dummy
-        Permission('View',(),o).setRoles(('Anonymous',))
-        Permission('WebDAV access',(),o).setRoles(('Authenticated',))
-        Permission('Manage users',(),o).setRoles(('Manager',))
+        Permission('View', (), o).setRoles(('Anonymous',))
+        Permission('WebDAV access', (), o).setRoles(('Authenticated',))
+        Permission('Manage users', (), o).setRoles(('Manager',))
         eo = site.foo_dummy
         eo._owner = (['acl_users'], 'all_powerful_Oz')
         getSecurityManager().addContext(eo)
-        self.failUnless( _checkPermission('View', o) )
-        self.failUnless( _checkPermission('WebDAV access', o) )
-        self.failIf( _checkPermission('Manage users', o) )
+        self.assertTrue(_checkPermission('View', o))
+        self.assertTrue(_checkPermission('WebDAV access', o))
+        self.assertFalse(_checkPermission('Manage users', o))
 
         eo._proxy_roles = ('Authenticated',)
-        self.failIf( _checkPermission('View', o) )
-        self.failUnless( _checkPermission('WebDAV access', o) )
-        self.failIf( _checkPermission('Manage users', o) )
+        self.assertFalse(_checkPermission('View', o))
+        self.assertTrue(_checkPermission('WebDAV access', o))
+        self.assertFalse(_checkPermission('Manage users', o))
 
         eo._proxy_roles = ('Manager',)
-        self.failIf( _checkPermission('View', o) )
-        self.failIf( _checkPermission('WebDAV access', o) )
-        self.failUnless( _checkPermission('Manage users', o) )
+        self.assertFalse(_checkPermission('View', o))
+        self.assertFalse(_checkPermission('WebDAV access', o))
+        self.assertTrue(_checkPermission('Manage users', o))
 
     def test_mergedLocalRolesManipulation(self):
         # The _mergedLocalRoles function used to return references to



More information about the checkins mailing list