Loading AUTHORS +2 −0 Original line number Diff line number Diff line Loading @@ -471,6 +471,7 @@ answer newbie questions, and generally made Django that much better: phil@produxion.net phil.h.smith@gmail.com Gustavo Picon Andrew Pinkham <http://AndrewsForge.com> Travis Pinney Michael Placentra II <someone@michaelplacentra2.net> plisk Loading Loading @@ -635,6 +636,7 @@ answer newbie questions, and generally made Django that much better: Derek Willis <http://blog.thescoop.org/> Rachel Willmer <http://www.willmer.com/kb/> Jakub Wilk <ubanus@users.sf.net> Ian A Wilson <http://ianawilson.com> Jakub Wiśniowski <restless.being@gmail.com> Maciej Wiśniowski <pigletto@gmail.com> wojtek Loading django/views/debug.py +4 −0 Original line number Diff line number Diff line Loading @@ -233,6 +233,10 @@ class ExceptionReporter(object): from django.template.loader import template_source_loaders self.template_does_not_exist = True self.loader_debug_info = [] # If the template_source_loaders haven't been populated yet, you need # to provide an empty list for this for loop to not fail. if template_source_loaders is None: template_source_loaders = [] for loader in template_source_loaders: try: source_list_func = loader.get_template_sources Loading tests/view_tests/tests/test_debug.py +9 −0 Original line number Diff line number Diff line Loading @@ -14,6 +14,9 @@ from unittest import skipIf from django.core import mail from django.core.files.uploadedfile import SimpleUploadedFile from django.core.urlresolvers import reverse from django.http import HttpRequest from django.shortcuts import render from django.template.base import TemplateDoesNotExist from django.test import TestCase, RequestFactory from django.test.utils import (override_settings, setup_test_template_loader, restore_template_loaders) Loading Loading @@ -129,6 +132,12 @@ class DebugViewTests(TestCase): finally: shutil.rmtree(template_path) def test_no_template_source_loaders(self): """ Make sure if you don't specify a template, the debug view doesn't blow up. """ self.assertRaises(TemplateDoesNotExist, self.client.get, '/render_no_template/') class ExceptionReporterTests(TestCase): rf = RequestFactory() Loading tests/view_tests/urls.py +1 −0 Original line number Diff line number Diff line Loading @@ -68,4 +68,5 @@ urlpatterns += patterns('view_tests.views', url(r'view_exception/(?P<n>\d+)/$', 'view_exception', name='view_exception'), url(r'template_exception/(?P<n>\d+)/$', 'template_exception', name='template_exception'), url(r'^raises_template_does_not_exist/(?P<path>.+)$', 'raises_template_does_not_exist', name='raises_template_does_not_exist'), url(r'^render_no_template/$', 'render_no_template', name='render_no_template'), ) tests/view_tests/views.py +5 −0 Original line number Diff line number Diff line Loading @@ -131,6 +131,11 @@ def raises_template_does_not_exist(request, path='i_dont_exist.html'): except TemplateDoesNotExist: return technical_500_response(request, *sys.exc_info()) def render_no_template(request): # If we do not specify a template, we need to make sure the debug # view doesn't blow up. return render(request, [], {}) def send_log(request, exc_info): logger = getLogger('django.request') # The default logging config has a logging filter to ensure admin emails are Loading Loading
AUTHORS +2 −0 Original line number Diff line number Diff line Loading @@ -471,6 +471,7 @@ answer newbie questions, and generally made Django that much better: phil@produxion.net phil.h.smith@gmail.com Gustavo Picon Andrew Pinkham <http://AndrewsForge.com> Travis Pinney Michael Placentra II <someone@michaelplacentra2.net> plisk Loading Loading @@ -635,6 +636,7 @@ answer newbie questions, and generally made Django that much better: Derek Willis <http://blog.thescoop.org/> Rachel Willmer <http://www.willmer.com/kb/> Jakub Wilk <ubanus@users.sf.net> Ian A Wilson <http://ianawilson.com> Jakub Wiśniowski <restless.being@gmail.com> Maciej Wiśniowski <pigletto@gmail.com> wojtek Loading
django/views/debug.py +4 −0 Original line number Diff line number Diff line Loading @@ -233,6 +233,10 @@ class ExceptionReporter(object): from django.template.loader import template_source_loaders self.template_does_not_exist = True self.loader_debug_info = [] # If the template_source_loaders haven't been populated yet, you need # to provide an empty list for this for loop to not fail. if template_source_loaders is None: template_source_loaders = [] for loader in template_source_loaders: try: source_list_func = loader.get_template_sources Loading
tests/view_tests/tests/test_debug.py +9 −0 Original line number Diff line number Diff line Loading @@ -14,6 +14,9 @@ from unittest import skipIf from django.core import mail from django.core.files.uploadedfile import SimpleUploadedFile from django.core.urlresolvers import reverse from django.http import HttpRequest from django.shortcuts import render from django.template.base import TemplateDoesNotExist from django.test import TestCase, RequestFactory from django.test.utils import (override_settings, setup_test_template_loader, restore_template_loaders) Loading Loading @@ -129,6 +132,12 @@ class DebugViewTests(TestCase): finally: shutil.rmtree(template_path) def test_no_template_source_loaders(self): """ Make sure if you don't specify a template, the debug view doesn't blow up. """ self.assertRaises(TemplateDoesNotExist, self.client.get, '/render_no_template/') class ExceptionReporterTests(TestCase): rf = RequestFactory() Loading
tests/view_tests/urls.py +1 −0 Original line number Diff line number Diff line Loading @@ -68,4 +68,5 @@ urlpatterns += patterns('view_tests.views', url(r'view_exception/(?P<n>\d+)/$', 'view_exception', name='view_exception'), url(r'template_exception/(?P<n>\d+)/$', 'template_exception', name='template_exception'), url(r'^raises_template_does_not_exist/(?P<path>.+)$', 'raises_template_does_not_exist', name='raises_template_does_not_exist'), url(r'^render_no_template/$', 'render_no_template', name='render_no_template'), )
tests/view_tests/views.py +5 −0 Original line number Diff line number Diff line Loading @@ -131,6 +131,11 @@ def raises_template_does_not_exist(request, path='i_dont_exist.html'): except TemplateDoesNotExist: return technical_500_response(request, *sys.exc_info()) def render_no_template(request): # If we do not specify a template, we need to make sure the debug # view doesn't blow up. return render(request, [], {}) def send_log(request, exc_info): logger = getLogger('django.request') # The default logging config has a logging filter to ensure admin emails are Loading