diff options
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/panels/test_request_vars.py | 36 | ||||
| -rw-r--r-- | tests/test_integration.py | 12 | ||||
| -rw-r--r-- | tests/tests.py | 1 | ||||
| -rw-r--r-- | tests/urls.py | 1 | ||||
| -rw-r--r-- | tests/views.py | 7 |
5 files changed, 37 insertions, 20 deletions
diff --git a/tests/panels/test_request_vars.py b/tests/panels/test_request_vars.py new file mode 100644 index 0000000..dc3ba6f --- /dev/null +++ b/tests/panels/test_request_vars.py @@ -0,0 +1,36 @@ +# coding: utf-8 + +from __future__ import unicode_literals + +from django.utils import six + +from debug_toolbar.panels.request_vars import RequestVarsDebugPanel + +from ..base import BaseTestCase +from ..models import NonAsciiRepr + + +class RequestVarsDebugPanelTestCase(BaseTestCase): + + def setUp(self): + super(RequestVarsDebugPanelTestCase, self).setUp() + self.panel = self.toolbar.get_panel(RequestVarsDebugPanel) + + def test_non_ascii_session(self): + self.request.session = {'où': 'où'} + if not six.PY3: + self.request.session['là'.encode('utf-8')] = 'là'.encode('utf-8') + self.panel.process_request(self.request) + self.panel.process_response(self.request, self.response) + content = self.panel.content() + if six.PY3: + self.assertIn('où', content) + else: + self.assertIn('o\\xf9', content) + self.assertIn('l\\xc3\\xa0', content) + + def test_object_with_non_ascii_repr_in_request_vars(self): + self.request.path = '/non_ascii_request/' + self.panel.process_request(self.request) + self.panel.process_response(self.request, self.response) + self.assertIn('nôt åscíì', self.panel.content()) diff --git a/tests/test_integration.py b/tests/test_integration.py index 2a2d4da..4bb0d38 100644 --- a/tests/test_integration.py +++ b/tests/test_integration.py @@ -137,18 +137,6 @@ class DebugToolbarIntegrationTestCase(TestCase): self.assertContains(response, 'LÀTÍN') # template self.assertContains(response, 'djDebug') # toolbar - def test_non_ascii_session(self): - response = self.client.get('/set_session/') - if six.PY3: - self.assertContains(response, 'où') - else: - self.assertContains(response, 'o\\xf9') - self.assertContains(response, 'l\\xc3\\xa0') - - def test_object_with_non_ascii_repr_in_request_vars(self): - response = self.client.get('/non_ascii_request/') - self.assertContains(response, 'nôt åscíì') - def test_xml_validation(self): response = self.client.get('/regular/XML/') ET.fromstring(response.content) # shouldn't raise ParseError diff --git a/tests/tests.py b/tests/tests.py index 1059902..e373d51 100644 --- a/tests/tests.py +++ b/tests/tests.py @@ -4,6 +4,7 @@ if django.VERSION[:2] < (1, 6): # unittest-style discovery isn't available from .commands.test_debugsqlshell import * # noqa from .panels.test_logger import * # noqa from .panels.test_profiling import * # noqa + from .panels.test_request_vars import * # noqa from .panels.test_sql import * # noqa from .panels.test_template import * # noqa from .test_integration import * # noqa diff --git a/tests/urls.py b/tests/urls.py index 854f0ed..977084b 100644 --- a/tests/urls.py +++ b/tests/urls.py @@ -11,7 +11,6 @@ from .models import NonAsciiRepr admin.autodiscover() urlpatterns = patterns('tests.views', # noqa - url(r'^set_session/$', 'set_session'), url(r'^resolving1/(.+)/(.+)/$', 'resolving_view', name='positional-resolving'), url(r'^resolving2/(?P<arg1>.+)/(?P<arg2>.+)/$', 'resolving_view'), url(r'^resolving3/(.+)/$', 'resolving_view', {'arg2': 'default'}), diff --git a/tests/views.py b/tests/views.py index 8bbc447..deaa4c0 100644 --- a/tests/views.py +++ b/tests/views.py @@ -26,10 +26,3 @@ def new_user(request, username='joe'): def resolving_view(request, arg1, arg2): # see test_url_resolving in tests.py return HttpResponse() - - -def set_session(request): - request.session['où'] = 'où' - if not six.PY3: - request.session['là'.encode('utf-8')] = 'là'.encode('utf-8') - return render(request, 'basic.html') |
