Mercurial > p > roundup > code
annotate test/mocknull.py @ 5093:9954a358da18
- allow user to recover account password using an entry in the
Alternate E-mail addresses list. See:
http://psf.upfronthosting.co.za/roundup/meta/issue564
for description. Merge request at:
https://sourceforge.net/p/roundup/code/merge-requests/1/
Patch supplied by kinggreedy. Applied/tested by John Rouillard
It makes this work:
Click "Lost your login?" link
Enter an alternate address in the email address block.
Submit.
Get an email sent to alternate address with a one time reset
url.
Go to that url.
Before patch, email with new password was sent to the
address "E-mail address" for the user and not to the
alternate address.
After the patch, the email with new password is sent
to the "validated" (against the alternate address list)
alternate address supplied by the user.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Mon, 20 Jun 2016 22:04:32 -0400 |
| parents | 79fd8537ae3b |
| children | 3757449e00c4 |
| rev | line source |
|---|---|
|
2532
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
1 |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
2 class MockNull: |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
3 def __init__(self, **kwargs): |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
4 for key, value in kwargs.items(): |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
5 self.__dict__[key] = value |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
6 |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
7 def __call__(self, *args, **kwargs): return MockNull() |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
8 def __getattr__(self, name): |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
9 # This allows assignments which assume all intermediate steps are Null |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
10 # objects if they don't exist yet. |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
11 # |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
12 # For example (with just 'client' defined): |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
13 # |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
14 # client.db.config.TRACKER_WEB = 'BASE/' |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
15 self.__dict__[name] = MockNull() |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
16 return getattr(self, name) |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
17 |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
18 def __getitem__(self, key): return self |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
19 def __nonzero__(self): return 0 |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
20 def __str__(self): return '' |
|
24d3b25a9157
*** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
21 def __repr__(self): return '<MockNull 0x%x>'%id(self) |
|
2686
79fd8537ae3b
.gettext() facility is vital for many roundup objects.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents:
2532
diff
changeset
|
22 def gettext(self, str): return str |
|
79fd8537ae3b
.gettext() facility is vital for many roundup objects.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents:
2532
diff
changeset
|
23 _ = gettext |
