Unify tests that use upload documents. Add explicit mode when opening a file.
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
This commit is contained in:
@@ -42,6 +42,8 @@ TEST_PDF_INDIRECT_ROTATE_LABEL = 'indirect_rotate.pdf'
|
||||
TEST_SMALL_DOCUMENT_FILENAME = 'title_page.png'
|
||||
TEST_SMALL_DOCUMENT_CHECKSUM = 'efa10e6cc21f83078aaa94d5cbe51de67b51af706143b\
|
||||
afc7fd6d4c02124879a'
|
||||
TEST_SMALL_DOCUMENT_MIMETYPE = 'image/png'
|
||||
TEST_SMALL_DOCUMENT_SIZE = 17436
|
||||
TEST_TRANSFORMATION_NAME = 'rotate'
|
||||
TEST_TRANSFORMATION_ARGUMENT = 'degrees: 180'
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ class DocumentTestMixin(object):
|
||||
)
|
||||
|
||||
def upload_document(self):
|
||||
with open(self.test_document_path) as file_object:
|
||||
with open(self.test_document_path, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object, label=self.test_document_filename
|
||||
)
|
||||
|
||||
@@ -12,12 +12,6 @@ from rest_framework import status
|
||||
|
||||
from rest_api.tests import BaseAPITestCase
|
||||
|
||||
from .literals import (
|
||||
TEST_DOCUMENT_DESCRIPTION_EDITED, TEST_DOCUMENT_FILENAME,
|
||||
TEST_DOCUMENT_PATH, TEST_DOCUMENT_TYPE_LABEL,
|
||||
TEST_DOCUMENT_TYPE_LABEL_EDITED, TEST_DOCUMENT_VERSION_COMMENT_EDITED,
|
||||
TEST_SMALL_DOCUMENT_FILENAME, TEST_SMALL_DOCUMENT_PATH
|
||||
)
|
||||
from ..models import Document, DocumentType
|
||||
from ..permissions import (
|
||||
permission_document_create, permission_document_download,
|
||||
@@ -29,6 +23,14 @@ from ..permissions import (
|
||||
permission_document_version_revert, permission_document_version_view
|
||||
)
|
||||
|
||||
from .literals import (
|
||||
TEST_DOCUMENT_DESCRIPTION_EDITED, TEST_DOCUMENT_FILENAME,
|
||||
TEST_DOCUMENT_PATH, TEST_DOCUMENT_TYPE_LABEL,
|
||||
TEST_DOCUMENT_TYPE_LABEL_EDITED, TEST_DOCUMENT_VERSION_COMMENT_EDITED,
|
||||
TEST_SMALL_DOCUMENT_FILENAME, TEST_SMALL_DOCUMENT_PATH
|
||||
)
|
||||
from .mixins import DocumentTestMixin
|
||||
|
||||
|
||||
class DocumentTypeAPITestCase(BaseAPITestCase):
|
||||
def setUp(self):
|
||||
@@ -145,28 +147,15 @@ class DocumentTypeAPITestCase(BaseAPITestCase):
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class DocumentAPITestCase(BaseAPITestCase):
|
||||
class DocumentAPITestCase(DocumentTestMixin, BaseAPITestCase):
|
||||
auto_upload_document = False
|
||||
|
||||
def setUp(self):
|
||||
super(DocumentAPITestCase, self).setUp()
|
||||
self.login_user()
|
||||
|
||||
self.document_type = DocumentType.objects.create(
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
self.document_type.delete()
|
||||
super(DocumentAPITestCase, self).tearDown()
|
||||
|
||||
def _create_document(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object,
|
||||
label=TEST_SMALL_DOCUMENT_FILENAME
|
||||
)
|
||||
|
||||
def _request_document_upload(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_descriptor:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_descriptor:
|
||||
return self.post(
|
||||
viewname='rest_api:document-list', data={
|
||||
'document_type': self.document_type.pk,
|
||||
@@ -219,7 +208,7 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
# is the latest.
|
||||
time.sleep(1)
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_descriptor:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_descriptor:
|
||||
return self.post(
|
||||
viewname='rest_api:document-version-list', args=(
|
||||
self.document.pk,
|
||||
@@ -229,12 +218,12 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_document_new_version_upload_no_permission(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
response = self._request_document_new_version_upload()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_new_version_upload_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.grant_access(
|
||||
permission=permission_document_new_version, obj=self.document
|
||||
)
|
||||
@@ -256,7 +245,7 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
# Needed by MySQL as milliseconds value is not store in timestamp field
|
||||
time.sleep(1)
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document.new_version(file_object=file_object)
|
||||
|
||||
def _request_document_version_revert(self):
|
||||
@@ -267,13 +256,13 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_document_version_revert_no_permission(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self._create_new_version()
|
||||
response = self._request_document_version_revert()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_version_revert_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self._create_new_version()
|
||||
self.grant_access(
|
||||
permission=permission_document_version_revert, obj=self.document
|
||||
@@ -292,14 +281,14 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_document_version_list_no_permission(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self._create_new_version()
|
||||
response = self._request_document_version_list()
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
self.assertEqual(response.data['count'], 0)
|
||||
|
||||
def test_document_version_list_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self._create_new_version()
|
||||
self.grant_access(
|
||||
permission=permission_document_version_view, obj=self.document
|
||||
@@ -317,12 +306,12 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_document_download_no_permission(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
response = self._request_document_download()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_download_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.grant_access(
|
||||
permission=permission_document_download, obj=self.document
|
||||
)
|
||||
@@ -346,12 +335,12 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_document_version_download_no_permission(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
response = self._request_document_version_download()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_version_download_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.grant_access(
|
||||
permission=permission_document_download, obj=self.document
|
||||
)
|
||||
@@ -369,7 +358,7 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_version_download_preserve_extension(self):
|
||||
self.login_admin_user()
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
|
||||
response = self.get(
|
||||
viewname='rest_api:documentversion-download', args=(
|
||||
@@ -395,12 +384,12 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_document_version_edit_via_patch_no_permission(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
response = self._request_document_version_edit_via_patch()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_version_edit_via_patch_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.grant_access(
|
||||
permission=permission_document_edit, obj=self.document
|
||||
)
|
||||
@@ -421,12 +410,12 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_document_version_edit_via_put_no_permission(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
response = self._request_document_version_edit_via_put()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_version_edit_via_put_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.grant_access(
|
||||
permission=permission_document_edit, obj=self.document
|
||||
)
|
||||
@@ -446,12 +435,12 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_document_description_edit_via_patch_no_permission(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
response = self._request_document_description_edit_via_patch()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_description_edit_via_patch_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.grant_access(
|
||||
permission=permission_document_properties_edit, obj=self.document
|
||||
)
|
||||
@@ -470,12 +459,12 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_document_description_edit_via_put_no_permission(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
response = self._request_document_description_edit_via_put()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_description_edit_via_put_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.grant_access(
|
||||
permission=permission_document_properties_edit, obj=self.document
|
||||
)
|
||||
@@ -489,26 +478,11 @@ class DocumentAPITestCase(BaseAPITestCase):
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class DocumentPageAPITestCase(BaseAPITestCase):
|
||||
class DocumentPageAPITestCase(DocumentTestMixin, BaseAPITestCase):
|
||||
def setUp(self):
|
||||
super(DocumentPageAPITestCase, self).setUp()
|
||||
self.login_user()
|
||||
|
||||
self.document_type = DocumentType.objects.create(
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
self.document_type.delete()
|
||||
super(DocumentPageAPITestCase, self).tearDown()
|
||||
|
||||
def _create_document(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object,
|
||||
label=TEST_SMALL_DOCUMENT_FILENAME
|
||||
)
|
||||
|
||||
def _request_document_page_image(self):
|
||||
page = self.document.pages.first()
|
||||
return self.get(
|
||||
@@ -518,12 +492,10 @@ class DocumentPageAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_document_page_image_view_no_access(self):
|
||||
self._create_document()
|
||||
response = self._request_document_page_image()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_page_image_view_with_access(self):
|
||||
self._create_document()
|
||||
self.grant_access(
|
||||
permission=permission_document_view, obj=self.document
|
||||
)
|
||||
@@ -532,36 +504,25 @@ class DocumentPageAPITestCase(BaseAPITestCase):
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class TrashedDocumentAPITestCase(BaseAPITestCase):
|
||||
class TrashedDocumentAPITestCase(DocumentTestMixin, BaseAPITestCase):
|
||||
auto_upload_document = False
|
||||
|
||||
def setUp(self):
|
||||
super(TrashedDocumentAPITestCase, self).setUp()
|
||||
self.document_type = DocumentType.objects.create(
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
self.login_user()
|
||||
|
||||
def tearDown(self):
|
||||
self.document_type.delete()
|
||||
super(TrashedDocumentAPITestCase, self).tearDown()
|
||||
|
||||
def _create_document(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object,
|
||||
)
|
||||
|
||||
def _request_document_move_to_trash(self):
|
||||
return self.delete(
|
||||
viewname='rest_api:document-detail', args=(self.document.pk,)
|
||||
)
|
||||
|
||||
def test_document_move_to_trash_no_permission(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
response = self._request_document_move_to_trash()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_move_to_trash_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.grant_access(
|
||||
permission=permission_document_trash, obj=self.document
|
||||
)
|
||||
@@ -577,7 +538,7 @@ class TrashedDocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_trashed_document_delete_from_trash_no_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.document.delete()
|
||||
response = self._request_trashed_document_delete_view()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
@@ -585,7 +546,7 @@ class TrashedDocumentAPITestCase(BaseAPITestCase):
|
||||
self.assertEqual(Document.trash.count(), 1)
|
||||
|
||||
def test_trashed_document_delete_from_trash_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.document.delete()
|
||||
self.grant_access(permission=permission_document_delete, obj=self.document)
|
||||
response = self._request_trashed_document_delete_view()
|
||||
@@ -599,14 +560,14 @@ class TrashedDocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_trashed_document_detail_view_no_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.document.delete()
|
||||
response = self._request_trashed_document_detail_view()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
self.assertFalse('uuid' in response.data)
|
||||
|
||||
def test_trashed_document_detail_view_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.document.delete()
|
||||
self.grant_access(permission=permission_document_view, obj=self.document)
|
||||
response = self._request_trashed_document_detail_view()
|
||||
@@ -619,14 +580,14 @@ class TrashedDocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_trashed_document_list_view_no_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.document.delete()
|
||||
response = self._request_trashed_document_list_view()
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
self.assertEqual(response.data['count'], 0)
|
||||
|
||||
def test_trashed_document_list_view_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.document.delete()
|
||||
self.grant_access(
|
||||
permission=permission_document_view, obj=self.document
|
||||
@@ -643,7 +604,7 @@ class TrashedDocumentAPITestCase(BaseAPITestCase):
|
||||
)
|
||||
|
||||
def test_trashed_document_restore_no_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.document.delete()
|
||||
response = self._request_trashed_document_restore_view()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
@@ -651,7 +612,7 @@ class TrashedDocumentAPITestCase(BaseAPITestCase):
|
||||
self.assertEqual(Document.objects.count(), 0)
|
||||
|
||||
def test_trashed_document_restore_with_access(self):
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
self.document.delete()
|
||||
self.grant_access(permission=permission_document_restore, obj=self.document)
|
||||
response = self._request_trashed_document_restore_view()
|
||||
|
||||
@@ -18,7 +18,7 @@ class DocumentVersionTestCase(GenericDocumentViewTestCase):
|
||||
self.login_user()
|
||||
|
||||
def test_document_version_list_no_permission(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document.new_version(
|
||||
comment=TEST_VERSION_COMMENT, file_object=file_object
|
||||
)
|
||||
@@ -34,7 +34,7 @@ class DocumentVersionTestCase(GenericDocumentViewTestCase):
|
||||
obj=self.document, permission=permission_document_version_view
|
||||
)
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document.new_version(
|
||||
comment=TEST_VERSION_COMMENT, file_object=file_object
|
||||
)
|
||||
@@ -48,7 +48,7 @@ class DocumentVersionTestCase(GenericDocumentViewTestCase):
|
||||
def test_document_version_revert_no_permission(self):
|
||||
first_version = self.document.latest_version
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document.new_version(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -63,7 +63,7 @@ class DocumentVersionTestCase(GenericDocumentViewTestCase):
|
||||
def test_document_version_revert_with_access(self):
|
||||
first_version = self.document.latest_version
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document.new_version(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
@@ -16,7 +16,7 @@ class DuplicatedDocumentsViewsTestCase(GenericDocumentViewTestCase):
|
||||
self.login_user()
|
||||
|
||||
def _upload_duplicate_document(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_duplicate = self.document_type.new_document(
|
||||
file_object=file_object, label=TEST_SMALL_DOCUMENT_FILENAME
|
||||
)
|
||||
|
||||
@@ -23,7 +23,7 @@ from .literals import TEST_SMALL_DOCUMENT_PATH
|
||||
|
||||
class DocumentsLinksTestCase(GenericDocumentViewTestCase):
|
||||
def test_document_version_revert_link_no_permission(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document.new_version(file_object=file_object)
|
||||
|
||||
self.assertTrue(self.document.versions.count(), 2)
|
||||
@@ -41,7 +41,7 @@ class DocumentsLinksTestCase(GenericDocumentViewTestCase):
|
||||
# field
|
||||
time.sleep(2)
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document.new_version(file_object=file_object)
|
||||
|
||||
self.assertTrue(self.document.versions.count(), 2)
|
||||
|
||||
@@ -16,48 +16,36 @@ from .base import GenericDocumentTestCase
|
||||
from .literals import (
|
||||
TEST_DOCUMENT_TYPE_LABEL, TEST_DOCUMENT_PATH, TEST_MULTI_PAGE_TIFF_PATH,
|
||||
TEST_PDF_INDIRECT_ROTATE_PATH, TEST_OFFICE_DOCUMENT_PATH,
|
||||
TEST_SMALL_DOCUMENT_PATH
|
||||
TEST_SMALL_DOCUMENT_CHECKSUM, TEST_SMALL_DOCUMENT_FILENAME,
|
||||
TEST_SMALL_DOCUMENT_MIMETYPE, TEST_SMALL_DOCUMENT_PATH,
|
||||
TEST_SMALL_DOCUMENT_SIZE
|
||||
)
|
||||
from .mixins import DocumentTestMixin
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class DocumentTestCase(BaseTestCase):
|
||||
def setUp(self):
|
||||
super(DocumentTestCase, self).setUp()
|
||||
|
||||
self.document_type = DocumentType.objects.create(
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object, label='mayan_11_1.pdf'
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
self.document_type.delete()
|
||||
super(DocumentTestCase, self).tearDown()
|
||||
|
||||
class DocumentTestCase(DocumentTestMixin, BaseTestCase):
|
||||
def test_document_creation(self):
|
||||
self.assertEqual(self.document_type.label, TEST_DOCUMENT_TYPE_LABEL)
|
||||
|
||||
self.assertEqual(self.document.exists(), True)
|
||||
self.assertEqual(self.document.size, 272213)
|
||||
self.assertEqual(self.document.size, TEST_SMALL_DOCUMENT_SIZE)
|
||||
|
||||
self.assertEqual(self.document.file_mimetype, 'application/pdf')
|
||||
self.assertEqual(self.document.file_mime_encoding, 'binary')
|
||||
self.assertEqual(self.document.label, 'mayan_11_1.pdf')
|
||||
self.assertEqual(
|
||||
self.document.checksum,
|
||||
'c637ffab6b8bb026ed3784afdb07663fddc60099853fae2be93890852a69ecf3'
|
||||
self.document.file_mimetype, TEST_SMALL_DOCUMENT_MIMETYPE
|
||||
)
|
||||
self.assertEqual(self.document.page_count, 47)
|
||||
self.assertEqual(self.document.file_mime_encoding, 'binary')
|
||||
self.assertEqual(self.document.label, TEST_SMALL_DOCUMENT_FILENAME)
|
||||
self.assertEqual(
|
||||
self.document.checksum, TEST_SMALL_DOCUMENT_CHECKSUM
|
||||
)
|
||||
self.assertEqual(self.document.page_count, 1)
|
||||
|
||||
def test_version_creation(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document.new_version(file_object=file_object)
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document.new_version(
|
||||
file_object=file_object, comment='test comment 1'
|
||||
)
|
||||
@@ -147,7 +135,7 @@ class PDFCompatibilityTestCase(BaseTestCase):
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_PDF_INDIRECT_ROTATE_PATH) as file_object:
|
||||
with open(TEST_PDF_INDIRECT_ROTATE_PATH, 'rb') as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -166,7 +154,7 @@ class OfficeDocumentTestCase(BaseTestCase):
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_OFFICE_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_OFFICE_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -195,7 +183,7 @@ class MultiPageTiffTestCase(BaseTestCase):
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_MULTI_PAGE_TIFF_PATH) as file_object:
|
||||
with open(TEST_MULTI_PAGE_TIFF_PATH, 'rb') as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -218,7 +206,7 @@ class DocumentVersionTestCase(GenericDocumentTestCase):
|
||||
def test_add_new_version(self):
|
||||
self.assertEqual(self.document.versions.count(), 1)
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document.new_version(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -237,7 +225,7 @@ class DocumentVersionTestCase(GenericDocumentTestCase):
|
||||
# field
|
||||
time.sleep(1.01)
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document.new_version(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
@@ -3,29 +3,13 @@ from __future__ import unicode_literals
|
||||
from django.test import override_settings
|
||||
|
||||
from common.tests import BaseTestCase
|
||||
from documents.models import DocumentType
|
||||
from documents.permissions import permission_document_view
|
||||
from documents.search import document_search, document_page_search
|
||||
from documents.tests import TEST_DOCUMENT_TYPE_LABEL, TEST_SMALL_DOCUMENT_PATH
|
||||
from documents.tests import DocumentTestMixin
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class DocumentSearchTestCase(BaseTestCase):
|
||||
def setUp(self):
|
||||
super(DocumentSearchTestCase, self).setUp()
|
||||
self.document_type = DocumentType.objects.create(
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object, label='mayan_11_1.pdf'
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
self.document_type.delete()
|
||||
super(DocumentSearchTestCase, self).tearDown()
|
||||
|
||||
class DocumentSearchTestCase(DocumentTestMixin, BaseTestCase):
|
||||
def _perform_document_page_search(self):
|
||||
return document_page_search.search(
|
||||
{'q': self.document.label}, user=self.user
|
||||
|
||||
Reference in New Issue
Block a user