From f59d7ad0bd2cad3f127e4ce0732d00dc92e3b6bd Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Mon, 24 Oct 2016 18:50:19 -0400 Subject: [PATCH] Add missing events app tests. --- mayan/apps/events/tests/__init__.py | 0 mayan/apps/events/tests/test_views.py | 72 +++++++++++++++++++++++++++ 2 files changed, 72 insertions(+) create mode 100644 mayan/apps/events/tests/__init__.py create mode 100644 mayan/apps/events/tests/test_views.py diff --git a/mayan/apps/events/tests/__init__.py b/mayan/apps/events/tests/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/mayan/apps/events/tests/test_views.py b/mayan/apps/events/tests/test_views.py new file mode 100644 index 0000000000..e136607b75 --- /dev/null +++ b/mayan/apps/events/tests/test_views.py @@ -0,0 +1,72 @@ +from __future__ import absolute_import, unicode_literals + +from django.contrib.contenttypes.models import ContentType + +from acls.models import AccessControlList +from documents.tests.test_views import GenericDocumentViewTestCase +from user_management.tests import ( + TEST_USER_USERNAME, TEST_USER_PASSWORD +) + +from ..permissions import permission_events_view + + +class EventsViewTestCase(GenericDocumentViewTestCase): + def setUp(self): + super(EventsViewTestCase, self).setUp() + + content_type = ContentType.objects.get_for_model(self.document) + + self.view_arguments = { + 'app_label': content_type.app_label, + 'model': content_type.model, + 'object_id': self.document.pk + } + + def test_events_for_object_view_no_permission(self): + self.login(username=TEST_USER_USERNAME, password=TEST_USER_PASSWORD) + + document = self.document.add_as_recent_document_for_user( + self.user + ).document + + content_type = ContentType.objects.get_for_model(document) + + view_arguments = { + 'app_label': content_type.app_label, + 'model': content_type.model, + 'object_id': document.pk + } + + response = self.get( + viewname='events:events_for_object', kwargs=view_arguments + ) + + self.assertNotContains(response, text=document.label, status_code=403) + self.assertNotContains(response, text='otal:', status_code=403) + + def test_events_for_object_view_with_permission(self): + self.login(username=TEST_USER_USERNAME, password=TEST_USER_PASSWORD) + + self.role.permissions.add( + permission_events_view.stored_permission + ) + + document = self.document.add_as_recent_document_for_user( + self.user + ).document + + content_type = ContentType.objects.get_for_model(document) + + view_arguments = { + 'app_label': content_type.app_label, + 'model': content_type.model, + 'object_id': document.pk + } + + response = self.get( + viewname='events:events_for_object', kwargs=view_arguments + ) + + self.assertContains(response, text=document.label, status_code=200) + self.assertNotContains(response, text='otal: 0', status_code=200)