mirror of
https://github.com/django/django.git
synced 2025-10-24 06:06:09 +00:00
Fixed #24168 -- Allowed selecting a template engine in a few APIs.
Specifically in rendering shortcuts, template responses, and class-based
views that return template responses.
Also added a test for render_to_response(status=...) which was missing
from fdbfc980.
Thanks Tim and Carl for the review.
This commit is contained in:
@@ -7,6 +7,7 @@ from django.core.exceptions import ImproperlyConfigured
|
||||
from django.core.urlresolvers import resolve
|
||||
from django.http import HttpResponse
|
||||
from django.test import TestCase, RequestFactory, override_settings
|
||||
from django.test.utils import require_jinja2
|
||||
from django.views.generic import View, TemplateView, RedirectView
|
||||
|
||||
from . import views
|
||||
@@ -278,10 +279,23 @@ class TemplateViewTest(TestCase):
|
||||
|
||||
def test_template_name_required(self):
|
||||
"""
|
||||
A template view must provide a template name
|
||||
A template view must provide a template name.
|
||||
"""
|
||||
self.assertRaises(ImproperlyConfigured, self.client.get, '/template/no_template/')
|
||||
|
||||
@require_jinja2
|
||||
def test_template_engine(self):
|
||||
"""
|
||||
A template view may provide a template engine.
|
||||
"""
|
||||
request = self.rf.get('/using/')
|
||||
view = TemplateView.as_view(template_name='generic_views/using.html')
|
||||
self.assertEqual(view(request).render().content, b'DTL\n')
|
||||
view = TemplateView.as_view(template_name='generic_views/using.html', template_engine='django')
|
||||
self.assertEqual(view(request).render().content, b'DTL\n')
|
||||
view = TemplateView.as_view(template_name='generic_views/using.html', template_engine='jinja2')
|
||||
self.assertEqual(view(request).render().content, b'Jinja2\n')
|
||||
|
||||
def test_template_params(self):
|
||||
"""
|
||||
A generic template view passes kwargs as context.
|
||||
|
||||
Reference in New Issue
Block a user