[Checkins] SVN: zope.container/trunk/src/zope/container/ remove site specific parts and re-added the tests for folder
Jan-Wijbrand Kolman
janwijbrand at gmail.com
Fri Jan 30 05:52:22 EST 2009
Log message for revision 95542:
remove site specific parts and re-added the tests for folder
Changed:
U zope.container/trunk/src/zope/container/folder.py
A zope.container/trunk/src/zope/container/tests/test_folder.py
-=-
Modified: zope.container/trunk/src/zope/container/folder.py
===================================================================
--- zope.container/trunk/src/zope/container/folder.py 2009-01-30 10:34:44 UTC (rev 95541)
+++ zope.container/trunk/src/zope/container/folder.py 2009-01-30 10:52:22 UTC (rev 95542)
@@ -18,18 +18,16 @@
__docformat__ = 'restructuredtext'
from BTrees.OOBTree import OOBTree
-from interfaces import IFolder, IRootFolder
from persistent import Persistent
+from zope.container.interfaces import IContainer
from zope.container.contained import Contained, setitem, uncontained
-from zope.app.component.interfaces import ISite
-from zope.app.component.site import SiteManagerContainer
from zope.exceptions import DuplicationError
from zope.interface import implements, directlyProvides
-class Folder(Persistent, SiteManagerContainer, Contained):
+class Folder(Persistent, Contained):
"""The standard Zope Folder implementation."""
- implements(IFolder)
+ implements(IContainer)
def __init__(self):
self.data = OOBTree()
@@ -99,49 +97,3 @@
uncontained(self.data[name], self, name)
del self.data[name]
-def rootFolder():
- f = Folder()
- directlyProvides(f, IRootFolder)
- return f
-
-class FolderSublocations(object):
- """Get the sublocations of a folder
-
- The subobjects of a folder include it's contents and it's site manager if
- it is a site.
-
- >>> folder = Folder()
- >>> folder['ob1'] = Contained()
- >>> folder['ob2'] = Contained()
- >>> folder['ob3'] = Contained()
- >>> subs = list(FolderSublocations(folder).sublocations())
- >>> subs.remove(folder['ob1'])
- >>> subs.remove(folder['ob2'])
- >>> subs.remove(folder['ob3'])
- >>> subs
- []
-
- >>> sm = Contained()
- >>> from zope.component.interfaces import IComponentLookup
- >>> directlyProvides(sm, IComponentLookup)
- >>> folder.setSiteManager(sm)
- >>> directlyProvides(folder, ISite)
- >>> subs = list(FolderSublocations(folder).sublocations())
- >>> subs.remove(folder['ob1'])
- >>> subs.remove(folder['ob2'])
- >>> subs.remove(folder['ob3'])
- >>> subs.remove(sm)
- >>> subs
- []
- """
-
- def __init__(self, folder):
- self.folder = folder
-
- def sublocations(self):
- folder = self.folder
- for key in folder:
- yield folder[key]
-
- if ISite.providedBy(folder):
- yield folder.getSiteManager()
Added: zope.container/trunk/src/zope/container/tests/test_folder.py
===================================================================
--- zope.container/trunk/src/zope/container/tests/test_folder.py (rev 0)
+++ zope.container/trunk/src/zope/container/tests/test_folder.py 2009-01-30 10:52:22 UTC (rev 95542)
@@ -0,0 +1,25 @@
+from unittest import TestCase, makeSuite
+
+from zope.container.folder import Folder
+
+from zope.container.tests.test_icontainer import BaseTestIContainer
+from zope.container.tests.test_icontainer import DefaultTestData
+
+
+class Test(BaseTestIContainer, TestCase):
+
+ def makeTestObject(self):
+ return Folder()
+
+ def makeTestData(self):
+ return DefaultTestData()
+
+ def getUnknownKey(self):
+ return '10'
+
+ def getBadKeyTypes(self):
+ return [None, ['foo'], 1, '\xf3abc']
+
+def test_suite():
+ return makeSuite(Test)
+
More information about the Checkins
mailing list