コード例 #1
0
    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())
        wtool = site._setObject('portal_workflow', DummyTool())

        # permission
        mtool.createMemberArea('user_foo')
        self.failIf(hasattr(members.aq_self, 'user_foo'))
        newSecurityManager(None, acl_users.user_bar)
        mtool.createMemberArea('user_foo')
        self.failIf(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'))
        newSecurityManager(None, acl_users.all_powerful_Oz)
        mtool.setMemberareaCreationFlag()
        mtool.createMemberArea('user_foo')
        self.failUnless(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()))
コード例 #2
0
 def setUp(self):
     SecurityTest.setUp(self)
     self.site = DummySite('site')
     sm = getSiteManager()
     self.site._setObject('portal_discussion', self._makeOne())
     sm.registerUtility(self.site.portal_discussion, IDiscussionTool)
     self.site._setObject('portal_types', DummyTool())
コード例 #3
0
    def test_createMemberArea(self):
        mtool = self.site.portal_membership
        members = self.site._setObject('Members', PortalFolder('Members'))
        acl_users = self.site._setObject('acl_users', DummyUserFolder())
        wtool = self.site._setObject('portal_workflow', DummyTool())

        # permission
        mtool.createMemberArea('user_foo')
        self.failIf(hasattr(members.aq_self, 'user_foo'))
        newSecurityManager(None, acl_users.user_bar)
        mtool.createMemberArea('user_foo')
        self.failIf(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'))
        newSecurityManager(None, acl_users.all_powerful_Oz)
        mtool.setMemberareaCreationFlag()
        mtool.createMemberArea('user_foo')
        self.failUnless(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()))
コード例 #4
0
ファイル: test_Discussions.py プロジェクト: bendavis78/zope
 def setUp(self):
     SecurityTest.setUp(self)
     self.site = DummySite('site').__of__(self.root)
     sm = getSiteManager()
     self.site._setObject('portal_discussion', DiscussionTool())
     sm.registerUtility(self.site.portal_discussion, IDiscussionTool)
     self.site._setObject('portal_membership', DummyTool())
     self.site._setObject('portal_types', TypesTool())
コード例 #5
0
    def setUp(self):
        from Products.CMFCore.MembershipTool import BBBHomeFolderFactory

        SecurityTest.setUp(self)
        sm = getSiteManager()
        sm.registerUtility(DummyTool(), IWorkflowTool)
        sm.registerUtility(BBBHomeFolderFactory, IFactory,
                           'cmf.folder.home.bbb1')
コード例 #6
0
ファイル: test_DCWorkflow.py プロジェクト: bendavis78/zope
    def setUp(self):
        from Products.DCWorkflow.DCWorkflow import DCWorkflowDefinition

        self.site = DummySite('site')
        self.site._setObject('portal_types', DummyTool())
        self.site._setObject('portal_workflow', WorkflowTool())
        addWorkflowFactory(DCWorkflowDefinition)
        self._constructDummyWorkflow()
コード例 #7
0
 def setUp(self):
     SecurityTest.setUp(self)
     self.root._setObject('site', DummySite('site'))
     self.site = self.root._getOb('site')
     self.site._setObject('portal_types', DummyTool())
     self.site._setObject('portal_workflow', WorkflowTool())
     self._constructDummyWorkflow()
     transaction.savepoint(optimistic=True)
     newSecurityManager(None, OmnipotentUser().__of__(self.site))
コード例 #8
0
    def setUp(self):
        self.site = DummySite('site')
        self.site._setObject('portal_types', DummyTool())
        self.site._setObject('portal_workflow', WorkflowTool())

        # Construct a workflow
        wftool = self.site.portal_workflow
        wftool._setObject('wf', DCWorkflowDefinition('wf'))
        wftool.setDefaultChain('wf')
コード例 #9
0
ファイル: test_guard.py プロジェクト: bendavis78/zope
    def setUp(self):
        self.site = DummySite('site')
        self.site._setObject('portal_types', DummyTool())
        self.site._setObject('portal_workflow', WorkflowTool())
        addWorkflowFactory(DCWorkflowDefinition)

        # Construct a workflow
        wftool = self.site.portal_workflow
        wftool.manage_addWorkflow('Workflow (DC Workflow Definition)', 'wf')
        wftool.setDefaultChain('wf')
コード例 #10
0
    def setUp(self):
        self.site = DummySite('site')

        # Construct a workflow
        self.wtool = WorkflowTool()
        self.wtool._setObject('wf', DCWorkflowDefinition('wf'))
        self.wtool.setDefaultChain('wf')
        sm = getSiteManager()
        sm.registerUtility(self.wtool, IWorkflowTool)
        sm.registerUtility(DummyTool(), ITypesTool)
コード例 #11
0
ファイル: test_DCWorkflow.py プロジェクト: bendavis78/zope
 def setUp(self):
     SecurityTest.setUp(self)
     self.app._setObject('site', DummySite('site'))
     self.site = self.app._getOb('site')
     self.wtool = self.site._setObject('portal_workflow', WorkflowTool())
     self._constructDummyWorkflow()
     transaction.savepoint(optimistic=True)
     newSecurityManager(None, OmnipotentUser().__of__(self.site))
     sm = getSiteManager()
     sm.registerUtility(self.wtool, IWorkflowTool)
     sm.registerUtility(DummyTool(), ITypesTool)
コード例 #12
0
ファイル: test_Worklist.py プロジェクト: bendavis78/zope
 def setUp(self):
     self.site = DummySite('site')
     self.site._path = ''
     self.site._setObject('portal_catalog', CatalogTool())
     self.site.portal_catalog.addIndex('state', 'KeywordIndex')
     self.site._setObject('portal_types', DummyTool())
     self.site._setObject('portal_workflow', WorkflowTool())
     self.site._setObject('dummy', DummyContent('dummy'))
     self.site.dummy.state = 'private'
     self.site.portal_catalog.catalog_object(self.site.dummy)
     self._constructDummyWorkflow()
コード例 #13
0
    def test_deleteMembers(self):
        mtool = self.site.portal_membership
        members = self.site._setObject('Members', PortalFolder('Members'))
        acl_users = self.site._setObject('acl_users', DummyUserFolder())
        utool = self.site._setObject('portal_url', DummyTool())
        wtool = self.site._setObject('portal_workflow', DummyTool())
        mdtool = self.site._setObject('portal_memberdata', MemberDataTool())
        newSecurityManager(None, acl_users.all_powerful_Oz)

        self.assertEqual(acl_users.getUserById('user_foo'), acl_users.user_foo)
        mtool.createMemberArea('user_foo')
        self.failUnless(hasattr(members.aq_self, 'user_foo'))
        mdtool.registerMemberData('Dummy', 'user_foo')
        self.failUnless(mdtool._members.has_key('user_foo'))

        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'))
コード例 #14
0
 def test_createMemberarea(self):
     mtool = self.mtool
     self.site._setObject('Members', DummyFolder())
     self.site._setObject('acl_users', DummyUserFolder())
     self.site._setObject('portal_workflow', DummyTool())
     self.site.user_bar = 'test attribute'
     mtool.createMemberarea('user_foo')
     self.failUnless(hasattr(self.site.Members.aq_self, 'user_foo'))
     mtool.createMemberarea('user_bar')
     self.failUnless(hasattr(self.site.Members.aq_self, 'user_bar'),
                     'CMF Collector issue #102 (acquisition bug)')
コード例 #15
0
    def setUp(self):

        self.site = DummySite('site')
        self.site._setObject('portal_types', DummyTool())
        self.site._setObject('portal_workflow', WorkflowTool())
        self.site._setObject('portal_membership', MembershipTool())
        self.site._setObject('acl_users', DummyUserFolder())

        addWorkflowFactory(DefaultWorkflowDefinition,
                           id='default_workflow', title='default_workflow')

        self._constructDummyWorkflow()
コード例 #16
0
 def setUp(self):
     SecurityRequestTest.setUp(self)
     self.site = DummySite('site').__of__(self.root)
     sm = getSiteManager()
     sm.registerUtility(self.site, ISiteRoot)
     self.site._setObject('portal_membership', DummyTool())
     sm.registerUtility(self.site.portal_membership, IMembershipTool)
     self.site._setObject('portal_types', TypesTool())
     sm.registerUtility(self.site.portal_types, ITypesTool)
     fti = FTIDATA_CMF15[0].copy()
     self.site.portal_types._setObject('Dummy Content 15', FTI(**fti))
     self.site._setObject('foo', DummyContent())
コード例 #17
0
ファイル: test_PortalContent.py プロジェクト: bendavis78/zope
    def _setupCallTests(self, aliases):
        # root
        root = Folder('root')

        # set up dummy type info with problematic double-default alias
        root._setObject('portal_types', DummyTool())
        root.portal_types._type_actions = aliases

        # dummy content and skin
        root._setObject('dummycontent', DummyContent())
        root._setObject('dummy_view', DummyObject())
        return root.dummycontent
コード例 #18
0
    def _setupCallTests(self, aliases):
        # root
        root = Folder('root')

        # set up dummy type info with problematic double-default alias
        ttool = DummyTool()
        ttool._type_actions = aliases
        getSiteManager().registerUtility(ttool, ITypesTool)

        # dummy content and skin
        root._setObject('dummycontent', DummyContent())
        root._setObject('dummy_view', DummyObject())
        return root.dummycontent
コード例 #19
0
    def test_createMemberarea(self):
        mtool = self.mtool
        self.site._setObject( 'Members', PortalFolder('Members') )
        self.site._setObject( 'acl_users', DummyUserFolder() )
        self.site._setObject( 'portal_workflow', DummyTool() )
        mtool.createMemberarea('user_foo')

        f = self.site.Members.user_foo
        ownership = self.site.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() ) )
コード例 #20
0
ファイル: test_PortalContent.py プロジェクト: bendavis78/zope
    def _setupCallTests(self, aliases):
        sm = getSiteManager()

        # root
        root = Folder('root')

        # set up dummy type info with problematic double-default alias
        root._setObject('portal_types', DummyTool())
        sm.registerUtility(root.portal_types, ITypesTool)
        root.portal_types._type_actions = aliases

        # dummy content and skin
        root._setObject('dummycontent', DummyContent())
        root._setObject('dummy_view', DummyObject())
        return root.dummycontent
コード例 #21
0
    def test_createMemberArea(self):
        mtool = self.site.portal_membership
        members = self.site._setObject('Members', PortalFolder('Members'))
        acl_users = self.site._setObject('acl_users', DummyUserFolder())
        wtool = DummyTool()
        getSiteManager().registerUtility(wtool, IWorkflowTool)

        # permission
        mtool.createMemberArea('user_foo')
        self.failIf(hasattr(members.aq_self, 'user_foo'))
        newSecurityManager(None, acl_users.user_bar)
        mtool.createMemberArea('user_foo')
        self.failIf(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'))
        newSecurityManager(None, acl_users.all_powerful_Oz)
        mtool.setMemberareaCreationFlag()
        mtool.createMemberArea('user_foo')
        self.failUnless(hasattr(members.aq_self, 'user_foo'))

        # default content
        f = members.user_foo
        ownership = acl_users.user_foo
        localroles = (('user_foo', ('Owner', )), )
        self.assertEqual(f.Title(), "user_foo's Home")
        self.assertEqual(f.getOwner(), ownership)
        self.assertEqual(
            f.get_local_roles(), localroles,
            'CMF Collector issue #162 (LocalRoles broken): %s' %
            str(f.get_local_roles()))
        self.assertEqual(
            f.index_html.getOwner(), ownership,
            'CMF Collector issue #162 (Ownership broken): %s' %
            str(f.index_html.getOwner()))
        self.assertEqual(
            f.index_html.get_local_roles(), localroles,
            'CMF Collector issue #162 (LocalRoles broken): %s' %
            str(f.index_html.get_local_roles()))
        self.assertEqual(wtool.test_notified, f.index_html)

        # acquisition
        self.site.user_bar = 'test attribute'
        newSecurityManager(None, acl_users.user_bar)
        mtool.createMemberArea('user_bar')
        self.failUnless(hasattr(members.aq_self, 'user_bar'),
                        'CMF Collector issue #102 (acquisition bug)')
コード例 #22
0
    def test_changeActions( self ):


        apb = DummyTool()
        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 )
               ]

        properties = {}
        for i in range( len( old_actions ) ):
            for key, value in keys:
                token = key % i
                if value is None:
                    value = token
                properties[ token ] = value

        apb.changeActions( properties=properties )

        marker = []
        for i in range( len( apb._actions ) ):

            for key, value in keys:
                attr = key[ : -3 ]

                if value is None:
                    value = key % i

                if attr == 'name':    # WAAAA
                    attr = 'title'

                if attr == 'permission':    # WAAAA
                    attr = 'permissions'
                    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 )
コード例 #23
0
    def test_createMemberArea_chained(self):
        LOCAL_USER_ID = 'user_foo'
        NONLOCAL_USER_ID = 'user_bar'

        self.app._setObject('folder', Folder('folder'))
        site = self._makeSite(self.app.folder)
        mtool = site.portal_membership
        members = site._setObject('Members', PortalFolder('Members'))
        getSiteManager().registerUtility(DummyTool(), IWorkflowTool)

        local_uf = DummyUserFolder()
        delattr(local_uf, NONLOCAL_USER_ID)
        acl_users = site._setObject('acl_users', local_uf)

        nonlocal_uf = DummyUserFolder()
        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.assertTrue(hasattr(members.aq_self, NONLOCAL_USER_ID))
        mtool.createMemberArea(LOCAL_USER_ID)
        self.assertTrue(hasattr(members.aq_self, LOCAL_USER_ID))
コード例 #24
0
    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 )
        mtool = site.portal_membership
        members = site._setObject( 'Members', PortalFolder('Members') )
        wtool = site._setObject( 'portal_workflow', DummyTool() )

        local_uf = DummyUserFolder()
        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)

        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 ) )
コード例 #25
0
ファイル: test_Link.py プロジェクト: bendavis78/zope
 def setUp(self):
     self.site = DummySite('site')
     mtool = self.site._setObject( 'portal_membership', DummyTool() )
コード例 #26
0
 def setUp(self):
     self.site = DummySite('site')
     self.site._setObject( 'portal_types', DummyTool() )
     self.site._setObject( 'portal_workflow', WorkflowTool() )
     self._constructDummyWorkflow()
コード例 #27
0
 def setUp(self):
     RequestTest.setUp(self)
     self.site = DummySite('site').__of__(self.root)
     self.site._setObject( 'portal_membership', DummyTool() )
コード例 #28
0
 def setUp(self):
     self.site = DummySite('site')
     getSiteManager().registerUtility(DummyTool(), IMembershipTool)
コード例 #29
0
 def setUp(self):
     SecurityTest.setUp(self)
     self.site = DummySite('site').__of__(self.app)
     sm = getSiteManager()
     sm.registerUtility(DummyTool(), IMembershipTool)
     sm.registerUtility(DummyTool().__of__(self.site), IURLTool)
コード例 #30
0
 def setUp(self):
     self._trap_warning_output()
     SecurityRequestTest.setUp(self)
     self.site = DummySite('site').__of__(self.root)
     utool = self.site._setObject( 'portal_url', DummyTool() )
     mtool = self.site._setObject( 'portal_membership', DummyTool() )