summaryrefslogtreecommitdiff
path: root/tests/regressiontests/views/views.py
diff options
context:
space:
mode:
authorJulien Phalip <jphalip@gmail.com>2012-06-03 17:33:09 -0700
committerJulien Phalip <jphalip@gmail.com>2012-06-03 23:59:01 -0700
commit4d2fdd41855e978ec5f3b8a03e8599994d7f5b70 (patch)
tree85437db13aedab262ed75da99571bc44a4589bd0 /tests/regressiontests/views/views.py
parent0f69a16785b88d03dc246a652cf348e0f2704e8e (diff)
[1.4.X] Fixed #18379 -- Made the sensitive_variables decorator work with object methods.
Diffstat (limited to 'tests/regressiontests/views/views.py')
-rw-r--r--tests/regressiontests/views/views.py23
1 files changed, 21 insertions, 2 deletions
diff --git a/tests/regressiontests/views/views.py b/tests/regressiontests/views/views.py
index 1d17e6e412..dceca5bf16 100644
--- a/tests/regressiontests/views/views.py
+++ b/tests/regressiontests/views/views.py
@@ -2,7 +2,6 @@ from __future__ import absolute_import
import sys
-from django import forms
from django.core.exceptions import PermissionDenied
from django.core.urlresolvers import get_resolver
from django.http import HttpResponse, HttpResponseRedirect
@@ -14,7 +13,7 @@ from django.views.decorators.debug import (sensitive_post_parameters,
from django.utils.log import getLogger
from . import BrokenException, except_args
-from .models import Article
+
def index_page(request):
@@ -228,3 +227,23 @@ def custom_exception_reporter_filter_view(request):
exc_info = sys.exc_info()
send_log(request, exc_info)
return technical_500_response(request, *exc_info)
+
+
+class Klass(object):
+
+ @sensitive_variables('sauce')
+ def method(self, request):
+ # Do not just use plain strings for the variables' values in the code
+ # so that the tests don't return false positives when the function's
+ # source is displayed in the exception report.
+ cooked_eggs = ''.join(['s', 'c', 'r', 'a', 'm', 'b', 'l', 'e', 'd'])
+ sauce = ''.join(['w', 'o', 'r', 'c', 'e', 's', 't', 'e', 'r', 's', 'h', 'i', 'r', 'e'])
+ try:
+ raise Exception
+ except Exception:
+ exc_info = sys.exc_info()
+ send_log(request, exc_info)
+ return technical_500_response(request, *exc_info)
+
+def sensitive_method_view(request):
+ return Klass().method(request)