def testInvokeEditView(self): mapping = PortletAssignmentMapping() request = self.folder.REQUEST mapping['foo'] = person.Assignment(header=u"title", text="text") editview = getMultiAdapter((mapping['foo'], request), name='edit') self.failUnless(isinstance(editview, person.EditForm))
def test_no_header(self): r = self.renderer(context=self.portal, assignment=person.Assignment(text="<b>text</b>")) r = r.__of__(self.folder) r.update() output = r.render() self.assertTrue('<a class="tile"' not in output) self.assertTrue('<header class="portletHeader titleless"' in output)
def test_render(self): r = self.renderer(context=self.portal, assignment=person.Assignment(header=u"title", text="<b>text</b>")) r = r.__of__(self.folder) r.update() output = r.render() self.failUnless('title' in output) self.failUnless('<b>text</b>' in output)
def test_relative_link(self): folder_id = self.portal.invokeFactory('Folder', id='folder1', title='My Folder Title') r = self.renderer(context=self.portal[folder_id], assignment=person.Assignment( text="""<a href="relative/link">link</a>""")) r = r.__of__(self.folder) r.update() output = r.render() self.assertTrue("http://nohost/plone/relative/link" in output)
def testRenderer(self): context = self.folder request = self.folder.REQUEST view = self.folder.restrictedTraverse('@@plone') manager = getUtility(IPortletManager, name='plone.rightcolumn', context=self.portal) assignment = person.Assignment(header=u"title", text="text") renderer = getMultiAdapter( (context, request, view, manager, assignment), IPortletRenderer) self.failUnless(isinstance(renderer, person.Renderer)) self.failUnless(renderer.available, "Renderer should be available by default.")
def renderer(self, context=None, request=None, view=None, manager=None, assignment=None): context = context or self.folder request = request or self.folder.REQUEST view = view or self.folder.restrictedTraverse('@@plone') manager = manager or getUtility( IPortletManager, name='plone.rightcolumn', context=self.portal) assignment = assignment or person.Assignment(header=u"title", text="text") ren = getMultiAdapter((context, request, view, manager, assignment), IPortletRenderer) ren.__portlet_metadata__ = { 'key': '/'.join(self.portal.getPhysicalPath()) } return ren
def testInterfaces(self): portlet = person.Assignment(header=u"title", text="text") self.failUnless(IPortletAssignment.providedBy(portlet)) self.failUnless(IPortletDataProvider.providedBy(portlet.data))
def test_css_class(self): r = self.renderer(context=self.portal, assignment=person.Assignment(header=u"Welcome text", text="<b>text</b>")) self.assertEquals('portlet-person-welcome-text', r.css_class())