def test_days_no_filter(self): self._create_content() context = self.portal portlet = NewsAssignment(days=0, only_context=False) manager = getUtility(IPortletManager, name=u"plone.leftcolumn") renderer = NewsRenderer(context, context.REQUEST, BrowserView, manager, portlet) self.assertEquals(len(renderer.get_news()), 4, "Expect all 4 news")
def test_ClassificationItem(self): def query_matcher(query): self.assertEqual(query['cs_uids'], ['1234567']) return True context = self.mocker.mock() request = self.mocker.mock() view = self.mocker.mock() manager = self.mocker.mock() catalog = self.mocker.mock() url = self.mocker.mock() obj_uid = self.mocker.mock() self.mock_tool(catalog, 'portal_catalog') self.mock_tool(url, 'portal_url') self.expect(obj_uid.UID()).result('1234567') self.expect(url.getPortalPath()).result('/plone') self.expect(context.restrictedTraverse( '/plone/hans/peter')).result(obj_uid) self.expect(context.getPhysicalPath()).result( ('folder', 'file')).count(0, None) self.expect(catalog.searchResults( MATCH(query_matcher), show_all=False, show_inactive=False)).count(1).result(['1', '2', '3', '4', '5']) self.replay() obj = Assignment(classification_items=['hans/peter'], only_context=False) renderer = Renderer(context, request, view, manager, obj) renderer.get_news()
def test_newsportlet_more_news_link_enabled(self): manager = getUtility(IPortletManager, name=u"plone.leftcolumn") portlet = NewsAssignment(more_news_link=True) renderer = NewsRenderer(self.portal, self.portal.REQUEST, object(), manager, portlet) self.assertTrue(renderer.show_more_news_link(), 'Expect that the "More News" link is visible')
def test_newsportets_shows_rss_link(self): manager = getUtility(IPortletManager, name=u"plone.leftcolumn") portlet = NewsAssignment(rss_link=True) renderer = NewsRenderer(self.portal, self.portal.REQUEST, object(), manager, portlet) self.assertTrue(renderer.show_rss_link(), "show_rss_link is enabled") doc = PyQuery(renderer.render()) self.assertTrue(doc(".RssLink"), "There should be a RSS link in the portlet")
def test_newsportets_does_not_show_rss_link(self): manager = getUtility(IPortletManager, name=u"plone.leftcolumn") portlet = NewsAssignment(rss_link=False) renderer = NewsRenderer(self.portal, self.portal.REQUEST, object(), manager, portlet) self.assertFalse(renderer.show_rss_link(), 'show_rss_link is not enabled.') doc = PyQuery(renderer.render()) self.assertFalse(doc('.RssLink'), 'There should be no link in the portlet')
def test_days_filter(self): context = self.portal portlet = NewsAssignment(days=5, only_context=False) manager = getUtility(IPortletManager, name=u"plone.leftcolumn") renderer = NewsRenderer(context, context.REQUEST, BrowserView, manager, portlet) self.assertEquals(len(renderer.get_news()), 2, 'Expect 2 news') portlet = NewsAssignment(days=28, only_context=False) renderer = NewsRenderer(context, context.REQUEST, BrowserView, manager, portlet) self.assertEquals(len(renderer.get_news()), 3, 'Expect 3 news')
def test_onlycontext(self): def query_matcher(query): self.assertEqual(query['path']['query'], 'folder/file') return True context = self.mocker.mock() request = self.mocker.mock() view = self.mocker.mock() manager = self.mocker.mock() catalog = self.mocker.mock() url = self.mocker.mock() self.mock_tool(catalog, 'portal_catalog') self.mock_tool(url, 'portal_url') self.expect(url.getPortalPath()).result('/plone') self.expect(context.getPhysicalPath()).result(('folder', 'file')) self.expect(catalog.searchResults( MATCH(query_matcher), show_all=False, show_inactive=False)).count(1).result(['1', '2', '3', '4', '5']) self.replay() obj = Assignment(path=['/peter/hans']) renderer = Renderer(context, request, view, manager, obj) renderer.get_news()