[Checkins] SVN: Products.CMFCore/trunk/Products/CMFCore/ - fixed tool initialization
Yvo Schubbe
y.2011 at wcm-solutions.de
Fri Feb 25 08:13:48 EST 2011
Log message for revision 120571:
- fixed tool initialization
Changed:
U Products.CMFCore/trunk/Products/CMFCore/CHANGES.txt
U Products.CMFCore/trunk/Products/CMFCore/MemberDataTool.py
U Products.CMFCore/trunk/Products/CMFCore/tests/test_MemberDataTool.py
-=-
Modified: Products.CMFCore/trunk/Products/CMFCore/CHANGES.txt
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/CHANGES.txt 2011-02-25 13:03:58 UTC (rev 120570)
+++ Products.CMFCore/trunk/Products/CMFCore/CHANGES.txt 2011-02-25 13:13:48 UTC (rev 120571)
@@ -4,6 +4,9 @@
2.3.0-alpha (unreleased)
------------------------
+- MemberDataTool: Fixed tool initialization.
+ The default boolean and date property values were not set correctly.
+
- MemberDataTool: Modified 'setProperties' method.
It now can be used by user managers as well.
Modified: Products.CMFCore/trunk/Products/CMFCore/MemberDataTool.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/MemberDataTool.py 2011-02-25 13:03:58 UTC (rev 120570)
+++ Products.CMFCore/trunk/Products/CMFCore/MemberDataTool.py 2011-02-25 13:13:48 UTC (rev 120571)
@@ -15,7 +15,6 @@
from AccessControl.interfaces import IUser
from AccessControl.SecurityInfo import ClassSecurityInfo
-from AccessControl.SecurityManagement import getSecurityManager
from Acquisition import aq_base
from Acquisition import aq_inner
from Acquisition import aq_parent
@@ -53,7 +52,13 @@
id = 'portal_memberdata'
meta_type = 'CMF Member Data Tool'
- _properties = ()
+ _properties = (
+ {'id': 'email', 'type': 'string', 'mode': 'wd'},
+ {'id': 'portal_skin', 'type': 'string', 'mode': 'wd'},
+ {'id': 'listed', 'type': 'boolean', 'mode': 'wd'},
+ {'id': 'login_time', 'type': 'date', 'mode': 'wd'},
+ {'id': 'last_login_time', 'type': 'date', 'mode': 'wd'},
+ )
security = ClassSecurityInfo()
@@ -78,11 +83,11 @@
def __init__(self):
self._members = OOBTree()
# Create the default properties.
- self._setProperty('email', '', 'string')
- self._setProperty('portal_skin', '', 'string')
- self._setProperty('listed', '', 'boolean')
- self._setProperty('login_time', '2000/01/01', 'date')
- self._setProperty('last_login_time', '2000/01/01', 'date')
+ self._updateProperty('email', '')
+ self._updateProperty('portal_skin', '')
+ self._updateProperty('listed', '')
+ self._updateProperty('login_time', '2000/01/01')
+ self._updateProperty('last_login_time', '2000/01/01')
#
# 'portal_memberdata' interface methods
Modified: Products.CMFCore/trunk/Products/CMFCore/tests/test_MemberDataTool.py
===================================================================
--- Products.CMFCore/trunk/Products/CMFCore/tests/test_MemberDataTool.py 2011-02-25 13:03:58 UTC (rev 120570)
+++ Products.CMFCore/trunk/Products/CMFCore/tests/test_MemberDataTool.py 2011-02-25 13:13:48 UTC (rev 120571)
@@ -69,6 +69,16 @@
verifyClass(IMemberDataTool, self._getTargetClass())
+ def test_new(self):
+ tool = self._makeOne()
+ self.assertEqual(tool.getProperty('email'), '')
+ self.assertEqual(tool.getProperty('portal_skin'), '')
+ self.assertEqual(tool.getProperty('listed'), False)
+ self.assertEqual(tool.getProperty('login_time'),
+ DateTime('2000/01/01 00:00:00'))
+ self.assertEqual(tool.getProperty('last_login_time'),
+ DateTime('2000/01/01 00:00:00'))
+
def test_deleteMemberData(self):
tool = self._makeOne()
tool.registerMemberData('Dummy', 'user_foo')
@@ -148,8 +158,8 @@
newSecurityManager(None, user)
member.setProperties()
self.assertEqual(member.getProperty('email'), '')
- # MemberDataTool is initialized with a string date
- self.assertEqual(member.getProperty('login_time'), '2000/01/01')
+ self.assertEqual(member.getProperty('login_time'),
+ DateTime('2000/01/01 00:00:00'))
member.setProperties({'email': 'BOB at EXAMPLE.ORG',
'login_time': '2000/02/02'})
More information about the checkins
mailing list