[Zope-CMF] cmf-tests - OK: 2, UNKNOWN: 2

Charlie Clark charlie.clark at clark-consulting.eu
Wed Apr 11 12:57:01 UTC 2012


Am 11.04.2012, 03:00 Uhr, schrieb CMF tests summarizer <noreply at zope.org>:

> [1]    UNKNOWN FAILED (failures=1) : CMF-trunk Zope-2.13 Python-2.6.6 :  
> Linux
>        https://mail.zope.org/pipermail/cmf-tests/2012-April/016076.html
> [2]    UNKNOWN FAILED (failures=1) : CMF-trunk Zope-trunk Python-2.6.6 :  
> Linux
>        https://mail.zope.org/pipermail/cmf-tests/2012-April/016077.html

I noticed this the other day but thought it might be related to my  
configuration. Even though I'm on Python 2.6.7

Failure in test test_parseHeadersBody_embedded_blank_line  
(Products.CMFDefault.tests.test_utils.DefaultUtilsTests)
Traceback (most recent call last):
   File  
"/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/unittest.py",  
line 279, in run
     testMethod()
   File  
"/Users/charlieclark/Sites/CMF/src/Products.CMFDefault/Products/CMFDefault/tests/test_utils.py",  
line 85, in test_parseHeadersBody_embedded_blank_line
     self.assertEqual( desc_len, 3, desc_lines )
   File  
"/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/unittest.py",  
line 350, in failUnlessEqual
     (msg or '%r != %r' % (first, second))
AssertionError: ['this description spans multiple lines.']

This is weird because all of a sudden blank lines in headers are being  
treated as separators, as they should. Why wasn't the test failing earlier?

Testing directly with the RFC822 module shows that blank lines indicate  
the end of the headers:

Message.headers

A list containing the entire set of header lines, in the order in which  
they were read (except that setitem calls may disturb this order). Each  
line contains a trailing newline. The blank line terminating the headers  
is not contained in the list

rfc = rfc822.Message(msg)
rfc.headers
['Author: Tres Seaver\n', 'Title: Test  
Products.CMFDefault.utils.parseHeadersBody\n', 'Description: this  
description spans multiple lines.\n', '    It includes a second  
paragraph\n', '    And a third\n']

 From the docs:
Message.headers

A list containing the entire set of header lines, in the order in which  
they were read (except that setitem calls may disturb this order). Each  
line contains a trailing newline. The blank line terminating the headers  
is not contained in the list.

I think the test has to be fixed to show that blank lines are not  
supported. Or, we go back to parsing the headers ourselves.

A couple of questions: should the function be updated to use the Mail  
module? And should we drop the unused regex from the signature?

***

I'm also getting local failures on the Discussions tests:

Failure in test test_deletePropagation  
(Products.CMFDefault.tests.test_Discussions.DiscussionTests)
Traceback (most recent call last):
   File  
"/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/unittest.py",  
line 279, in run
     testMethod()
   File  
"/Users/charlieclark/Sites/CMF/src/Products.CMFDefault/Products/CMFDefault/tests/test_Discussions.py",  
line 260, in test_deletePropagation
     self.assertEqual( len(ctool), 2 )
   File  
"/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/unittest.py",  
line 350, in failUnlessEqual
     (msg or '%r != %r' % (first, second))
AssertionError: 1 != 2



Failure in test test_deleteReplies  
(Products.CMFDefault.tests.test_Discussions.DiscussionTests)
Traceback (most recent call last):
   File  
"/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/unittest.py",  
line 279, in run
     testMethod()
   File  
"/Users/charlieclark/Sites/CMF/src/Products.CMFDefault/Products/CMFDefault/tests/test_Discussions.py",  
line 299, in test_deleteReplies
     self.assertEqual(len(ctool), 7)
   File  
"/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/unittest.py",  
line 350, in failUnlessEqual
     (msg or '%r != %r' % (first, second))
AssertionError: 6 != 7



Failure in test test_itemCataloguing  
(Products.CMFDefault.tests.test_Discussions.DiscussionTests)
Traceback (most recent call last):
   File  
"/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/unittest.py",  
line 279, in run
     testMethod()
   File  
"/Users/charlieclark/Sites/CMF/src/Products.CMFDefault/Products/CMFDefault/tests/test_Discussions.py",  
line 185, in test_itemCataloguing
     self.assertEqual( len(ctool), 1 )
   File  
"/opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/unittest.py",  
line 350, in failUnlessEqual
     (msg or '%r != %r' % (first, second))
AssertionError: 0 != 1

And finally the functional tests won't run:

Running Products.CMFDefault.testing.FunctionalLayer tests:
   Tear down Products.CMFCore.testing.EventZCMLLayer in 0.000 seconds.
   Set up Products.CMFCore.testing.FunctionalZCMLLayer in 0.400 seconds.
   Set up Products.CMFDefault.testing.FunctionalLayer Traceback (most  
recent call last):
   File  
"/Users/charlieclark/Sites/CMF/eggs/zope.testrunner-4.0.4-py2.6.egg/zope/testrunner/runner.py",  
line 380, in run_layer
     setup_layer(options, layer, setup_layers)
   File  
"/Users/charlieclark/Sites/CMF/eggs/zope.testrunner-4.0.4-py2.6.egg/zope/testrunner/runner.py",  
line 672, in setup_layer
     layer.setUp()
   File  
"/Users/charlieclark/Sites/CMF/src/Products.CMFDefault/Products/CMFDefault/testing.py",  
line 34, in setUp
     zcml.load_config('configure.zcml', Products.CMFDefault)
   File "/Users/charlieclark/Sites/CMF/src/Zope2/src/Zope2/App/zcml.py",  
line 54, in load_config
     _context = xmlconfig.file(config, package, _context, execute=execute)
   File  
"/Users/charlieclark/Sites/CMF/eggs/zope.configuration-3.8.0-py2.6.egg/zope/configuration/xmlconfig.py",  
line 648, in file
     context.execute_actions()
   File  
"/Users/charlieclark/Sites/CMF/eggs/zope.configuration-3.8.0-py2.6.egg/zope/configuration/config.py",  
line 691, in execute_actions
     callable(*args, **kw)
   File  
"/Users/charlieclark/Sites/CMF/eggs/zope.publisher-3.13.0-py2.6.egg/zope/publisher/zcml.py",  
line 90, in setDefaultSkin
     skin = component.getUtility(IBrowserSkinType, name)
   File  
"/Users/charlieclark/Sites/CMF/eggs/zope.component-3.12.1-py2.6.egg/zope/component/_api.py",  
line 169, in getUtility
     raise ComponentLookupError(interface, name)
ConfigurationExecutionError: <class  
'zope.interface.interfaces.ComponentLookupError'>: (<InterfaceClass  
zope.publisher.interfaces.browser.IBrowserSkinType>, u'cmf')
   in:
   File  
"/Users/charlieclark/Sites/CMF/src/Products.CMFDefault/Products/CMFDefault/skin/configure.zcml",  
line 12.2-14.8
     <browser:defaultSkin
         name="cmf"
         />

Charlie
-- 
Charlie Clark
Managing Director
Clark Consulting & Research
German Office
Kronenstr. 27a
Düsseldorf
D- 40217
Tel: +49-211-600-3657
Mobile: +49-178-782-6226


More information about the Zope-CMF mailing list