diff --git a/mayan/apps/documents/templates/documents/document_print.html b/mayan/apps/documents/templates/documents/document_print.html index 696abb1d21..53ebb7facf 100644 --- a/mayan/apps/documents/templates/documents/document_print.html +++ b/mayan/apps/documents/templates/documents/document_print.html @@ -4,6 +4,6 @@ {% block content_plain %} {% for page in pages %} - + {% endfor %} {% endblock %} diff --git a/mayan/apps/documents/tests/test_views.py b/mayan/apps/documents/tests/test_views.py index e9029fab1e..169f8b8833 100644 --- a/mayan/apps/documents/tests/test_views.py +++ b/mayan/apps/documents/tests/test_views.py @@ -10,16 +10,19 @@ from common.tests.test_views import GenericViewTestCase from converter.models import Transformation from converter.permissions import permission_transformation_delete -from ..literals import DEFAULT_DELETE_PERIOD, DEFAULT_DELETE_TIME_UNIT +from ..literals import ( + DEFAULT_DELETE_PERIOD, DEFAULT_DELETE_TIME_UNIT, PAGE_RANGE_ALL +) from ..models import DeletedDocument, Document, DocumentType from ..permissions import ( permission_document_create, permission_document_delete, - permission_document_download, permission_document_properties_edit, - permission_document_restore, permission_document_tools, - permission_document_trash, permission_document_type_create, - permission_document_type_delete, permission_document_type_edit, - permission_document_type_view, permission_document_version_revert, - permission_document_view, permission_empty_trash + permission_document_download, permission_document_print, + permission_document_properties_edit, permission_document_restore, + permission_document_tools, permission_document_trash, + permission_document_type_create, permission_document_type_delete, + permission_document_type_edit, permission_document_type_view, + permission_document_version_revert, permission_document_view, + permission_empty_trash ) from .literals import ( @@ -486,6 +489,24 @@ class DocumentsViewsTestCase(GenericDocumentViewTestCase): response, force_text(self.document.pages.first()), status_code=200 ) + def _request_print_view(self): + return self.post( + 'documents:document_print', args=( + self.document.pk, + ), data={ + 'page_group': PAGE_RANGE_ALL + }, follow=True + ) + + def test_document_print_view_no_permissions(self): + response = self._request_print_view() + self.assertEqual(response.status_code, 403) + + def test_document_print_view_with_permissions(self): + self.grant(permission=permission_document_print) + response = self._request_print_view() + self.assertEqual(response.status_code, 200) + class DocumentPageViewTestCase(GenericDocumentViewTestCase): def setUp(self): diff --git a/mayan/apps/documents/views/document_views.py b/mayan/apps/documents/views/document_views.py index 4734944d75..fd284baa49 100644 --- a/mayan/apps/documents/views/document_views.py +++ b/mayan/apps/documents/views/document_views.py @@ -769,9 +769,9 @@ class DocumentPrint(FormView): def get_template_names(self): if self.request.method == 'POST': - return ['documents/document_print.html'] + return ('documents/document_print.html',) else: - return [self.template_name] + return (self.template_name,) class DuplicatedDocumentListView(DocumentListView):