[Checkins] SVN: z3c.password/trunk/ Fix: ``PrincipalMixIn.passwordSetOn`` happens to be ``None`` in case the
Adam Groszer
agroszer at gmail.com
Tue Dec 22 07:25:08 EST 2009
Log message for revision 106861:
Fix: ``PrincipalMixIn.passwordSetOn`` happens to be ``None`` in case the
class is mixed in after the user was created, that caused a bug.
Changed:
U z3c.password/trunk/CHANGES.txt
U z3c.password/trunk/src/z3c/password/principal.py
U z3c.password/trunk/src/z3c/password/principal.txt
-=-
Modified: z3c.password/trunk/CHANGES.txt
===================================================================
--- z3c.password/trunk/CHANGES.txt 2009-12-22 09:22:05 UTC (rev 106860)
+++ z3c.password/trunk/CHANGES.txt 2009-12-22 12:25:07 UTC (rev 106861)
@@ -5,7 +5,8 @@
0.8.0 (unreleased)
------------------
-- ...
+- Fix: ``PrincipalMixIn.passwordSetOn`` happens to be ``None`` in case the
+ class is mixed in after the user was created, that caused a bug.
0.7.3 (2009-12-08)
------------------
Modified: z3c.password/trunk/src/z3c/password/principal.py
===================================================================
--- z3c.password/trunk/src/z3c/password/principal.py 2009-12-22 09:22:05 UTC (rev 106860)
+++ z3c.password/trunk/src/z3c/password/principal.py 2009-12-22 12:25:07 UTC (rev 106861)
@@ -160,6 +160,8 @@
expires = self._passwordExpiresAfter()
if expires is None:
return None
+ if self.passwordSetOn is None:
+ return None
return self.passwordSetOn + expires
def _optionsUtility(self):
Modified: z3c.password/trunk/src/z3c/password/principal.txt
===================================================================
--- z3c.password/trunk/src/z3c/password/principal.txt 2009-12-22 09:22:05 UTC (rev 106860)
+++ z3c.password/trunk/src/z3c/password/principal.txt 2009-12-22 12:25:07 UTC (rev 106861)
@@ -761,6 +761,19 @@
+``passwordSetOn`` might happen to be None.
+In case the mixin gets applied to the user object after it's been created
+the ``passwordSetOn`` property will be None. That caused a bug.
+
+ >>> user = MyPrincipal('srichter', '123123', u'Stephan Richter')
+ >>> user.passwordSetOn = None
+
+ >>> user.checkPassword('123123')
+ True
+
+
+
+
Coverage happiness
------------------
More information about the checkins
mailing list