Finish view tests
Signed-off-by: Roberto Rosario <roberto.rosario@mayan-edms.com>
This commit is contained in:
@@ -1,66 +1,310 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.test import override_settings
|
||||
from mayan.apps.common.tests.base import GenericViewTestCase
|
||||
|
||||
from mayan.apps.common.tests.base import BaseTestCase, GenericViewTestCase
|
||||
from mayan.apps.documents.tests.base import GenericDocumentTestCase
|
||||
from mayan.apps.documents.tests.mixins import DocumentTestMixin
|
||||
|
||||
from ..classes import ControlCode
|
||||
from ..models import ControlSheet
|
||||
from ..models import ControlSheet, ControlSheetCode
|
||||
from ..permissions import (
|
||||
permission_control_sheet_create, permission_control_sheet_delete,
|
||||
permission_control_sheet_edit, permission_control_sheet_view
|
||||
)
|
||||
|
||||
from .mixins import ControlSheetTestMixin, ControlSheetViewTestMixin
|
||||
from .mixins import (
|
||||
ControlSheetCodeTestMixin, ControlSheetCodeViewTestMixin,
|
||||
ControlSheetTestMixin, ControlSheetViewTestMixin
|
||||
)
|
||||
|
||||
|
||||
class ControlSheetViewTestCase(
|
||||
ControlSheetTestMixin, ControlSheetViewTestMixin, GenericViewTestCase
|
||||
):
|
||||
test_model = ControlSheet
|
||||
test_permission_create = permission_control_sheet_create
|
||||
test_permission_delete = permission_control_sheet_delete
|
||||
_test_model = ControlSheet
|
||||
_test_permission_create = permission_control_sheet_create
|
||||
_test_permission_delete = permission_control_sheet_delete
|
||||
_test_permission_edit = permission_control_sheet_edit
|
||||
_test_permission_view = permission_control_sheet_view
|
||||
|
||||
def test_control_sheet_create_view_no_permissions(self):
|
||||
object_count = self.test_model.objects.count()
|
||||
object_count = self._test_model.objects.count()
|
||||
|
||||
response = self._request_test_control_sheet_create_view()
|
||||
self.assertEqual(response.status_code, 403)
|
||||
|
||||
self.assertEqual(self.test_model.objects.count(), object_count)
|
||||
self.assertEqual(self._test_model.objects.count(), object_count)
|
||||
|
||||
def test_control_sheet_create_view_with_permissions(self):
|
||||
self.grant_permission(permission=self.test_permission_create)
|
||||
self.grant_permission(permission=self._test_permission_create)
|
||||
|
||||
object_count = self.test_model.objects.count()
|
||||
object_count = self._test_model.objects.count()
|
||||
|
||||
response = self._request_test_control_sheet_create_view()
|
||||
self.assertEqual(response.status_code, 302)
|
||||
|
||||
self.assertEqual(self.test_model.objects.count(), object_count + 1)
|
||||
self.assertEqual(self._test_model.objects.count(), object_count + 1)
|
||||
|
||||
def test_control_sheet_delete_view_no_permissions(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
object_count = self.test_model.objects.count()
|
||||
object_count = self._test_model.objects.count()
|
||||
|
||||
response = self._request_test_control_sheet_delete_view()
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
self.assertEqual(self.test_model.objects.count(), object_count)
|
||||
self.assertEqual(self._test_model.objects.count(), object_count)
|
||||
|
||||
def test_control_sheet_delete_view_with_access(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
self.grant_access(
|
||||
obj=self.test_control_sheet, permission=self.test_permission_delete
|
||||
obj=self.test_control_sheet, permission=self._test_permission_delete
|
||||
)
|
||||
|
||||
object_count = self.test_model.objects.count()
|
||||
object_count = self._test_model.objects.count()
|
||||
|
||||
response = self._request_test_control_sheet_delete_view()
|
||||
self.assertEqual(response.status_code, 302)
|
||||
|
||||
self.assertEqual(self.test_model.objects.count(), object_count - 1)
|
||||
self.assertEqual(self._test_model.objects.count(), object_count - 1)
|
||||
|
||||
def test_control_sheet_edit_view_no_permissions(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
control_sheet_label = self.test_control_sheet.label
|
||||
|
||||
response = self._request_test_control_sheet_edit_view()
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
self.test_control_sheet.refresh_from_db()
|
||||
self.assertEqual(self.test_control_sheet.label, control_sheet_label)
|
||||
|
||||
def test_control_sheet_edit_view_with_access(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
self.grant_access(
|
||||
obj=self.test_control_sheet, permission=self._test_permission_edit
|
||||
)
|
||||
|
||||
control_sheet_label = self.test_control_sheet.label
|
||||
|
||||
response = self._request_test_control_sheet_edit_view()
|
||||
self.assertEqual(response.status_code, 302)
|
||||
|
||||
self.test_control_sheet.refresh_from_db()
|
||||
self.assertNotEqual(self.test_control_sheet.label, control_sheet_label)
|
||||
|
||||
def test_control_sheet_list_view_no_permission(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
response = self._request_test_control_sheet_list_view()
|
||||
self.assertNotContains(
|
||||
response, text=self.test_control_sheet.label, status_code=200
|
||||
)
|
||||
|
||||
def test_control_sheet_list_view_with_access(self):
|
||||
self._create_test_control_sheet()
|
||||
self.grant_access(
|
||||
obj=self.test_control_sheet,
|
||||
permission=self._test_permission_view
|
||||
)
|
||||
|
||||
response = self._request_test_control_sheet_list_view()
|
||||
self.assertContains(
|
||||
response, text=self.test_control_sheet.label, status_code=200
|
||||
)
|
||||
|
||||
def test_control_sheet_preview_view_no_permissions(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
response = self._request_test_control_sheet_preview_view()
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
def test_control_sheet_preview_view_with_access(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
self.grant_access(
|
||||
obj=self.test_control_sheet, permission=self._test_permission_view
|
||||
)
|
||||
|
||||
response = self._request_test_control_sheet_preview_view()
|
||||
self.assertContains(
|
||||
response=response, text=self.test_control_sheet.label,
|
||||
status_code=200
|
||||
)
|
||||
|
||||
def test_control_sheet_print_view_no_permissions(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
response = self._request_test_control_sheet_print_view()
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
def test_control_sheet_print_view_with_access(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
self.grant_access(
|
||||
obj=self.test_control_sheet, permission=self._test_permission_view
|
||||
)
|
||||
|
||||
response = self._request_test_control_sheet_print_view()
|
||||
self.assertContains(
|
||||
response=response, text=self.test_control_sheet.label,
|
||||
status_code=200
|
||||
)
|
||||
|
||||
|
||||
class ControlSheetCodeViewTestCase(
|
||||
ControlSheetTestMixin, ControlSheetCodeTestMixin,
|
||||
ControlSheetCodeViewTestMixin, GenericViewTestCase
|
||||
):
|
||||
_test_model = ControlSheetCode
|
||||
_test_permission_create = permission_control_sheet_create
|
||||
_test_permission_delete = permission_control_sheet_delete
|
||||
_test_permission_edit = permission_control_sheet_edit
|
||||
_test_permission_view = permission_control_sheet_view
|
||||
|
||||
def test_control_sheet_code_select_get_view_no_permissions(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
response = self._request_test_control_sheet_code_select_get_view()
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
def test_control_sheet_code_select_get_view_with_access(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
self.grant_access(
|
||||
obj=self.test_control_sheet,
|
||||
permission=self._test_permission_edit
|
||||
)
|
||||
|
||||
response = self._request_test_control_sheet_code_select_get_view()
|
||||
|
||||
self.assertContains(
|
||||
response=response, text=self._test_control_code_class.label,
|
||||
status_code=200
|
||||
)
|
||||
|
||||
def test_control_sheet_code_select_post_view_no_permissions(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
response = self._request_test_control_sheet_code_select_post_view()
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
def test_control_sheet_code_select_post_view_with_access(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
self.grant_access(
|
||||
obj=self.test_control_sheet,
|
||||
permission=self._test_permission_edit
|
||||
)
|
||||
|
||||
response = self._request_test_control_sheet_code_select_post_view()
|
||||
self.assertEqual(response.status_code, 302)
|
||||
|
||||
def test_control_sheet_code_create_view_no_permissions(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
object_count = self._test_model.objects.count()
|
||||
|
||||
response = self._request_test_control_sheet_code_create_view()
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
self.assertEqual(self._test_model.objects.count(), object_count)
|
||||
|
||||
def test_control_sheet_code_create_view_with_access(self):
|
||||
self._create_test_control_sheet()
|
||||
|
||||
self.grant_access(
|
||||
obj=self.test_control_sheet,
|
||||
permission=self._test_permission_edit
|
||||
)
|
||||
|
||||
object_count = self._test_model.objects.count()
|
||||
|
||||
response = self._request_test_control_sheet_code_create_view()
|
||||
self.assertEqual(response.status_code, 302)
|
||||
|
||||
self.assertEqual(self._test_model.objects.count(), object_count + 1)
|
||||
|
||||
def test_control_sheet_code_delete_view_no_permissions(self):
|
||||
self._create_test_control_sheet()
|
||||
self._create_test_control_sheet_code()
|
||||
|
||||
object_count = self._test_model.objects.count()
|
||||
|
||||
response = self._request_test_control_sheet_code_delete_view()
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
self.assertEqual(self._test_model.objects.count(), object_count)
|
||||
|
||||
def test_control_sheet_code_delete_view_with_access(self):
|
||||
self._create_test_control_sheet()
|
||||
self._create_test_control_sheet_code()
|
||||
|
||||
self.grant_access(
|
||||
obj=self.test_control_sheet,
|
||||
permission=self._test_permission_edit
|
||||
)
|
||||
|
||||
object_count = self._test_model.objects.count()
|
||||
|
||||
response = self._request_test_control_sheet_code_delete_view()
|
||||
self.assertEqual(response.status_code, 302)
|
||||
|
||||
self.assertEqual(self._test_model.objects.count(), object_count - 1)
|
||||
|
||||
def test_control_sheet_code_edit_view_no_permissions(self):
|
||||
self._create_test_control_sheet()
|
||||
self._create_test_control_sheet_code()
|
||||
|
||||
control_sheet_code_arguments = self.test_control_sheet_code.arguments
|
||||
|
||||
response = self._request_test_control_sheet_code_edit_view()
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
self.test_control_sheet_code.refresh_from_db()
|
||||
self.assertEqual(
|
||||
self.test_control_sheet_code.arguments,
|
||||
control_sheet_code_arguments
|
||||
)
|
||||
|
||||
def test_control_sheet_code_edit_view_with_access(self):
|
||||
self._create_test_control_sheet()
|
||||
self._create_test_control_sheet_code()
|
||||
|
||||
self.grant_access(
|
||||
obj=self.test_control_sheet,
|
||||
permission=self._test_permission_edit
|
||||
)
|
||||
|
||||
control_sheet_code_arguments = self.test_control_sheet_code.arguments
|
||||
|
||||
response = self._request_test_control_sheet_code_edit_view()
|
||||
self.assertEqual(response.status_code, 302)
|
||||
|
||||
self.test_control_sheet_code.refresh_from_db()
|
||||
self.assertNotEqual(
|
||||
self.test_control_sheet_code.arguments,
|
||||
control_sheet_code_arguments
|
||||
)
|
||||
|
||||
def test_control_sheet_code_list_view_no_permission(self):
|
||||
self._create_test_control_sheet()
|
||||
self._create_test_control_sheet_code()
|
||||
|
||||
response = self._request_test_control_sheet_code_list_view()
|
||||
self.assertNotContains(
|
||||
response, text=self.test_control_sheet_code.get_label(),
|
||||
status_code=404
|
||||
)
|
||||
|
||||
def test_control_sheet_code_list_view_with_access(self):
|
||||
self._create_test_control_sheet()
|
||||
self._create_test_control_sheet_code()
|
||||
self.grant_access(
|
||||
obj=self.test_control_sheet,
|
||||
permission=self._test_permission_view
|
||||
)
|
||||
|
||||
response = self._request_test_control_sheet_code_list_view()
|
||||
self.assertContains(
|
||||
response, text=self.test_control_sheet_code.get_label(),
|
||||
status_code=200
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user