[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/ - fixed editing single properties
Yvo Schubbe
cvs-admin at zope.org
Thu Aug 30 10:14:09 UTC 2012
Log message for revision 127622:
- fixed editing single properties
Changed:
U Products.CMFDefault/trunk/Products/CMFDefault/CHANGES.txt
U Products.CMFDefault/trunk/Products/CMFDefault/PropertiesTool.py
U Products.CMFDefault/trunk/Products/CMFDefault/tests/test_PropertiesTool.py
-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/CHANGES.txt
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/CHANGES.txt 2012-08-30 07:48:56 UTC (rev 127621)
+++ Products.CMFDefault/trunk/Products/CMFDefault/CHANGES.txt 2012-08-30 10:14:05 UTC (rev 127622)
@@ -4,6 +4,8 @@
2.3.0 (unreleased)
------------------
+- PropertiesTool: Fixed editing single properties.
+
- browser views: Fixed zope.formlib 4.1 compatibility.
- Add dependency on zope.app.locales.
Modified: Products.CMFDefault/trunk/Products/CMFDefault/PropertiesTool.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/PropertiesTool.py 2012-08-30 07:48:56 UTC (rev 127621)
+++ Products.CMFDefault/trunk/Products/CMFDefault/PropertiesTool.py 2012-08-30 10:14:05 UTC (rev 127622)
@@ -59,7 +59,8 @@
'''Change portal settings'''
site = getUtility(ISiteRoot)
site.manage_changeProperties(**props)
- getUtility(IMailHost).smtp_host = props['smtp_server']
+ if 'smtp_server' in props:
+ getUtility(IMailHost).smtp_host = props['smtp_server']
if hasattr(self, 'propertysheets'):
ps = self.propertysheets
if hasattr(ps, 'props'):
Modified: Products.CMFDefault/trunk/Products/CMFDefault/tests/test_PropertiesTool.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/tests/test_PropertiesTool.py 2012-08-30 07:48:56 UTC (rev 127621)
+++ Products.CMFDefault/trunk/Products/CMFDefault/tests/test_PropertiesTool.py 2012-08-30 10:14:05 UTC (rev 127622)
@@ -104,7 +104,39 @@
self.assertEqual(site_prop('default_charset'), 'iso-8859-1')
self.assertEqual(site_prop('enable_permalink'), True)
+ def test_editProperties_single_value(self):
+ from Products.CMFCore.interfaces import IPropertiesTool
+ tool = getUtility(IPropertiesTool)
+ site_prop = self.site.getProperty
+
+ props = {'description': 'Test MailHost Description'}
+ tool.editProperties(props)
+
+ self.assertEqual(getUtility(IMailHost).smtp_host, 'localhost')
+ self.assertEqual(site_prop('email_from_name'), '')
+ self.assertEqual(site_prop('email_from_address'), '')
+ self.assertEqual(site_prop('description'), 'Test MailHost Description')
+ self.assertEqual(site_prop('title'), '')
+ self.assertEqual(site_prop('validate_email'), False)
+ self.assertEqual(site_prop('email_charset'), '')
+ self.assertEqual(site_prop('default_charset'), '')
+ self.assertEqual(site_prop('enable_permalink'), False)
+
+ props = {'smtp_server': 'mail.example.com'}
+ tool.editProperties(props)
+
+ self.assertEqual(getUtility(IMailHost).smtp_host, 'mail.example.com')
+ self.assertEqual(site_prop('email_from_name'), '')
+ self.assertEqual(site_prop('email_from_address'), '')
+ self.assertEqual(site_prop('description'), 'Test MailHost Description')
+ self.assertEqual(site_prop('title'), '')
+ self.assertEqual(site_prop('validate_email'), False)
+ self.assertEqual(site_prop('email_charset'), '')
+ self.assertEqual(site_prop('default_charset'), '')
+ self.assertEqual(site_prop('enable_permalink'), False)
+
+
def test_suite():
return unittest.TestSuite((
unittest.makeSuite(PropertiesToolTests),
More information about the checkins
mailing list