[Erp5-report] r24846 - /erp5/trunk/products/ERP5Security/tests/testERP5Security.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Tue Dec 9 12:53:49 CET 2008
Author: jerome
Date: Tue Dec 9 12:53:48 2008
New Revision: 24846
URL: http://svn.erp5.org?rev=24846&view=rev
Log:
test for action to change own password on preference tool
Modified:
erp5/trunk/products/ERP5Security/tests/testERP5Security.py
Modified: erp5/trunk/products/ERP5Security/tests/testERP5Security.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Security/tests/testERP5Security.py?rev=24846&r1=24845&r2=24846&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Security/tests/testERP5Security.py [utf8] (original)
+++ erp5/trunk/products/ERP5Security/tests/testERP5Security.py [utf8] Tue Dec 9 12:53:48 2008
@@ -30,6 +30,7 @@
"""
import unittest
+import transaction
from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase,\
get_request
@@ -96,6 +97,11 @@
self.failUnless(isinstance(self.getUserFolder(),
PluggableAuthService.PluggableAuthService))
+ def loginAsUser(self, username):
+ uf = self.portal.acl_users
+ user = uf.getUserById(username).__of__(uf)
+ newSecurityManager(None, user)
+
def _makePerson(self, open_assignment=1, assignment_start_date=None,
assignment_stop_date=None, **kw):
"""Creates a person in person module, and returns the object, after
@@ -251,6 +257,23 @@
self.assertNotEquals(person_module[changed['new_id']].getReference(),
person_module[changed['id']].getReference())
+ def test_PreferenceTool_setNewPassword(self):
+ # Preference Tool has an action to change password
+ pers = self._makePerson(reference='the_user', password='secret',)
+ transaction.commit()
+ self.tic()
+ self._assertUserExists('the_user', 'secret')
+ self.loginAsUser('the_user')
+ self.portal.REQUEST.set('current_password', 'secret')
+ self.portal.REQUEST.set('new_password', 'new_secret')
+ self.portal.portal_preferences.PreferenceTool_setNewPassword()
+ self._assertUserExists('the_user', 'new_secret')
+ self._assertUserDoesNotExists('the_user', 'secret')
+
+ # password is not stored in plain text
+ self.assertNotEquals('new_secret', pers.getPassword())
+
+
def test_OpenningAssignmentClearCache(self):
"""Openning an assignment for a person clear the cache automatically."""
pers = self._makePerson(reference='the_user', password='secret',
More information about the Erp5-report
mailing list