prevent the viewlet from raising an error for objects that are not annotatable
This commit is contained in:
parent
fa7a1acd64
commit
b027789391
@ -358,7 +358,10 @@ class CommentsViewlet(ViewletBase):
|
|||||||
returned with workflow actions.
|
returned with workflow actions.
|
||||||
"""
|
"""
|
||||||
context = aq_inner(self.context)
|
context = aq_inner(self.context)
|
||||||
conversation = IConversation(context)
|
conversation = IConversation(context, None)
|
||||||
|
|
||||||
|
if conversation is None:
|
||||||
|
return iter([])
|
||||||
|
|
||||||
wf = getToolByName(context, 'portal_workflow')
|
wf = getToolByName(context, 'portal_workflow')
|
||||||
|
|
||||||
|
@ -370,6 +370,14 @@ class TestCommentsViewlet(unittest.TestCase):
|
|||||||
replies.next()
|
replies.next()
|
||||||
self.assertRaises(StopIteration, replies.next)
|
self.assertRaises(StopIteration, replies.next)
|
||||||
|
|
||||||
|
def test_get_replies_on_non_annotatable_object(self):
|
||||||
|
context = self.portal.MailHost # the mail host is not annotatable
|
||||||
|
viewlet = CommentsViewlet(context, self.request, None, None)
|
||||||
|
replies = viewlet.get_replies()
|
||||||
|
self.assertEqual(len(tuple(replies)), 0)
|
||||||
|
replies = viewlet.get_replies()
|
||||||
|
self.assertRaises(StopIteration, replies.next)
|
||||||
|
|
||||||
def test_get_replies_with_workflow_actions(self):
|
def test_get_replies_with_workflow_actions(self):
|
||||||
self.assertFalse(self.viewlet.get_replies(workflow_actions=True))
|
self.assertFalse(self.viewlet.get_replies(workflow_actions=True))
|
||||||
comment = createObject('plone.Comment')
|
comment = createObject('plone.Comment')
|
||||||
|
Loading…
Reference in New Issue
Block a user