summaryrefslogtreecommitdiff
path: root/tests/generic_views
diff options
context:
space:
mode:
authorAymeric Augustin <aymeric.augustin@m4x.org>2015-01-26 21:57:10 +0100
committerAymeric Augustin <aymeric.augustin@m4x.org>2015-02-03 08:29:45 +0100
commit2133f3157eff853329bafb7fda74c3c8fb4eae42 (patch)
tree5bb262ab847c79b3f70d8a8888e267b2816b0373 /tests/generic_views
parenta53541852d5601232899e54d66e623bc163c6dc2 (diff)
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.
Diffstat (limited to 'tests/generic_views')
-rw-r--r--tests/generic_views/jinja2/generic_views/using.html1
-rw-r--r--tests/generic_views/templates/generic_views/using.html1
-rw-r--r--tests/generic_views/test_base.py16
3 files changed, 17 insertions, 1 deletions
diff --git a/tests/generic_views/jinja2/generic_views/using.html b/tests/generic_views/jinja2/generic_views/using.html
new file mode 100644
index 0000000000..8ce973e958
--- /dev/null
+++ b/tests/generic_views/jinja2/generic_views/using.html
@@ -0,0 +1 @@
+Jinja2
diff --git a/tests/generic_views/templates/generic_views/using.html b/tests/generic_views/templates/generic_views/using.html
new file mode 100644
index 0000000000..65bcbf65a4
--- /dev/null
+++ b/tests/generic_views/templates/generic_views/using.html
@@ -0,0 +1 @@
+DTL
diff --git a/tests/generic_views/test_base.py b/tests/generic_views/test_base.py
index 47518fdd92..f297b2e91b 100644
--- a/tests/generic_views/test_base.py
+++ b/tests/generic_views/test_base.py
@@ -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.