From d5e19c1663386b3d7f38a19477717e5c84d01d3a Mon Sep 17 00:00:00 2001 From: Anders Pearson Date: Mon, 5 Dec 2016 15:20:00 +0000 Subject: [PATCH 1/3] failing test for deprecated render_to_response ``` ... File "/home/anders/work/python/djangowind/djangowind/views.py", line 87, in login }, context_instance=RequestContext(request)) TypeError: render_to_response() got an unexpected keyword argument 'context_instance' ``` --- djangowind/templates/base.html | 1 + djangowind/tests/test_views.py | 14 +++++++++----- djangowind/tests/urls.py | 6 ++++++ runtests.py | 25 ++++++++++++++++++++++++- 4 files changed, 40 insertions(+), 6 deletions(-) create mode 100644 djangowind/templates/base.html create mode 100644 djangowind/tests/urls.py diff --git a/djangowind/templates/base.html b/djangowind/templates/base.html new file mode 100644 index 0000000..cb0dbe4 --- /dev/null +++ b/djangowind/templates/base.html @@ -0,0 +1 @@ +{% block content %}{% endblock %} diff --git a/djangowind/tests/test_views.py b/djangowind/tests/test_views.py index 5fc9936..0abc3d1 100644 --- a/djangowind/tests/test_views.py +++ b/djangowind/tests/test_views.py @@ -1,8 +1,12 @@ -from __future__ import unicode_literals - from django.test import TestCase +from django.test.client import Client + +class TestLoginView(TestCase): + def setUp(self): + self.c = Client() -class DummyTest(TestCase): - def test_nothing(self): - self.assertTrue(1 == 1) + def test_logged_out(self): + r = self.c.get("/accounts/login/") + self.assertEqual(r.status_code, 200) + self.assertTrue('cas_base' in r.context) diff --git a/djangowind/tests/urls.py b/djangowind/tests/urls.py new file mode 100644 index 0000000..9aac3b6 --- /dev/null +++ b/djangowind/tests/urls.py @@ -0,0 +1,6 @@ +from django.conf.urls import include, url +import djangowind.views + +urlpatterns = [ + url(r'^accounts/', include('djangowind.urls')), +] diff --git a/runtests.py b/runtests.py index 4177803..e067e50 100644 --- a/runtests.py +++ b/runtests.py @@ -22,20 +22,43 @@ def main(): 'django.contrib.messages.middleware.MessageMiddleware', ), INSTALLED_APPS=( + 'django.contrib.sites', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'djangowind', 'django_jenkins', ), + SITE_ID=1, JENKINS_TEST_RUNNER = 'django_jenkins.runner.CITestSuiteRunner', TEST_RUNNER='django.test.runner.DiscoverRunner', + TEMPLATES=[ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': [ + # insert your TEMPLATE_DIRS here + ], + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.contrib.auth.context_processors.auth', + 'django.template.context_processors.debug', + 'django.template.context_processors.i18n', + 'django.template.context_processors.media', + 'django.template.context_processors.static', + 'django.template.context_processors.tz', + 'django.contrib.messages.context_processors.messages', + ], + }, + }, + ], + TEST_PROJECT_APPS = ( 'djangowind', ), COVERAGE_EXCLUDES_FOLDERS = ['migrations'], - ROOT_URLCONF = [], + ROOT_URLCONF = 'djangowind.tests.urls', SOUTH_TESTS_MIGRATE=False, PROJECT_APPS = [ From 059f7f1325a1fdd3ade5a83228b35f730a1ecfe5 Mon Sep 17 00:00:00 2001 From: Anders Pearson Date: Mon, 5 Dec 2016 15:28:38 +0000 Subject: [PATCH 2/3] switch from render_to_response() to render() `render_to_response()` was deprecated in django 1.8 and removed in 1.10 --- djangowind/views.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/djangowind/views.py b/djangowind/views.py index 57be579..6977e93 100644 --- a/djangowind/views.py +++ b/djangowind/views.py @@ -1,7 +1,7 @@ from __future__ import unicode_literals from django.http import HttpResponseRedirect, HttpResponseForbidden -from django.shortcuts import render_to_response +from django.shortcuts import render from django.contrib.auth import authenticate from django.contrib.auth import login as django_login @@ -76,7 +76,7 @@ def login(request, template_name='registration/login.html', else: current_site = RequestSite(request) - return render_to_response(template_name, { + return render(request, template_name, { 'form': form, redirect_field_name: redirect_to, 'site_name': current_site.name, @@ -84,7 +84,7 @@ def login(request, template_name='registration/login.html', 'wind_base': get_wind_base(), 'cas_base': get_cas_base(), 'wind_service': get_wind_service(), - }, context_instance=RequestContext(request)) + }) login = never_cache(login) From 265634e2d6a5f6ce8efbc92696dcdfb75bab3d8d Mon Sep 17 00:00:00 2001 From: Anders Pearson Date: Mon, 5 Dec 2016 15:31:40 +0000 Subject: [PATCH 3/3] flake8 --- djangowind/tests/urls.py | 1 - djangowind/views.py | 1 - 2 files changed, 2 deletions(-) diff --git a/djangowind/tests/urls.py b/djangowind/tests/urls.py index 9aac3b6..e946f2a 100644 --- a/djangowind/tests/urls.py +++ b/djangowind/tests/urls.py @@ -1,5 +1,4 @@ from django.conf.urls import include, url -import djangowind.views urlpatterns = [ url(r'^accounts/', include('djangowind.urls')), diff --git a/djangowind/views.py b/djangowind/views.py index 6977e93..a712542 100644 --- a/djangowind/views.py +++ b/djangowind/views.py @@ -11,7 +11,6 @@ from django.contrib.sites.models import Site from django.contrib.auth.forms import AuthenticationForm -from django.template import RequestContext try: from django.contrib.sites.requests import RequestSite except ImportError: