From 528e1a1434f99a85c9a1b732735fdbcb2d90dfde Mon Sep 17 00:00:00 2001 From: Timo Stollenwerk Date: Thu, 12 Jul 2012 18:56:10 +0200 Subject: [PATCH] Run ConversationTest for dexterity types only if dexterity is installed. --- .../app/discussion/tests/test_conversation.py | 59 +++++++++++-------- 1 file changed, 35 insertions(+), 24 deletions(-) diff --git a/plone/app/discussion/tests/test_conversation.py b/plone/app/discussion/tests/test_conversation.py index 712800f..76babf9 100644 --- a/plone/app/discussion/tests/test_conversation.py +++ b/plone/app/discussion/tests/test_conversation.py @@ -24,6 +24,12 @@ from plone.app.discussion.interfaces import IComment from plone.app.discussion.interfaces import IReplies from plone.app.discussion.interfaces import IDiscussionSettings +try: + import plone.dexterity + DEXTERITY = True +except: + DEXTERITY = False + class ConversationTest(unittest.TestCase): @@ -728,11 +734,11 @@ class ConversationEnabledForDexterityTypesTest(unittest.TestCase): typetool = self.portal.portal_types typetool.constructContent('Document', self.portal, 'doc1') - - from plone.dexterity.interfaces import IDexterityContent - interface.alsoProvides( - self.portal.doc1, - IDexterityContent) + if DEXTERITY: + from plone.dexterity.interfaces import IDexterityContent + interface.alsoProvides( + self.portal.doc1, + IDexterityContent) def _makeOne(self, *args, **kw): return self.portal.doc1.restrictedTraverse('@@conversation_view') @@ -748,33 +754,38 @@ class ConversationEnabledForDexterityTypesTest(unittest.TestCase): document_fti.manage_changeProperties(allow_discussion=allow_discussion) def test_conversation_is_not_enabled_by_default(self): - conversation = self._makeOne(self.portal.doc1) - self.assertFalse(conversation.enabled()) + if DEXTERITY: + conversation = self._makeOne(self.portal.doc1) + self.assertFalse(conversation.enabled()) def test_conversation_is_not_enabled_by_default_on_portal_type(self): - self._globally_enable_discussion(True) - conversation = self._makeOne(self.portal.doc1) - self.assertFalse(conversation.enabled()) + if DEXTERITY: + self._globally_enable_discussion(True) + conversation = self._makeOne(self.portal.doc1) + self.assertFalse(conversation.enabled()) def test_conversation_needs_to_be_enabled_globally_and_for_type(self): - self._globally_enable_discussion(True) - self._enable_discussion_on_portal_type('Document', True) - conversation = self._makeOne(self.portal.doc1) - self.assertTrue(conversation.enabled()) + if DEXTERITY: + self._globally_enable_discussion(True) + self._enable_discussion_on_portal_type('Document', True) + conversation = self._makeOne(self.portal.doc1) + self.assertTrue(conversation.enabled()) def test_disable_discussion(self): - self._globally_enable_discussion(True) - self._enable_discussion_on_portal_type('Document', True) - self.portal.doc1.allow_discussion = False - conversation = self._makeOne(self.portal.doc1) - self.assertFalse(conversation.enabled()) + if DEXTERITY: + self._globally_enable_discussion(True) + self._enable_discussion_on_portal_type('Document', True) + self.portal.doc1.allow_discussion = False + conversation = self._makeOne(self.portal.doc1) + self.assertFalse(conversation.enabled()) def test_enable_discussion(self): - self._globally_enable_discussion(True) - self._enable_discussion_on_portal_type('Document', True) - self.portal.doc1.allow_discussion = True - conversation = self._makeOne(self.portal.doc1) - self.assertTrue(conversation.enabled()) + if DEXTERITY: + self._globally_enable_discussion(True) + self._enable_discussion_on_portal_type('Document', True) + self.portal.doc1.allow_discussion = True + conversation = self._makeOne(self.portal.doc1) + self.assertTrue(conversation.enabled()) class RepliesTest(unittest.TestCase):