Converter: Add transformation edit view tests
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
This commit is contained in:
@@ -2,6 +2,7 @@ from __future__ import unicode_literals
|
||||
|
||||
TEST_TRANSFORMATION_NAME = 'rotate'
|
||||
TEST_TRANSFORMATION_ARGUMENT = 'degrees: 180'
|
||||
TEST_TRANSFORMATION_ARGUMENT_EDITED = 'degrees: 181'
|
||||
TEST_TRANSFORMATION_COMBINED_CACHE_HASH = '384bf78014d2aed7255d9e548a0694c70af0b22545653214bcceb1ac6286b5f7'
|
||||
TEST_TRANSFORMATION_RESIZE_CACHE_HASH = b'4aa319f5a6950985a19380a1f279a66769d04138bd1583844270fe8c269260fc'
|
||||
TEST_TRANSFORMATION_RESIZE_CACHE_HASH_2 = b'cc8d220d40e810b995181c0c69b44b7a61c3bb039c0be96a5465fcaf698ca99a'
|
||||
|
||||
@@ -7,10 +7,13 @@ from mayan.apps.documents.tests import GenericDocumentViewTestCase
|
||||
from ..models import Transformation
|
||||
from ..permissions import (
|
||||
permission_transformation_create, permission_transformation_delete,
|
||||
permission_transformation_view
|
||||
permission_transformation_edit, permission_transformation_view
|
||||
)
|
||||
|
||||
from .literals import TEST_TRANSFORMATION_NAME, TEST_TRANSFORMATION_ARGUMENT
|
||||
from .literals import (
|
||||
TEST_TRANSFORMATION_NAME, TEST_TRANSFORMATION_ARGUMENT,
|
||||
TEST_TRANSFORMATION_ARGUMENT_EDITED
|
||||
)
|
||||
|
||||
|
||||
class TransformationViewsTestCase(GenericDocumentViewTestCase):
|
||||
@@ -20,7 +23,7 @@ class TransformationViewsTestCase(GenericDocumentViewTestCase):
|
||||
|
||||
def _transformation_list_view(self):
|
||||
return self.get(
|
||||
'converter:transformation_list', kwargs={
|
||||
viewname='converter:transformation_list', kwargs={
|
||||
'app_label': 'documents', 'model': 'document',
|
||||
'object_id': self.document.pk
|
||||
}
|
||||
@@ -41,7 +44,7 @@ class TransformationViewsTestCase(GenericDocumentViewTestCase):
|
||||
|
||||
def _transformation_create_view(self):
|
||||
return self.post(
|
||||
'converter:transformation_create', kwargs={
|
||||
viewname='converter:transformation_create', kwargs={
|
||||
'app_label': 'documents', 'model': 'document',
|
||||
'object_id': self.document.pk
|
||||
}, data={
|
||||
@@ -56,37 +59,77 @@ class TransformationViewsTestCase(GenericDocumentViewTestCase):
|
||||
self.assertEqual(response.status_code, 403)
|
||||
self.assertEqual(Transformation.objects.count(), 0)
|
||||
|
||||
def test_transformation_create_view_with_permissions(self):
|
||||
self.grant_permission(permission=permission_transformation_create)
|
||||
def test_transformation_create_view_with_access(self):
|
||||
self.grant_access(
|
||||
obj=self.document, permission=permission_transformation_create
|
||||
)
|
||||
response = self._transformation_create_view()
|
||||
|
||||
self.assertEqual(response.status_code, 302)
|
||||
self.assertEqual(Transformation.objects.count(), 1)
|
||||
|
||||
def _transformation_delete_view(self):
|
||||
def _create_transformation(self):
|
||||
content_type = ContentType.objects.get_for_model(model=self.document)
|
||||
|
||||
transformation = Transformation.objects.create(
|
||||
self.transformation = Transformation.objects.create(
|
||||
content_type=content_type, object_id=self.document.pk,
|
||||
name=TEST_TRANSFORMATION_NAME,
|
||||
arguments=TEST_TRANSFORMATION_ARGUMENT
|
||||
)
|
||||
|
||||
def _transformation_delete_view(self):
|
||||
return self.post(
|
||||
'converter:transformation_delete', kwargs={
|
||||
'pk': transformation.pk
|
||||
viewname='converter:transformation_delete', kwargs={
|
||||
'pk': self.transformation.pk
|
||||
}
|
||||
)
|
||||
|
||||
def test_transformation_delete_view_no_permissions(self):
|
||||
self._create_transformation()
|
||||
response = self._transformation_delete_view()
|
||||
|
||||
self.assertEqual(response.status_code, 403)
|
||||
self.assertEqual(Transformation.objects.count(), 1)
|
||||
|
||||
def test_transformation_delete_view_with_permissions(self):
|
||||
self.grant_permission(permission=permission_transformation_delete)
|
||||
def test_transformation_delete_view_with_access(self):
|
||||
self._create_transformation()
|
||||
self.grant_access(
|
||||
obj=self.document, permission=permission_transformation_delete
|
||||
)
|
||||
response = self._transformation_delete_view()
|
||||
|
||||
self.assertEqual(response.status_code, 302)
|
||||
self.assertEqual(Transformation.objects.count(), 0)
|
||||
|
||||
def _transformation_edit_view(self):
|
||||
return self.post(
|
||||
viewname='converter:transformation_edit', kwargs={
|
||||
'pk': self.transformation.pk
|
||||
}, data={
|
||||
'arguments': TEST_TRANSFORMATION_ARGUMENT_EDITED,
|
||||
'name': self.transformation.name
|
||||
}
|
||||
)
|
||||
|
||||
def test_transformation_edit_view_no_permission(self):
|
||||
self._create_transformation()
|
||||
response = self._transformation_edit_view()
|
||||
self.assertEqual(response.status_code, 403)
|
||||
|
||||
self.transformation.refresh_from_db()
|
||||
self.assertNotEqual(
|
||||
self.transformation.arguments, TEST_TRANSFORMATION_ARGUMENT_EDITED
|
||||
)
|
||||
|
||||
def test_transformation_edit_view_with_access(self):
|
||||
self._create_transformation()
|
||||
self.grant_access(
|
||||
obj=self.document, permission=permission_transformation_edit
|
||||
)
|
||||
response = self._transformation_edit_view()
|
||||
self.assertEqual(response.status_code, 302)
|
||||
|
||||
self.transformation.refresh_from_db()
|
||||
self.assertEqual(
|
||||
self.transformation.arguments, TEST_TRANSFORMATION_ARGUMENT_EDITED
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user