def test_staff_user(self): """A staff user should be allowed""" mock_profile = mocked_model(UserProfile) mock_profile.is_reviewer = False request = request_factory(user=self.staff_user, userprofile=mock_profile) response = views.assign_review(request, self.resource.pk) self.assertEqual(response.status_code, 200)
def test_assigned_content_review(self): """The assigned content review should be able to access the view""" mock_profile = mocked_model(UserProfile) mock_profile.is_reviewer = True request = request_factory(user=self.reviewer, userprofile=mock_profile) response = views.review_resource(request, self.resource.pk, self.review.pk) self.assertEqual(response.status_code, 200)
def test_assigned_content_reviewer(self): """The assigned content review should be able to access the view""" mock_profile = mocked_model(UserProfile) mock_profile.is_reviewer = True request = request_factory(user=self.reviewer, userprofile=mock_profile) response = views.reject_resource(request, self.resource.pk, self.review.pk) self.assertEqual(response.status_code, 200)
def test_regular_users(self): """Non-reviewers should not be permitted""" mock_profile = mocked_model(UserProfile) mock_profile.is_reviewer = False request = request_factory(user=self.nonreviewer, userprofile=mock_profile) self.assertRaises( PermissionDenied, views.resource_review_list, request, )
def test_previously_rejected_content(self, messages): """Should redirect if content has already been rejected""" self.review.status = 'rejected' self.review.save() mock_profile = mocked_model(UserProfile) mock_profile.is_reviewer = True request = request_factory(user=self.reviewer, userprofile=mock_profile) response = views.reject_resource(request, self.resource.pk, self.review.pk) self.assertEqual(response.status_code, 302)
def test_missing_review(self): """A 404 should be raised for a staff user if Resource is missing""" mock_profile = mocked_model(UserProfile) mock_profile.is_reviewer = True request = request_factory(user=self.staff_user, userprofile=mock_profile) self.assertRaises( Http404, views.assign_review, request, 12313, )
def test_missing_review(self): """A 404 should be raised for a reviewer if Resource is missing""" mock_profile = mocked_model(UserProfile) mock_profile.is_reviewer = True request = request_factory(user=self.reviewer, userprofile=mock_profile) self.assertRaises( Http404, views.review_resource, request, 123, 123, )
def test_unassigned_content_reviewer(self): """An unassigned content review should not be able to access the view""" mock_profile = mocked_model(UserProfile) mock_profile.is_reviewer = True request = request_factory(user=self.nonreviewer, userprofile=mock_profile) self.assertRaises( PermissionDenied, views.review_resource, request, self.resource.pk, self.review.pk, )
def test_anonymous_user(self): """Anon users should not be permitted to view this""" request = request_factory() response = views.review_resource(request, 123, 123) self.assertEqual(response.status_code, 302)
def test_reviewer_users(self): """Reviewer users should be able to see the page""" request = request_factory(user=self.reviewer) response = views.resource_review_list(request) self.assertEqual(response.status_code, 200)
def test_anon_users_only(self): """Anon users should be redirected""" request = request_factory() response = views.resource_review_list(request) self.assertEqual(response.status_code, 302)