[CMF-checkins] CVS: CMF/CMFCore/tests/base - dummy.py:1.1.2.8
Chris Withers
chrisw@nipltd.com
Fri, 15 Feb 2002 13:49:03 -0500
Update of /cvs-repository/CMF/CMFCore/tests/base
In directory cvs.zope.org:/tmp/cvs-serv29354/CMFCore/tests/base
Modified Files:
Tag: ChrisW-refactor_tests-branch
dummy.py
Log Message:
Done Favorite
=== CMF/CMFCore/tests/base/dummy.py 1.1.2.7 => 1.1.2.8 ===
+from Acquisition import Implicit, aq_inner, aq_parent
from OFS.SimpleItem import Item
from Products.CMFCore.PortalContent import PortalContent
from Products.CMFCore.TypesTool import TypeInformation
from Products.CMFCore.TypesTool import FactoryTypeInformation
from Products.CMFCore.ActionProviderBase import ActionProviderBase
-class DummyObject:
+class DummyObject(Implicit):
"""
- A dummy callable object
+ A dummy callable object.
+ Comes with getIcon and restrictedTraverse
+ methods.
"""
def __init__(self, name='dummy',**kw):
self.name = name
@@ -19,6 +21,12 @@
def __call__(self):
return self.name
+ def restrictedTraverse( self, path ):
+ return path and getattr( self, path ) or self
+
+ def getIcon( self, relative=0 ):
+ return 'Site: %s' % relative
+
class DummyContent( PortalContent, Item ):
"""
A Dummy piece of PortalContent
@@ -151,10 +159,11 @@
def _setObject(self,id,object):
setattr(self,id,object)
-class DummyTool(ActionProviderBase):
+class DummyTool(Implicit,ActionProviderBase):
"""
- This is a Dummy Tool that behaves as both
- a MemberShipTool and an Action Provider
+ This is a Dummy Tool that behaves as a
+ a MemberShipTool, a URLTool and an
+ Action Provider
"""
_actions = [
@@ -162,6 +171,8 @@
DummyObject()
]
+ root = 'DummyTool'
+
def __init__(self, anon=1):
self.anon = anon
@@ -171,3 +182,13 @@
def getAuthenticatedMember(self):
return "member"
+ def __call__( self ):
+ return self.root
+
+ getPortalPath = __call__
+
+ def getPortalObject( self ):
+ return aq_parent( aq_inner( self ) )
+
+ def getIcon( self, relative=0 ):
+ return 'Tool: %s' % relative