From 08f732466af360ca444eadf9ec4a8c1693188bd4 Mon Sep 17 00:00:00 2001 From: Geert Kapteijns <ghkapteijns@gmail.com> Date: Tue, 20 Dec 2016 10:02:05 +0100 Subject: [PATCH] Fix bug and clean up theses/test_views.py --- theses/test_views.py | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/theses/test_views.py b/theses/test_views.py index 5b29d6331..496e3ce31 100644 --- a/theses/test_views.py +++ b/theses/test_views.py @@ -1,3 +1,6 @@ +import re + +from django.core.exceptions import PermissionDenied from django.test import TestCase, RequestFactory from django.test.client import Client from django.contrib.auth.models import Group @@ -25,14 +28,15 @@ class TestRequestThesisLink(TestCase): def setUp(self): self.client = Client() + self.target = reverse('theses:request_thesislink') def test_response_when_not_logged_in(self): '''A visitor that is not logged in cannot view this page.''' - response = self.client.get(reverse('theses:request_thesislink')) + response = self.client.get(self.target) self.assertEqual(response.status_code, 403) def test_response_when_logged_in(self): - request = RequestFactory().get(reverse('theses:request_thesislink')) + request = RequestFactory().get(self.target) request.user = UserFactory() response = RequestThesisLink.as_view()(request) self.assertEqual(response.status_code, 200) @@ -49,7 +53,21 @@ class TestVetThesisLinkRequests(TestCase): response = self.client.get(self.target) self.assertEqual(response.status_code, 403) - def test_response_when_logged_in(self): + def test_response_regular_contributor(self): + ''' + A Contributor needs to be in the Vetting Editors group to be able to + vet submitted thesis links. + ''' + # Create ThesisLink to vet. + ThesisLinkFactory() + request = RequestFactory().get(self.target) + user = UserFactory() + request.user = user + self.assertRaises( + PermissionDenied, vet_thesislink_requests, request) + + def test_response_vetting_editor(self): + # Create ThesisLink to vet. ThesisLinkFactory() request = RequestFactory().get(self.target) user = UserFactory() -- GitLab