[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/tests/test_SyndicationInfo.py Full testing for SyndicationInfo adapter.
Charlie Clark
charlie at begeistert.org
Sun Oct 3 14:17:52 EDT 2010
Log message for revision 117203:
Full testing for SyndicationInfo adapter.
Changed:
U Products.CMFDefault/trunk/Products/CMFDefault/tests/test_SyndicationInfo.py
-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/tests/test_SyndicationInfo.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/tests/test_SyndicationInfo.py 2010-10-03 17:32:25 UTC (rev 117202)
+++ Products.CMFDefault/trunk/Products/CMFDefault/tests/test_SyndicationInfo.py 2010-10-03 18:17:51 UTC (rev 117203)
@@ -4,6 +4,8 @@
import unittest
+from DateTime.DateTime import DateTime
+
from zope.interface.verify import verifyClass
from Products.CMFCore.tests.base.testcase import TransactionalTest
@@ -11,35 +13,84 @@
class SyndicationInfoTests(TransactionalTest):
+ def setUp(self):
+ super(SyndicationInfoTests, self).setUp()
+ from Products.CMFCore.PortalFolder import PortalFolder
+ self.root._setObject('portal', PortalFolder('portal'))
+ self.portal = self.root.portal
+ tool = self.portal._setObject('portal_syndication',
+ DummySyndicationTool())
+ self.syndication_tool = self.portal.portal_syndication
+
def _getTargetClass(self):
from Products.CMFDefault.SyndicationInfo import SyndicationInfo
return SyndicationInfo
+ def _makeOne(self):
+ from Products.CMFCore.PortalFolder import PortalFolder
+ self.portal._setObject('folder', PortalFolder('folder'))
+ return self._getTargetClass()(self.portal.folder)
+
def test_inteface(self):
from Products.CMFCore.interfaces import ISyndicationInfo
verifyClass(ISyndicationInfo, self._getTargetClass())
+ def test_site_settings(self):
+ adapter = self._makeOne()
+ self.assertTrue(adapter.site_settings is self.syndication_tool)
+
def test_get_info(self):
- pass
+ adapter = self._makeOne()
+ self.assertEqual(adapter.get_info(),
+ {'max_items': 15, 'frequency': 1, 'period': 'daily',
+ 'base': DateTime('2010/10/03 12:00:00 GMT+0')})
def test_set_info(self):
- pass
+ adapter = self._makeOne()
+ settings = {'max_items': 10, 'frequency': 7, 'period': 'daily',
+ 'base': DateTime()}
+ self.assertNotEqual(adapter.get_info(), settings)
+ adapter.set_info(**settings)
+ self.assertEqual(adapter.get_info(), settings)
def revert(self):
- pass
+ adapter = self._makeOne()
+ settings = {'max_items': 20, 'frequency': 1, 'period': 'monthly',
+ 'base': DateTime()}
+ adapter.set_info(**settings)
+ self.assertEqual(adapter.get_info(), settings)
+ adapter.revert()
+ self.assertNotEqual(adapter.get_info(), settings)
- def test_site_settings(self):
- pass
-
def test_enabled(self):
- pass
+ adapter = self._makeOne()
+ self.assertFalse(adapter.enabled)
def test_enable(self):
- pass
+ adapter = self._makeOne()
+ self.syndication_tool.isAllowed = 1
+ adapter.enable()
+ self.assertTrue(adapter.enabled)
def test_disable(self):
+ adapter = self._makeOne()
+ self.syndication_tool.isAllowed = 1
+ adapter.enable()
+ self.assertTrue(adapter.enabled)
+ adapter.disable()
+ self.assertFalse(adapter.disable())
+
+
+class DummySyndicationTool(object):
+
+ isAllowed = 0
+ syUpdatePeriod = 'daily'
+ syUpdateFrequency = 1
+ syUpdateBase = DateTime('2010/10/03 12:00:00 GMT+0')
+ max_items = 15
+
+ def manage_fixupOwnershipAfterAdd(self):
pass
-
def test_suite():
return unittest.TestSuite((
More information about the checkins
mailing list