def test_levels(self):
        """Tests the 'levels' setting
        """
        self.loginAsPortalOwner()
        # Setup the portlet so that only one size is used.
        r = self.renderer(context=self.portal,
            assignment=tagcloudportlet.Assignment(
                levels=1,
                wfStates=['published', 'private'],
                ))
        r = r.__of__(self.portal)
        r.update()
        output = r.render()
        self.failUnless('cloud1' in output)
        self.failIf('cloud2' in output)

        # Setup the portlet so that there can be
        # up to 3 different tag sizes.
        r = self.renderer(context=self.portal,
            assignment=tagcloudportlet.Assignment(
                levels=3,
                wfStates=['published', 'private'],
                ))
        r = r.__of__(self.portal)
        r.update()
        output = r.render()
        self.failUnless('cloud1' in output)
        self.failUnless('cloud3' in output)
        self.logout()
Ejemplo n.º 2
0
    def test_levels(self):
        """Tests the 'levels' setting
        """
        portal = self.layer['portal']
        setRoles(portal, TEST_USER_ID, ['Manager'])
        login(portal, TEST_USER_NAME)

        self.createContent()

        # Setup the portlet so that only one size is used.
        r = self.renderer(context=portal,
                          assignment=tagcloudportlet.Assignment(levels=1, ))
        r = r.__of__(portal)
        r.update()
        output = r.render()
        self.failUnless('cloud1' in output)
        self.failIf('cloud2' in output)

        # Setup the portlet so that there can be
        # up to 3 different tag sizes.
        r = self.renderer(context=portal,
                          assignment=tagcloudportlet.Assignment(levels=3, ))
        r = r.__of__(portal)
        r.update()
        output = r.render()

        self.failUnless('cloud1' in output)
        self.failUnless('cloud3' in output)
Ejemplo n.º 3
0
    def test_invoke_edit_view(self):
        mapping = PortletAssignmentMapping()
        request = self.folder.REQUEST

        mapping['foo'] = tagcloudportlet.Assignment()
        editview = getMultiAdapter((mapping['foo'], request), name='edit')
        self.failUnless(isinstance(editview, tagcloudportlet.EditForm))
 def renderer(self, context=None, request=None, view=None, manager=None,
              assignment=None):
     context = context or self.folder
     request = request or context.REQUEST
     view = view or context.restrictedTraverse('@@plone')
     manager = manager or getUtility(
         IPortletManager, name='plone.rightcolumn', context=context)
     assignment = assignment or tagcloudportlet.Assignment()
     return getMultiAdapter((context, request, view, manager, assignment),
                            IPortletRenderer)
Ejemplo n.º 5
0
    def test_obtain_renderer(self):
        context = self.folder
        request = self.folder.REQUEST
        view = self.folder.restrictedTraverse('@@plone')
        manager = getUtility(IPortletManager,
                             name='plone.rightcolumn',
                             context=self.portal)

        assignment = tagcloudportlet.Assignment()

        renderer = getMultiAdapter(
            (context, request, view, manager, assignment), IPortletRenderer)
        self.failUnless(isinstance(renderer, tagcloudportlet.Renderer))
    def test_wfStates(self):
        """Tests the selection of which workflow states to display.
        Also checks whether view permissions are properly respected
        by the cache mechanism.
        """
        self.loginAsPortalOwner()
        r = self.renderer(context=self.portal,
            assignment=tagcloudportlet.Assignment(
                wfStates=['published'],
                ))
        r = r.__of__(self.portal)
        r.update()
        output = r.render()
        self.failIf('adminprivate' in output)
        self.failIf('memberprivate' in output)

        r = self.renderer(context=self.portal,
            assignment=tagcloudportlet.Assignment(
                wfStates=['private'],
                ))
        r = r.__of__(self.portal)
        r.update()
        output = r.render()
        self.failUnless('adminprivate' in output)
        self.failUnless('memberprivate' in output)

        #Login as a normal member. Should not be able to see private objects
        # from other users.
        self.login()
        r = self.renderer(context=self.portal,
            assignment=tagcloudportlet.Assignment(
                wfStates=['private'],
                ))
        r = r.__of__(self.portal)
        r.update()
        output = r.render()
        self.failIf('adminprivate' in output)
        self.failUnless('memberprivate' in output)
 def test_root(self):
     """Tests setting the root of the search.
     """
     self.loginAsPortalOwner()
     r = self.renderer(context=self.portal,
         assignment=tagcloudportlet.Assignment(
             root = '/subfolder',
             wfStates=['published', 'private'],
             ))
     r = r.__of__(self.portal)
     r.update()
     output = r.render()
     self.failUnless('tag3' in output)
     self.failIf('tag1' in output)
     self.failIf('tag2' in output)
     self.logout()
 def test_filterSubjects(self):
     """Tests the filterSubjects setting
     We test by filtering by 'commontag' which should return
     only one item for 'tag1' and 'tag2'
     """
     self.loginAsPortalOwner()
     r = self.renderer(context=self.portal,
         assignment=tagcloudportlet.Assignment(
             filterSubjects=['commontag'],
             wfStates=['published'],
             ))
     r = r.__of__(self.portal)
     r.update()
     output = r.render()
     self.failUnless('tag1' in output)
     self.failUnless('tag2' in output)
Ejemplo n.º 9
0
    def test_searchLinks(self):
        """Make sure the parameters specified are also mirrored in the
        search links
        """
        portal = self.layer['portal']
        setRoles(portal, TEST_USER_ID, ['Manager'])
        login(portal, TEST_USER_NAME)

        self.createContent()

        r = self.renderer(context=portal,
                          assignment=tagcloudportlet.Assignment(
                              restrictTypes=['Document'], root='/subfolder'))
        r = r.__of__(portal)
        r.update()
        output = r.render()
        self.failUnless("portal_type%3Alist=Document" in output)
Ejemplo n.º 10
0
    def test_count(self):
        """Tests the 'count' setting.
        We choose to show the two most popular tags so only 'tag1' and 'tag2'
        should appear.
        """
        portal = self.layer['portal']
        setRoles(portal, TEST_USER_ID, ['Manager'])
        login(portal, TEST_USER_NAME)
        self.createContent()
        r = self.renderer(context=portal,
                          assignment=tagcloudportlet.Assignment(count=2, ))
        r = r.__of__(portal)
        r.update()
        output = r.render()

        self.assertTrue('tag1' in output)
        self.failIf('tag3' in output)
 def test_searchLinks(self):
     """Make sure the parameters specified are also mirrored in the
     search links
     """
     self.login()
     r = self.renderer(context=self.portal,
         assignment=tagcloudportlet.Assignment(
             wfStates=['private', 'published'],
             restrictTypes=['News Item'],
             root='/subfolder'))
     r = r.__of__(self.portal)
     r.update()
     output = r.render()
     self.failUnless("portal_type%3Alist=News%20Item" in output)
     self.failUnless("review_state%3Alist=private" in output)
     self.failUnless("review_state%3Alist=published" in output)
     self.failUnless("path=/plone/subfolder" in output)
 def test_restrictTypes(self):
     """Tests the restrictTypes setting.
     We choose to show only 'News item' content.
     """
     self.loginAsPortalOwner()
     r = self.renderer(context=self.portal,
         assignment=tagcloudportlet.Assignment(
             restrictTypes=['News Item'],
             wfStates=['published', 'private'],
             ))
     r = r.__of__(self.portal)
     r.update()
     output = r.render()
     self.failUnless('tag3' in output)
     self.failIf('tag1' in output)
     self.failIf('tag2' in output)
     self.logout()
Ejemplo n.º 13
0
    def test_root(self):
        """Tests setting the root of the search.
        """
        portal = self.layer['portal']
        setRoles(portal, TEST_USER_ID, ['Manager'])
        login(portal, TEST_USER_NAME)

        self.createContent()

        r = self.renderer(context=portal,
                          assignment=tagcloudportlet.Assignment(
                              root='/subfolder', ))
        r = r.__of__(portal)
        r.update()
        output = r.render()
        self.failUnless('tag3' in output)
        self.failIf('tag1' in output)
        self.failIf('tag2' in output)
 def test_count(self):
     """Tests the 'count' setting.
     We choose to show the two most popular tags so only 'tag1' and 'tag2'
     should appear.
     """
     self.loginAsPortalOwner()
     r = self.renderer(context=self.portal,
         assignment=tagcloudportlet.Assignment(
             count=2,
             wfStates=['published', 'private'],
             ))
     r = r.__of__(self.portal)
     r.update()
     output = r.render()
     self.failUnless('tag1' in output)
     self.failUnless('tag2' in output)
     self.failIf('tag3' in output)
     self.logout()
Ejemplo n.º 15
0
    def test_restrictTypes(self):
        """Tests the restrictTypes setting.
        We choose to show only 'News item' content.
        """
        portal = self.layer['portal']
        setRoles(portal, TEST_USER_ID, ['Manager'])
        login(portal, TEST_USER_NAME)

        self.createContent()

        r = self.renderer(context=portal,
                          assignment=tagcloudportlet.Assignment(
                              restrictTypes=['Page'], ))
        r = r.__of__(portal)
        r.update()
        output = r.render()
        self.failIf('tag3' in output)
        self.failIf('tag1' in output)
        self.failIf('tag2' in output)
Ejemplo n.º 16
0
    def test_filterSubjects(self):
        """Tests the filterSubjects setting
        We test by filtering by 'commontag' which should return
        only one item for 'tag1' and 'tag2'
        """
        portal = self.layer['portal']
        setRoles(portal, TEST_USER_ID, ['Manager'])
        login(portal, TEST_USER_NAME)

        self.createContent()

        r = self.renderer(context=portal,
                          assignment=tagcloudportlet.Assignment(
                              filterSubjects=['commontag'], ))
        r = r.__of__(portal)
        r.update()
        output = r.render()
        self.failUnless('tag1' in output)
        self.failUnless('tag2' in output)
Ejemplo n.º 17
0
    def test_restrictSubjects(self):
        """Tests the restrictSubjects setting.
        We choose to show only items tagged by 'tag1' and 'tag3'.
        """
        portal = self.layer['portal']
        setRoles(portal, TEST_USER_ID, ['Manager'])
        login(portal, TEST_USER_NAME)

        self.createContent()

        r = self.renderer(context=portal,
                          assignment=tagcloudportlet.Assignment(
                              restrictSubjects=['tag1', 'tag3'], ))
        r = r.__of__(portal)
        r.update()
        output = r.render()
        self.failUnless('tag1' in output)
        self.failUnless('tag3' in output)
        self.failIf('tag2' in output)
Ejemplo n.º 18
0
 def test_interfaces(self):
     portlet = tagcloudportlet.Assignment()
     self.failUnless(IPortletAssignment.providedBy(portlet))
     self.failUnless(IPortletDataProvider.providedBy(portlet.data))