[Checkins] SVN: zope.intid/trunk/ Removed ``zope.app.testing`` dependency
Nikolay Kim
fafhrd91 at gmail.com
Sun Dec 27 01:03:03 EST 2009
Log message for revision 107139:
Removed ``zope.app.testing`` dependency
Changed:
U zope.intid/trunk/CHANGES.txt
U zope.intid/trunk/setup.py
U zope.intid/trunk/src/zope/intid/interfaces.py
U zope.intid/trunk/src/zope/intid/tests.py
-=-
Modified: zope.intid/trunk/CHANGES.txt
===================================================================
--- zope.intid/trunk/CHANGES.txt 2009-12-27 04:42:25 UTC (rev 107138)
+++ zope.intid/trunk/CHANGES.txt 2009-12-27 06:03:02 UTC (rev 107139)
@@ -7,6 +7,9 @@
- Use the zope.component API in favor of ztapi.
+- Removed ``zope.app.testing`` dependency
+
+
3.7.1 (2009-05-18)
------------------
Modified: zope.intid/trunk/setup.py
===================================================================
--- zope.intid/trunk/setup.py 2009-12-27 04:42:25 UTC (rev 107138)
+++ zope.intid/trunk/setup.py 2009-12-27 06:03:02 UTC (rev 107139)
@@ -52,8 +52,10 @@
packages=find_packages('src'),
package_dir = {'': 'src'},
namespace_packages=['zope'],
- extras_require = dict(test=['zope.app.testing',
- 'zope.site']),
+ extras_require = dict(test=['zope.testing',
+ 'zope.site',
+ 'zope.traversing',
+ 'zope.container',]),
install_requires = ['setuptools',
'ZODB3',
'zope.lifecycleevent>=3.5.2',
Modified: zope.intid/trunk/src/zope/intid/interfaces.py
===================================================================
--- zope.intid/trunk/src/zope/intid/interfaces.py 2009-12-27 04:42:25 UTC (rev 107138)
+++ zope.intid/trunk/src/zope/intid/interfaces.py 2009-12-27 06:03:02 UTC (rev 107139)
@@ -98,7 +98,7 @@
The event gets sent when an object is registered in a
unique id utility.
"""
-
+
idmap = Attribute("The dictionary that holds an (utility -> id) mapping of created ids")
Modified: zope.intid/trunk/src/zope/intid/tests.py
===================================================================
--- zope.intid/trunk/src/zope/intid/tests.py 2009-12-27 04:42:25 UTC (rev 107138)
+++ zope.intid/trunk/src/zope/intid/tests.py 2009-12-27 06:03:02 UTC (rev 107139)
@@ -20,22 +20,54 @@
import BTrees
from persistent import Persistent
from persistent.interfaces import IPersistent
-from zope.app.testing import setup
from ZODB.interfaces import IConnection
from zope.component import getSiteManager
from zope.component import provideAdapter
from zope.component import provideHandler
-from zope.interface import implements
+from zope.component import testing, eventtesting
+from zope.component.interfaces import ISite, IComponentLookup
+from zope.interface import implements, Interface
from zope.interface.verify import verifyObject
from zope.keyreference.persistent import KeyReferenceToPersistent
from zope.keyreference.persistent import connectionOfPersistent
from zope.keyreference.interfaces import IKeyReference
from zope.location.interfaces import ILocation
-from zope.site.hooks import setSite
+from zope.site.hooks import setSite, setHooks, resetHooks
+from zope.site.folder import rootFolder
+from zope.site.site import SiteManagerAdapter, LocalSiteManager
+from zope.traversing import api
+from zope.traversing.testing import setUp as traversingSetUp
+from zope.traversing.interfaces import ITraversable
+from zope.container.traversal import ContainerTraversable
+from zope.container.interfaces import ISimpleReadContainer
from zope.intid import IntIds, intIdEventNotify
from zope.intid.interfaces import IIntIds
+
+# Local Utility Addition
+def addUtility(sitemanager, name, iface, utility, suffix=''):
+ """Add a utility to a site manager
+
+ This helper function is useful for tests that need to set up utilities.
+ """
+ folder_name = (name or (iface.__name__ + 'Utility')) + suffix
+ default = sitemanager['default']
+ default[folder_name] = utility
+ utility = default[folder_name]
+ sitemanager.registerUtility(utility, iface, name)
+ return utility
+
+
+# setup siteManager
+def createSiteManager(folder, setsite=False):
+ if not ISite.providedBy(folder):
+ folder.setSiteManager(LocalSiteManager(folder))
+ if setsite:
+ setSite(folder)
+ return api.traverse(folder, "++etc++site")
+
+
class P(Persistent):
implements(ILocation)
@@ -56,14 +88,27 @@
class ReferenceSetupMixin(object):
"""Registers adapters ILocation->IConnection and IPersistent->IReference"""
+
def setUp(self):
- self.root = setup.placefulSetUp(site=True)
+ testing.setUp()
+ eventtesting.setUp()
+ traversingSetUp()
+ setHooks()
+ provideAdapter(ContainerTraversable,
+ (ISimpleReadContainer,), ITraversable)
+ provideAdapter(SiteManagerAdapter, (Interface,), IComponentLookup)
+
+ self.root = rootFolder()
+ createSiteManager(self.root, setsite=True)
+
provideAdapter(connectionOfPersistent, (IPersistent, ), IConnection)
provideAdapter(
KeyReferenceToPersistent, (IPersistent, ), IKeyReference)
def tearDown(self):
- setup.placefulTearDown()
+ resetHooks()
+ setSite()
+ testing.tearDown()
class TestIntIds(ReferenceSetupMixin, unittest.TestCase):
@@ -130,7 +175,6 @@
obj = P()
obj._p_jar = ConnectionStub()
-
self.assertEquals(len(u), 0)
self.assertEquals(u.items(), [])
self.assertEquals(list(u), [])
@@ -185,15 +229,15 @@
ReferenceSetupMixin.setUp(self)
sm = getSiteManager(self.root)
- self.utility = setup.addUtility(sm, '1', IIntIds, IntIds())
+ self.utility = addUtility(sm, '1', IIntIds, IntIds())
self.root['folder1'] = Folder()
self.root._p_jar = ConnectionStub()
self.root['folder1']['folder1_1'] = self.folder1_1 = Folder()
self.root['folder1']['folder1_1']['folder1_1_1'] = Folder()
- sm1_1 = setup.createSiteManager(self.folder1_1)
- self.utility1 = setup.addUtility(sm1_1, '2', IIntIds, IntIds())
+ sm1_1 = createSiteManager(self.folder1_1)
+ self.utility1 = addUtility(sm1_1, '2', IIntIds, IntIds())
provideHandler(intIdEventNotify)
def test_removeIntIdSubscriber(self):
More information about the checkins
mailing list