Am 11.04.2012, 03:00 Uhr, schrieb CMF tests summarizer <nore...@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
_______________________________________________
Zope-CMF maillist  -  Zope-CMF@zope.org
https://mail.zope.org/mailman/listinfo/zope-cmf

See https://bugs.launchpad.net/zope-cmf/ for bug reports and feature requests

Reply via email to