Mercurial > p > roundup > code
annotate test/mocknull.py @ 5212:d4cc71beb102
Added support for SameSite cookie option for CSRF prevention
This was an easy addon compared to the complexity of the CSRF nonce
support. It only works in chromium browsers (Chrome, Opera...) at
the moment. But there is recent activity on implementing it in
firefox. Who know when edge/ie will adopt it. So csrf nonce and
header analysis will be needed for a while.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Sun, 19 Mar 2017 19:01:41 -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 |
