[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/ Added rfc822 formatting method and test.

Charlie Clark cvs-admin at zope.org
Wed Sep 5 11:06:11 UTC 2012


Log message for revision 127703:
  Added rfc822 formatting method and test.
  Moved annotation test to a dedicated method.

Changed:
  U   Products.CMFDefault/trunk/Products/CMFDefault/SyndicationInfo.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/tests/test_SyndicationInfo.py

-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/SyndicationInfo.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/SyndicationInfo.py	2012-09-05 10:43:17 UTC (rev 127702)
+++ Products.CMFDefault/trunk/Products/CMFDefault/SyndicationInfo.py	2012-09-05 11:06:08 UTC (rev 127703)
@@ -16,6 +16,7 @@
 from datetime import datetime
 
 from AccessControl.SecurityInfo import ClassSecurityInfo
+from DateTime import DateTime
 from OFS.SimpleItem import SimpleItem
 from zope.annotation.interfaces import IAnnotations
 from zope.component import adapts
@@ -158,6 +159,10 @@
     def base(self, value):
         return self._set_property('base', value)
 
+    def rfc822(self):
+        as_zope = DateTime(self.base.isoformat())
+        return as_zope.rfc822()
+
     security.declarePublic('max_items')
     @property
     def max_items(self):

Modified: Products.CMFDefault/trunk/Products/CMFDefault/tests/test_SyndicationInfo.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/tests/test_SyndicationInfo.py	2012-09-05 10:43:17 UTC (rev 127702)
+++ Products.CMFDefault/trunk/Products/CMFDefault/tests/test_SyndicationInfo.py	2012-09-05 11:06:08 UTC (rev 127703)
@@ -65,16 +65,32 @@
         adapter = self._makeOne()
         self.assertTrue(adapter.site_settings is self.syndtool)
 
+    def test_annotation(self):
+        adapter = self._makeOne()
+        annotations = getAdapter(adapter.context, IAnnotations)
+        self.assertFalse(adapter.key in annotations)
+        adapter.base = datetime.today()
+        self.assertTrue(adapter.key in annotations)
+
     def test_set(self):
         adapter = self._makeOne()
+        now = datetime.today()
         settings = {'max_items': 10, 'frequency': 7, 'period': 'daily',
-                    'base': datetime.today()}
-        annotations = getAdapter(adapter.context, IAnnotations)
-        self.assertFalse(adapter.key in annotations)
-        annotations[adapter.key] = settings
+                    'base': now}
+        adapter.base = now
+        adapter.period = 'daily'
+        adapter.frequency = 7
+        adapter.max_items = 10
         for k, v in settings.items():
             self.assertEqual(getattr(adapter, k), v)
 
+    def test_rfc822(self):
+        adapter = self._makeOne()
+        now = datetime.today()
+        adapter.base = now
+        self.assertEqual(adapter.rfc822(),
+                         now.strftime("%a, %d %b %Y %H:%M:%S +0000"))
+
     def revert(self):
         adapter = self._makeOne()
         settings = {'max_items': 20, 'frequency': 1, 'period': 'monthly',
@@ -108,7 +124,7 @@
         adapter.enable()
         self.assertTrue(adapter.enabled)
         adapter.disable()
-        self.assertFalse(adapter.disable())
+        self.assertFalse(adapter.enabled)
 
 
 class DummySyndicationTool(object):



More information about the checkins mailing list