mirror of
https://github.com/django/django.git
synced 2025-10-31 09:41:08 +00:00
Fixed #16074 -- Added ContextMixin to class-based generic views to handle get_context_data. Thanks emyller, Luke Plant, Preston Holmes for working on the ticket and patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@17875 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
from __future__ import absolute_import
|
||||
|
||||
import time
|
||||
|
||||
from django.core.exceptions import ImproperlyConfigured
|
||||
@@ -6,6 +8,7 @@ from django.test import TestCase, RequestFactory
|
||||
from django.utils import unittest
|
||||
from django.views.generic import View, TemplateView, RedirectView
|
||||
|
||||
from . import views
|
||||
|
||||
class SimpleView(View):
|
||||
"""
|
||||
@@ -331,3 +334,19 @@ class RedirectViewTest(unittest.TestCase):
|
||||
# we can't use self.rf.get because it always sets QUERY_STRING
|
||||
response = RedirectView.as_view(url='/bar/')(self.rf.request(PATH_INFO='/foo/'))
|
||||
self.assertEqual(response.status_code, 301)
|
||||
|
||||
|
||||
class GetContextDataTest(unittest.TestCase):
|
||||
|
||||
def test_get_context_data_super(self):
|
||||
test_view = views.CustomContextView()
|
||||
context = test_view.get_context_data(kwarg_test='kwarg_value')
|
||||
|
||||
# the test_name key is inserted by the test classes parent
|
||||
self.assertTrue('test_name' in context)
|
||||
self.assertEqual(context['kwarg_test'], 'kwarg_value')
|
||||
self.assertEqual(context['custom_key'], 'custom_value')
|
||||
|
||||
# test that kwarg overrides values assigned higher up
|
||||
context = test_view.get_context_data(test_name='test_value')
|
||||
self.assertEqual(context['test_name'], 'test_value')
|
||||
|
||||
Reference in New Issue
Block a user