[CMF-checkins] CVS: Products/CMFDefault/tests - test_utils.py:1.12.8.2

Tres Seaver tseaver at palladion.com
Thu Jul 7 16:04:33 EDT 2005


Update of /cvs-repository/Products/CMFDefault/tests
In directory cvs.zope.org:/tmp/cvs-serv1550/CMFDefault/tests

Modified Files:
      Tag: CMF-1_5-branch
	test_utils.py 
Log Message:
 - Collector #230: strip trailing blank line from multi-line value in RFC822-style headers.


=== Products/CMFDefault/tests/test_utils.py 1.12.8.1 => 1.12.8.2 ===
--- Products/CMFDefault/tests/test_utils.py:1.12.8.1	Sun Oct 17 15:35:50 2004
+++ Products/CMFDefault/tests/test_utils.py	Thu Jul  7 16:04:32 2005
@@ -154,6 +154,64 @@
         self.assertEqual( toUnicode( {'foo': 'bar'}, 'iso-8859-1' ),
                           {'foo': u'bar'} )
 
+    def test_formatRFC822Headers_simple(self):
+        from Products.CMFDefault.utils import formatRFC822Headers
+
+        HEADERS = [ ('Foo', 'foo')
+                  , ('Bar', 'bar')
+                  ]
+
+        formatted = formatRFC822Headers( HEADERS )
+
+        self.assertEqual( formatted, 'Foo: foo\r\nBar: bar' )
+
+    def test_formatRFC822Headers_empty(self):
+        from Products.CMFDefault.utils import formatRFC822Headers
+
+        HEADERS = [ ('Foo', 'foo')
+                  , ('Bar', '')
+                  ]
+
+        formatted = formatRFC822Headers( HEADERS )
+
+        self.assertEqual( formatted, 'Foo: foo\r\nBar: ' )
+
+    def test_formatRFC822Headers_multiline(self):
+        from Products.CMFDefault.utils import formatRFC822Headers
+
+        HEADERS = [ ('Foo', 'foo')
+                  , ('Bar', 'bar\nwith multiline')
+                  ]
+
+        formatted = formatRFC822Headers( HEADERS )
+
+        self.assertEqual( formatted
+                        , 'Foo: foo\r\nBar: bar\r\n  with multiline' )
+
+    def test_formatRFC822Headers_multiline_trailing_blank_line(self):
+        from Products.CMFDefault.utils import formatRFC822Headers
+
+        HEADERS = [ ('Foo', 'foo')
+                  , ('Bar', 'bar\nwith multiline\n')
+                  ]
+
+        formatted = formatRFC822Headers( HEADERS )
+
+        self.assertEqual( formatted
+                        , 'Foo: foo\r\nBar: bar\r\n  with multiline' )
+
+    def test_formatRFC822Headers_multiline_intermediate_blank_line(self):
+        from Products.CMFDefault.utils import formatRFC822Headers
+
+        HEADERS = [ ('Foo', 'foo')
+                  , ('Bar', 'bar\n\nwith multiline')
+                  ]
+
+        formatted = formatRFC822Headers( HEADERS )
+
+        self.assertEqual( formatted
+                        , 'Foo: foo\r\nBar: bar\r\n  \r\n  with multiline' )
+
 
 def test_suite():
     return makeSuite(DefaultUtilsTests)



More information about the CMF-checkins mailing list