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:
@@ -24,7 +24,7 @@ class ACLAPITestCase(BaseAPITestCase):
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
@@ -26,17 +26,17 @@ class PermissionTestCase(BaseTestCase):
|
||||
label=TEST_DOCUMENT_TYPE_2_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_1 = self.document_type_1.new_document(
|
||||
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_2 = self.document_type_1.new_document(
|
||||
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_3 = self.document_type_2.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
@@ -20,7 +20,7 @@ class CabinetTestCase(BaseTestCase):
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
@@ -33,7 +33,7 @@ class CabinetDocumentUploadTestCase(GenericDocumentViewTestCase):
|
||||
WizardStep.reregister_all()
|
||||
|
||||
def _request_upload_interactive_document_create_view(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
return self.post(
|
||||
viewname='sources:upload_interactive', args=(self.source.pk,),
|
||||
data={
|
||||
|
||||
@@ -8,8 +8,7 @@ from django.utils.timezone import now
|
||||
|
||||
from rest_framework import status
|
||||
|
||||
from documents.models import DocumentType
|
||||
from documents.tests import TEST_DOCUMENT_TYPE_LABEL, TEST_SMALL_DOCUMENT_PATH
|
||||
from documents.tests import DocumentTestMixin
|
||||
from documents.permissions import permission_document_view
|
||||
from rest_api.tests import BaseAPITestCase
|
||||
|
||||
@@ -20,22 +19,10 @@ from ..permissions import (
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class CheckoutsAPITestCase(BaseAPITestCase):
|
||||
class CheckoutsAPITestCase(DocumentTestMixin, BaseAPITestCase):
|
||||
def setUp(self):
|
||||
super(CheckoutsAPITestCase, self).setUp()
|
||||
self.login_user()
|
||||
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,
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
self.document_type.delete()
|
||||
super(CheckoutsAPITestCase, self).tearDown()
|
||||
|
||||
def _request_checkedout_document_view(self):
|
||||
return self.get(
|
||||
|
||||
@@ -8,10 +8,8 @@ from django.test import override_settings
|
||||
from django.utils.timezone import now
|
||||
|
||||
from common.tests import BaseTestCase
|
||||
from documents.models import DocumentType
|
||||
from documents.tests.literals import (
|
||||
TEST_DOCUMENT_TYPE_LABEL, TEST_SMALL_DOCUMENT_PATH
|
||||
)
|
||||
from documents.tests import DocumentTestMixin
|
||||
from documents.tests.literals import TEST_SMALL_DOCUMENT_PATH
|
||||
|
||||
from ..exceptions import (
|
||||
DocumentAlreadyCheckedOut, DocumentNotCheckedOut,
|
||||
@@ -21,22 +19,7 @@ from ..models import DocumentCheckout, NewVersionBlock
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class DocumentCheckoutTestCase(BaseTestCase):
|
||||
def setUp(self):
|
||||
super(DocumentCheckoutTestCase, 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
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
self.document_type.delete()
|
||||
super(DocumentCheckoutTestCase, self).tearDown()
|
||||
|
||||
class DocumentCheckoutTestCase(DocumentTestMixin, BaseTestCase):
|
||||
def test_document_checkout(self):
|
||||
expiration_datetime = now() + datetime.timedelta(days=1)
|
||||
|
||||
@@ -64,7 +47,7 @@ class DocumentCheckoutTestCase(BaseTestCase):
|
||||
)
|
||||
|
||||
with self.assertRaises(NewDocumentVersionNotAllowed):
|
||||
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)
|
||||
|
||||
def test_checkin_in(self):
|
||||
@@ -124,29 +107,12 @@ class DocumentCheckoutTestCase(BaseTestCase):
|
||||
NewVersionBlock.objects.block(document=self.document)
|
||||
|
||||
with self.assertRaises(NewDocumentVersionNotAllowed):
|
||||
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)
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class NewVersionBlockTestCase(BaseTestCase):
|
||||
def setUp(self):
|
||||
super(NewVersionBlockTestCase, 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
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
self.document.delete()
|
||||
self.document_type.delete()
|
||||
super(NewVersionBlockTestCase, self).tearDown()
|
||||
|
||||
class NewVersionBlockTestCase(DocumentTestMixin, BaseTestCase):
|
||||
def test_blocking(self):
|
||||
NewVersionBlock.objects.block(document=self.document)
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ TEST_VIEW_URL = 'test-view-url'
|
||||
TEST_FILENAME1 = 'test_file1.txt'
|
||||
TEST_FILENAME2 = 'test_file2.txt'
|
||||
TEST_FILENAME3 = 'test_file3.txt'
|
||||
TEST_FILE_CONTENTS_1 = 'TEST FILE 1\n'
|
||||
TEST_FILE_CONTENTS_1 = b'TEST FILE 1\n'
|
||||
TEST_FILE_CONTENTS_2 = 'TEST FILE 2\n'
|
||||
TEST_TAR_BZ2_FILE = 'test_file.tar.bz2'
|
||||
TEST_TAR_FILE = 'test_file.tar'
|
||||
|
||||
@@ -23,22 +23,22 @@ class TarArchiveClassTestCase(BaseTestCase):
|
||||
def test_add_file(self):
|
||||
archive = self.cls()
|
||||
archive.create()
|
||||
with open(self.file_path) as file_object:
|
||||
with open(self.file_path, 'rb') as file_object:
|
||||
archive.add_file(file_object=file_object, filename=self.filename)
|
||||
self.assertTrue(archive.members(), [self.filename])
|
||||
|
||||
def test_open(self):
|
||||
with open(self.archive_path) as file_object:
|
||||
with open(self.archive_path, 'rb') as file_object:
|
||||
archive = Archive.open(file_object=file_object)
|
||||
self.assertTrue(isinstance(archive, self.cls))
|
||||
|
||||
def test_members(self):
|
||||
with open(self.archive_path) as file_object:
|
||||
with open(self.archive_path, 'rb') as file_object:
|
||||
archive = Archive.open(file_object=file_object)
|
||||
self.assertEqual(archive.members(), self.members_list)
|
||||
|
||||
def test_member_contents(self):
|
||||
with open(self.archive_path) as file_object:
|
||||
with open(self.archive_path, 'rb') as file_object:
|
||||
archive = Archive.open(file_object=file_object)
|
||||
self.assertEqual(
|
||||
archive.member_contents(filename=self.member_name),
|
||||
@@ -46,7 +46,7 @@ class TarArchiveClassTestCase(BaseTestCase):
|
||||
)
|
||||
|
||||
def test_open_member(self):
|
||||
with open(self.archive_path) as file_object:
|
||||
with open(self.archive_path, 'rb') as file_object:
|
||||
archive = Archive.open(file_object=file_object)
|
||||
file_object = archive.open_member(filename=self.member_name)
|
||||
self.assertEqual(
|
||||
|
||||
@@ -3,13 +3,13 @@ from __future__ import unicode_literals
|
||||
TEST_TRANSFORMATION_NAME = 'rotate'
|
||||
TEST_TRANSFORMATION_ARGUMENT = 'degrees: 180'
|
||||
TEST_TRANSFORMATION_COMBINED_CACHE_HASH = '384bf78014d2aed7255d9e548a0694c70af0b22545653214bcceb1ac6286b5f7'
|
||||
TEST_TRANSFORMATION_RESIZE_CACHE_HASH = '4aa319f5a6950985a19380a1f279a66769d04138bd1583844270fe8c269260fc'
|
||||
TEST_TRANSFORMATION_RESIZE_CACHE_HASH_2 = 'cc8d220d40e810b995181c0c69b44b7a61c3bb039c0be96a5465fcaf698ca99a'
|
||||
TEST_TRANSFORMATION_RESIZE_CACHE_HASH = b'4aa319f5a6950985a19380a1f279a66769d04138bd1583844270fe8c269260fc'
|
||||
TEST_TRANSFORMATION_RESIZE_CACHE_HASH_2 = b'cc8d220d40e810b995181c0c69b44b7a61c3bb039c0be96a5465fcaf698ca99a'
|
||||
TEST_TRANSFORMATION_RESIZE_HEIGHT = 528
|
||||
TEST_TRANSFORMATION_RESIZE_HEIGHT_2 = 529
|
||||
TEST_TRANSFORMATION_RESIZE_WIDTH = 123
|
||||
TEST_TRANSFORMATION_RESIZE_WIDTH_2 = 124
|
||||
TEST_TRANSFORMATION_ROTATE_CACHE_HASH = 'df6a5854fccdd3a56145fcd7f7bf52bdf95fe940d6611d435e80dfcaca3b61ac'
|
||||
TEST_TRANSFORMATION_ROTATE_CACHE_HASH = b'df6a5854fccdd3a56145fcd7f7bf52bdf95fe940d6611d435e80dfcaca3b61ac'
|
||||
TEST_TRANSFORMATION_ROTATE_DEGRESS = 34
|
||||
TEST_TRANSFORMATION_ZOOM_CACHE_HASH = 'ac7a864de6a95889d5892301e142f8cdc5808f55010c0b820ed056902fc25a73'
|
||||
TEST_TRANSFORMATION_ZOOM_CACHE_HASH = b'ac7a864de6a95889d5892301e142f8cdc5808f55010c0b820ed056902fc25a73'
|
||||
TEST_TRANSFORMATION_ZOOM_PERCENT = 49
|
||||
|
||||
@@ -87,7 +87,7 @@ TEST_SIGNED_FILE = os.path.join(
|
||||
settings.BASE_DIR, 'apps', 'django_gpg', 'tests', 'contrib',
|
||||
'test_files', 'test_file.txt.gpg'
|
||||
)
|
||||
TEST_SIGNED_FILE_CONTENT = 'test_file.txt\n'
|
||||
TEST_SIGNED_FILE_CONTENT = b'test_file.txt\n'
|
||||
|
||||
TEST_RECEIVE_KEY = '''-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: SKS 1.1.5
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import StringIO
|
||||
import io
|
||||
|
||||
import gnupg
|
||||
import mock
|
||||
|
||||
from django.utils.encoding import force_bytes
|
||||
|
||||
from common.tests import BaseTestCase
|
||||
from common.utils import TemporaryFile
|
||||
|
||||
@@ -75,7 +77,7 @@ class KeyTestCase(BaseTestCase):
|
||||
|
||||
def test_cleartext_file_verification(self):
|
||||
cleartext_file = TemporaryFile()
|
||||
cleartext_file.write('test')
|
||||
cleartext_file.write(b'test')
|
||||
cleartext_file.seek(0)
|
||||
|
||||
with self.assertRaises(VerificationError):
|
||||
@@ -84,7 +86,7 @@ class KeyTestCase(BaseTestCase):
|
||||
cleartext_file.close()
|
||||
|
||||
def test_embedded_verification_no_key(self):
|
||||
with open(TEST_SIGNED_FILE) as signed_file:
|
||||
with open(TEST_SIGNED_FILE, 'rb') as signed_file:
|
||||
result = Key.objects.verify_file(signed_file)
|
||||
|
||||
self.assertTrue(result.key_id in TEST_KEY_FINGERPRINT)
|
||||
@@ -92,7 +94,7 @@ class KeyTestCase(BaseTestCase):
|
||||
def test_embedded_verification_with_key(self):
|
||||
Key.objects.create(key_data=TEST_KEY_DATA)
|
||||
|
||||
with open(TEST_SIGNED_FILE) as signed_file:
|
||||
with open(TEST_SIGNED_FILE, 'rb') as signed_file:
|
||||
result = Key.objects.verify_file(signed_file)
|
||||
|
||||
self.assertEqual(result.fingerprint, TEST_KEY_FINGERPRINT)
|
||||
@@ -100,7 +102,7 @@ class KeyTestCase(BaseTestCase):
|
||||
def test_embedded_verification_with_correct_fingerprint(self):
|
||||
Key.objects.create(key_data=TEST_KEY_DATA)
|
||||
|
||||
with open(TEST_SIGNED_FILE) as signed_file:
|
||||
with open(TEST_SIGNED_FILE, 'rb') as signed_file:
|
||||
result = Key.objects.verify_file(
|
||||
signed_file, key_fingerprint=TEST_KEY_FINGERPRINT
|
||||
)
|
||||
@@ -111,21 +113,21 @@ class KeyTestCase(BaseTestCase):
|
||||
def test_embedded_verification_with_incorrect_fingerprint(self):
|
||||
Key.objects.create(key_data=TEST_KEY_DATA)
|
||||
|
||||
with open(TEST_SIGNED_FILE) as signed_file:
|
||||
with open(TEST_SIGNED_FILE, 'rb') as signed_file:
|
||||
with self.assertRaises(KeyDoesNotExist):
|
||||
Key.objects.verify_file(signed_file, key_fingerprint='999')
|
||||
|
||||
def test_signed_file_decryption(self):
|
||||
Key.objects.create(key_data=TEST_KEY_DATA)
|
||||
|
||||
with open(TEST_SIGNED_FILE) as signed_file:
|
||||
with open(TEST_SIGNED_FILE, 'rb') as signed_file:
|
||||
result = Key.objects.decrypt_file(file_object=signed_file)
|
||||
|
||||
self.assertEqual(result.read(), TEST_SIGNED_FILE_CONTENT)
|
||||
|
||||
def test_cleartext_file_decryption(self):
|
||||
cleartext_file = TemporaryFile()
|
||||
cleartext_file.write('test')
|
||||
cleartext_file.write(b'test')
|
||||
cleartext_file.seek(0)
|
||||
|
||||
with self.assertRaises(DecryptionError):
|
||||
@@ -134,8 +136,8 @@ class KeyTestCase(BaseTestCase):
|
||||
cleartext_file.close()
|
||||
|
||||
def test_detached_verification_no_key(self):
|
||||
with open(TEST_DETACHED_SIGNATURE) as signature_file:
|
||||
with open(TEST_FILE) as test_file:
|
||||
with open(TEST_DETACHED_SIGNATURE, 'rb') as signature_file:
|
||||
with open(TEST_FILE, 'rb') as test_file:
|
||||
result = Key.objects.verify_file(
|
||||
file_object=test_file, signature_file=signature_file
|
||||
)
|
||||
@@ -145,8 +147,8 @@ class KeyTestCase(BaseTestCase):
|
||||
def test_detached_verification_with_key(self):
|
||||
Key.objects.create(key_data=TEST_KEY_DATA)
|
||||
|
||||
with open(TEST_DETACHED_SIGNATURE) as signature_file:
|
||||
with open(TEST_FILE) as test_file:
|
||||
with open(TEST_DETACHED_SIGNATURE, 'rb') as signature_file:
|
||||
with open(TEST_FILE, 'rb') as test_file:
|
||||
result = Key.objects.verify_file(
|
||||
file_object=test_file, signature_file=signature_file
|
||||
)
|
||||
@@ -158,7 +160,7 @@ class KeyTestCase(BaseTestCase):
|
||||
key = Key.objects.create(key_data=TEST_KEY_DATA)
|
||||
|
||||
with self.assertRaises(NeedPassphrase):
|
||||
with open(TEST_FILE) as test_file:
|
||||
with open(TEST_FILE, 'rb') as test_file:
|
||||
key.sign_file(
|
||||
file_object=test_file, detached=True,
|
||||
)
|
||||
@@ -167,7 +169,7 @@ class KeyTestCase(BaseTestCase):
|
||||
key = Key.objects.create(key_data=TEST_KEY_DATA)
|
||||
|
||||
with self.assertRaises(PassphraseError):
|
||||
with open(TEST_FILE) as test_file:
|
||||
with open(TEST_FILE, 'rb') as test_file:
|
||||
key.sign_file(
|
||||
file_object=test_file, detached=True,
|
||||
passphrase='bad passphrase'
|
||||
@@ -176,17 +178,17 @@ class KeyTestCase(BaseTestCase):
|
||||
def test_detached_signing_with_passphrase(self):
|
||||
key = Key.objects.create(key_data=TEST_KEY_DATA)
|
||||
|
||||
with open(TEST_FILE) as test_file:
|
||||
with open(TEST_FILE, 'rb') as test_file:
|
||||
detached_signature = key.sign_file(
|
||||
file_object=test_file, detached=True,
|
||||
passphrase=TEST_KEY_PASSPHRASE
|
||||
)
|
||||
|
||||
signature_file = StringIO.StringIO()
|
||||
signature_file.write(detached_signature)
|
||||
signature_file = io.BytesIO()
|
||||
signature_file.write(force_bytes(detached_signature))
|
||||
signature_file.seek(0)
|
||||
|
||||
with open(TEST_FILE) as test_file:
|
||||
with open(TEST_FILE, 'rb') as test_file:
|
||||
result = Key.objects.verify_file(
|
||||
file_object=test_file, signature_file=signature_file
|
||||
)
|
||||
|
||||
@@ -4,10 +4,7 @@ from django.test import override_settings
|
||||
|
||||
from rest_framework import status
|
||||
|
||||
from documents.models import DocumentType
|
||||
from documents.tests.literals import (
|
||||
TEST_DOCUMENT_TYPE_LABEL, TEST_SMALL_DOCUMENT_PATH
|
||||
)
|
||||
from documents.tests import DocumentTestMixin
|
||||
from rest_api.tests import BaseAPITestCase
|
||||
|
||||
from ..models import Comment
|
||||
@@ -20,23 +17,10 @@ from .literals import TEST_COMMENT_TEXT
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class CommentAPITestCase(BaseAPITestCase):
|
||||
class CommentAPITestCase(DocumentTestMixin, BaseAPITestCase):
|
||||
def setUp(self):
|
||||
super(CommentAPITestCase, self).setUp()
|
||||
self.login_user()
|
||||
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
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
if hasattr(self, 'document_type'):
|
||||
self.document_type.delete()
|
||||
super(CommentAPITestCase, self).tearDown()
|
||||
|
||||
def _create_comment(self):
|
||||
return self.document.comments.create(
|
||||
|
||||
@@ -4,8 +4,7 @@ from django.test import override_settings
|
||||
from django.utils.encoding import force_text
|
||||
|
||||
from common.tests import BaseTestCase
|
||||
from documents.models import DocumentType
|
||||
from documents.tests import TEST_SMALL_DOCUMENT_PATH, TEST_DOCUMENT_TYPE_LABEL
|
||||
from documents.tests import DocumentTestMixin, TEST_SMALL_DOCUMENT_PATH
|
||||
from metadata.models import MetadataType, DocumentTypeMetadataType
|
||||
|
||||
from ..models import Index, IndexInstanceNode, IndexTemplateNode
|
||||
@@ -17,21 +16,9 @@ from .literals import (
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class IndexTestCase(BaseTestCase):
|
||||
class IndexTestCase(DocumentTestMixin, BaseTestCase):
|
||||
def setUp(self):
|
||||
super(IndexTestCase, 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
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
self.document_type.delete()
|
||||
super(IndexTestCase, self).tearDown()
|
||||
|
||||
def test_indexing(self):
|
||||
metadata_type = MetadataType.objects.create(
|
||||
@@ -177,7 +164,7 @@ class IndexTestCase(BaseTestCase):
|
||||
values and two second levels with the same value but as separate
|
||||
children of each of the first levels. GitLab issue #391
|
||||
"""
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_2 = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
@@ -40,7 +40,7 @@ class EmbeddedSignatureManager(models.Manager):
|
||||
except Exception:
|
||||
raise
|
||||
else:
|
||||
with open(temporary_filename) as file_object:
|
||||
with open(temporary_filename, 'rb') as file_object:
|
||||
new_version = document_version.document.new_version(
|
||||
file_object=file_object, _user=user
|
||||
)
|
||||
|
||||
@@ -25,7 +25,7 @@ class DocumentSignatureLinksTestCase(GenericDocumentViewTestCase):
|
||||
self.login_user()
|
||||
|
||||
def test_document_version_signature_detail_link_no_permission(self):
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -41,7 +41,7 @@ class DocumentSignatureLinksTestCase(GenericDocumentViewTestCase):
|
||||
self.assertEqual(resolved_link, None)
|
||||
|
||||
def test_document_version_signature_detail_link_with_permission(self):
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -68,12 +68,12 @@ class DocumentSignatureLinksTestCase(GenericDocumentViewTestCase):
|
||||
)
|
||||
|
||||
def test_document_version_signature_delete_link_no_permission(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -90,12 +90,12 @@ class DocumentSignatureLinksTestCase(GenericDocumentViewTestCase):
|
||||
self.assertEqual(resolved_link, None)
|
||||
|
||||
def test_document_version_signature_delete_link_with_permission(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
|
||||
@@ -35,7 +35,7 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
super(DocumentSignaturesTestCase, self).tearDown()
|
||||
|
||||
def test_embedded_signature_no_key(self):
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH, 'rb') as file_object:
|
||||
signed_document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -51,7 +51,7 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
self.assertEqual(signature.signature_id, None)
|
||||
|
||||
def test_embedded_signature_post_key_verify(self):
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH, 'rb') as file_object:
|
||||
signed_document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -66,7 +66,7 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
self.assertEqual(signature.key_id, TEST_KEY_ID)
|
||||
self.assertEqual(signature.signature_id, None)
|
||||
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
Key.objects.create(key_data=file_object.read())
|
||||
|
||||
signature = EmbeddedSignature.objects.first()
|
||||
@@ -74,10 +74,10 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
self.assertEqual(signature.signature_id, TEST_SIGNATURE_ID)
|
||||
|
||||
def test_embedded_signature_post_no_key_verify(self):
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
key = Key.objects.create(key_data=file_object.read())
|
||||
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH, 'rb') as file_object:
|
||||
signed_document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -99,10 +99,10 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
self.assertEqual(signature.signature_id, None)
|
||||
|
||||
def test_embedded_signature_with_key(self):
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
key = Key.objects.create(key_data=file_object.read())
|
||||
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.signed_document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -120,12 +120,12 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
self.assertEqual(signature.signature_id, TEST_SIGNATURE_ID)
|
||||
|
||||
def test_detached_signature_no_key(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -140,15 +140,15 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
self.assertEqual(signature.public_key_fingerprint, None)
|
||||
|
||||
def test_detached_signature_with_key(self):
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
key = Key.objects.create(key_data=file_object.read())
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -163,12 +163,12 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
self.assertEqual(signature.public_key_fingerprint, key.fingerprint)
|
||||
|
||||
def test_detached_signature_post_key_verify(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -182,7 +182,7 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
self.assertEqual(signature.key_id, TEST_KEY_ID)
|
||||
self.assertEqual(signature.public_key_fingerprint, None)
|
||||
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
key = Key.objects.create(key_data=file_object.read())
|
||||
|
||||
signature = DetachedSignature.objects.first()
|
||||
@@ -190,15 +190,15 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
self.assertEqual(signature.public_key_fingerprint, key.fingerprint)
|
||||
|
||||
def test_detached_signature_post_no_key_verify(self):
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
key = Key.objects.create(key_data=file_object.read())
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -219,7 +219,7 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
self.assertEqual(signature.public_key_fingerprint, None)
|
||||
|
||||
def test_document_no_signature(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -227,12 +227,12 @@ class DocumentSignaturesTestCase(BaseTestCase):
|
||||
self.assertEqual(EmbeddedSignature.objects.count(), 0)
|
||||
|
||||
def test_new_signed_version(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH, 'rb') as file_object:
|
||||
signed_version = document.new_version(
|
||||
file_object=file_object, comment='test comment 1'
|
||||
)
|
||||
@@ -268,13 +268,13 @@ class EmbeddedSignaturesTestCase(BaseTestCase):
|
||||
TEST_SIGNED_DOCUMENT_COUNT = 2
|
||||
|
||||
for count in range(TEST_UNSIGNED_DOCUMENT_COUNT):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
for count in range(TEST_SIGNED_DOCUMENT_COUNT):
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -296,13 +296,13 @@ class EmbeddedSignaturesTestCase(BaseTestCase):
|
||||
TEST_SIGNED_DOCUMENT_COUNT = 2
|
||||
|
||||
for count in range(TEST_UNSIGNED_DOCUMENT_COUNT):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
for count in range(TEST_SIGNED_DOCUMENT_COUNT):
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -324,7 +324,7 @@ class EmbeddedSignaturesTestCase(BaseTestCase):
|
||||
def test_signing(self):
|
||||
key = Key.objects.create(key_data=TEST_KEY_DATA)
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
@@ -31,15 +31,15 @@ TEST_SIGNED_DOCUMENT_COUNT = 2
|
||||
|
||||
class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
def test_signature_list_view_no_permission(self):
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
Key.objects.create(key_data=file_object.read())
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -55,15 +55,15 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
self.assertEqual(response.status_code, 403)
|
||||
|
||||
def test_signature_list_view_with_access(self):
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
Key.objects.create(key_data=file_object.read())
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -85,15 +85,15 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
self.assertEqual(response.context['object_list'].count(), 1)
|
||||
|
||||
def test_signature_detail_view_no_permission(self):
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
Key.objects.create(key_data=file_object.read())
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
signature = DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -109,15 +109,15 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
self.assertEqual(response.status_code, 403)
|
||||
|
||||
def test_signature_detail_view_with_access(self):
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
Key.objects.create(key_data=file_object.read())
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
signature = DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -138,14 +138,14 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
self.assertContains(response, signature.signature_id, status_code=200)
|
||||
|
||||
def test_signature_upload_view_no_permission(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
self.login_user()
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
response = self.post(
|
||||
'signatures:document_version_signature_upload',
|
||||
args=(document.latest_version.pk,),
|
||||
@@ -156,7 +156,7 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
self.assertEqual(DetachedSignature.objects.count(), 0)
|
||||
|
||||
def test_signature_upload_view_with_access(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -168,7 +168,7 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
permission=permission_document_version_signature_upload
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
response = self.post(
|
||||
'signatures:document_version_signature_upload',
|
||||
args=(document.latest_version.pk,),
|
||||
@@ -179,12 +179,12 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
self.assertEqual(DetachedSignature.objects.count(), 1)
|
||||
|
||||
def test_signature_download_view_no_permission(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
signature = DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -200,12 +200,12 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
self.assertEqual(response.status_code, 403)
|
||||
|
||||
def test_signature_download_view_with_access(self):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
signature = DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -231,15 +231,15 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
)
|
||||
|
||||
def test_signature_delete_view_no_permission(self):
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
Key.objects.create(key_data=file_object.read())
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
signature = DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -261,15 +261,15 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
self.assertEqual(DetachedSignature.objects.count(), 1)
|
||||
|
||||
def test_signature_delete_view_with_access(self):
|
||||
with open(TEST_KEY_FILE) as file_object:
|
||||
with open(TEST_KEY_FILE, 'rb') as file_object:
|
||||
Key.objects.create(key_data=file_object.read())
|
||||
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
with open(TEST_SIGNATURE_FILE_PATH) as file_object:
|
||||
with open(TEST_SIGNATURE_FILE_PATH, 'rb') as file_object:
|
||||
signature = DetachedSignature.objects.create(
|
||||
document_version=document.latest_version,
|
||||
signature_file=File(file_object)
|
||||
@@ -304,13 +304,13 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
old_hooks = DocumentVersion._post_save_hooks
|
||||
DocumentVersion._post_save_hooks = {}
|
||||
for count in range(TEST_UNSIGNED_DOCUMENT_COUNT):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
for count in range(TEST_SIGNED_DOCUMENT_COUNT):
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -345,13 +345,13 @@ class SignaturesViewTestCase(GenericDocumentViewTestCase):
|
||||
old_hooks = DocumentVersion._post_save_hooks
|
||||
DocumentVersion._post_save_hooks = {}
|
||||
for count in range(TEST_UNSIGNED_DOCUMENT_COUNT):
|
||||
with open(TEST_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
for count in range(TEST_SIGNED_DOCUMENT_COUNT):
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SIGNED_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
@@ -38,7 +38,7 @@ class WorkflowAPITestCase(BaseAPITestCase):
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -372,7 +372,7 @@ class WorkflowStatesAPITestCase(BaseAPITestCase):
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -548,7 +548,7 @@ class WorkflowTransitionsAPITestCase(BaseAPITestCase):
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
@@ -790,7 +790,7 @@ class DocumentWorkflowsAPITestCase(BaseAPITestCase):
|
||||
super(DocumentWorkflowsAPITestCase, self).tearDown()
|
||||
|
||||
def _create_document(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
@@ -30,7 +30,7 @@ class DocumentStateIndexingTestCase(BaseTestCase):
|
||||
)
|
||||
|
||||
def _create_document(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
@@ -342,7 +342,7 @@ class DocumentStateTransitionViewTestCase(GenericDocumentViewTestCase):
|
||||
)
|
||||
|
||||
def _create_document(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
self.document_2 = self.document_type.new_document(
|
||||
file_object=file_object
|
||||
)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -1,13 +1,6 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from documents.permissions import permission_document_view
|
||||
from documents.tests import GenericDocumentViewTestCase
|
||||
|
||||
from ..models import Tag
|
||||
from ..permissions import (
|
||||
permission_tag_attach, permission_tag_create, permission_tag_delete,
|
||||
permission_tag_edit, permission_tag_remove, permission_tag_view
|
||||
)
|
||||
|
||||
from .literals import (
|
||||
TEST_TAG_COLOR, TEST_TAG_COLOR_EDITED, TEST_TAG_LABEL,
|
||||
@@ -31,7 +24,7 @@ class TagTestMixin(object):
|
||||
|
||||
def _request_tag_delete_view(self):
|
||||
return self.post(
|
||||
viewname='tags:tag_delete', args=(self.tag.pk,)
|
||||
viewname='tags:tag_delete', args=(self.tag.pk,)
|
||||
)
|
||||
|
||||
def _request_tag_edit_view(self):
|
||||
|
||||
@@ -5,9 +5,8 @@ from django.utils.encoding import force_text
|
||||
|
||||
from rest_framework import status
|
||||
|
||||
from documents.models import DocumentType
|
||||
from documents.permissions import permission_document_view
|
||||
from documents.tests import TEST_DOCUMENT_TYPE_LABEL, TEST_SMALL_DOCUMENT_PATH
|
||||
from documents.tests import DocumentTestMixin
|
||||
from rest_api.tests import BaseAPITestCase
|
||||
|
||||
from ..models import Tag
|
||||
@@ -23,7 +22,9 @@ from .literals import (
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class TagAPITestCase(BaseAPITestCase):
|
||||
class TagAPITestCase(DocumentTestMixin, BaseAPITestCase):
|
||||
auto_upload_document = False
|
||||
|
||||
def setUp(self):
|
||||
super(TagAPITestCase, self).setUp()
|
||||
self.login_user()
|
||||
@@ -38,18 +39,6 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
color=TEST_TAG_COLOR, label=TEST_TAG_LABEL
|
||||
)
|
||||
|
||||
def _document_create(self):
|
||||
self.document_type = DocumentType.objects.create(
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
document = self.document_type.new_document(
|
||||
file_object=file_object,
|
||||
)
|
||||
|
||||
return document
|
||||
|
||||
def _request_tag_create(self):
|
||||
return self.post(
|
||||
viewname='rest_api:tag-list', data={
|
||||
@@ -99,16 +88,15 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_tag_document_list_view_no_access(self):
|
||||
self.tag = self._create_tag()
|
||||
document = self._document_create()
|
||||
self.tag.documents.add(document)
|
||||
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
response = self._request_tag_document_list_view()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_tag_document_list_view_with_tag_access(self):
|
||||
self.tag = self._create_tag()
|
||||
document = self._document_create()
|
||||
self.tag.documents.add(document)
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(permission=permission_tag_view, obj=self.tag)
|
||||
response = self._request_tag_document_list_view()
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
@@ -116,22 +104,27 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_tag_document_list_view_with_document_access(self):
|
||||
self.tag = self._create_tag()
|
||||
document = self._document_create()
|
||||
self.tag.documents.add(document)
|
||||
self.grant_access(permission=permission_document_view, obj=document)
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(
|
||||
permission=permission_document_view, obj=self.document
|
||||
)
|
||||
response = self._request_tag_document_list_view()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_tag_document_list_view_with_access(self):
|
||||
self.tag = self._create_tag()
|
||||
document = self._document_create()
|
||||
self.tag.documents.add(document)
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(permission=permission_tag_view, obj=self.tag)
|
||||
self.grant_access(permission=permission_document_view, obj=document)
|
||||
self.grant_access(
|
||||
permission=permission_document_view, obj=self.document
|
||||
)
|
||||
response = self._request_tag_document_list_view()
|
||||
self.assertEqual(response.status_code, status.HTTP_200_OK)
|
||||
self.assertEqual(
|
||||
response.data['results'][0]['uuid'], force_text(document.uuid)
|
||||
response.data['results'][0]['uuid'],
|
||||
force_text(self.document.uuid)
|
||||
)
|
||||
|
||||
def _request_tag_edit_via_patch(self):
|
||||
@@ -192,15 +185,14 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_attach_tag_view_no_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
|
||||
self.document = self.upload_document()
|
||||
response = self._request_document_attach_tag()
|
||||
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
|
||||
self.assertFalse(self.tag in self.document.tags.all())
|
||||
|
||||
def test_document_attach_tag_view_with_document_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.grant_access(permission=permission_tag_attach, obj=self.document)
|
||||
response = self._request_document_attach_tag()
|
||||
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
|
||||
@@ -208,7 +200,7 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_attach_tag_view_with_tag_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.grant_access(permission=permission_tag_attach, obj=self.tag)
|
||||
response = self._request_document_attach_tag()
|
||||
self.assertEqual(response.status_code, status.HTTP_201_CREATED)
|
||||
@@ -216,7 +208,7 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_attach_tag_view_with_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.grant_access(permission=permission_tag_attach, obj=self.document)
|
||||
self.grant_access(permission=permission_tag_attach, obj=self.tag)
|
||||
response = self._request_document_attach_tag()
|
||||
@@ -232,14 +224,14 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_tag_detail_view_no_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
response = self._request_document_tag_detail_view()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_tag_detail_view_with_document_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(permission=permission_document_view, obj=self.document)
|
||||
response = self._request_document_tag_detail_view()
|
||||
@@ -247,7 +239,7 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_tag_detail_view_with_tag_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(permission=permission_tag_view, obj=self.tag)
|
||||
response = self._request_document_tag_detail_view()
|
||||
@@ -255,7 +247,7 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_tag_detail_view_with_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(permission=permission_tag_view, obj=self.tag)
|
||||
self.grant_access(permission=permission_document_view, obj=self.document)
|
||||
@@ -270,14 +262,14 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_tag_list_view_no_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
response = self._request_document_tag_list_view()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
|
||||
def test_document_tag_list_view_with_document_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(permission=permission_document_view, obj=self.document)
|
||||
response = self._request_document_tag_list_view()
|
||||
@@ -286,7 +278,7 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_tag_list_view_with_tag_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(permission=permission_tag_view, obj=self.tag)
|
||||
response = self._request_document_tag_list_view()
|
||||
@@ -294,7 +286,7 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_tag_list_view_with_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(permission=permission_document_view, obj=self.document)
|
||||
self.grant_access(permission=permission_tag_view, obj=self.tag)
|
||||
@@ -311,7 +303,7 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_tag_remove_view_no_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
response = self._request_document_tag_remove()
|
||||
self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
|
||||
@@ -319,7 +311,7 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_tag_remove_view_with_document_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(permission=permission_tag_remove, obj=self.document)
|
||||
response = self._request_document_tag_remove()
|
||||
@@ -328,7 +320,7 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_tag_remove_view_with_tag_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(permission=permission_tag_remove, obj=self.tag)
|
||||
response = self._request_document_tag_remove()
|
||||
@@ -337,7 +329,7 @@ class TagAPITestCase(BaseAPITestCase):
|
||||
|
||||
def test_document_tag_remove_view_with_access(self):
|
||||
self.tag = self._create_tag()
|
||||
self.document = self._document_create()
|
||||
self.document = self.upload_document()
|
||||
self.tag.documents.add(self.document)
|
||||
self.grant_access(permission=permission_document_view, obj=self.document)
|
||||
self.grant_access(permission=permission_tag_remove, obj=self.tag)
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.files.base import File
|
||||
from django.test import override_settings
|
||||
|
||||
from common.tests import BaseTestCase
|
||||
from documents.models import DocumentType
|
||||
from documents.tests import TEST_DOCUMENT_TYPE_LABEL, TEST_SMALL_DOCUMENT_PATH
|
||||
from documents.tests import DocumentTestMixin
|
||||
from document_indexing.models import Index, IndexInstanceNode
|
||||
from document_indexing.tests.literals import TEST_INDEX_LABEL
|
||||
|
||||
@@ -18,23 +16,8 @@ from .literals import (
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class TagSignalIndexingTestCase(BaseTestCase):
|
||||
def setUp(self):
|
||||
super(TagSignalIndexingTestCase, self).setUp()
|
||||
self.document_type = DocumentType.objects.create(
|
||||
label=TEST_DOCUMENT_TYPE_LABEL
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
self.document.delete()
|
||||
self.document_type.delete()
|
||||
super(TagSignalIndexingTestCase, 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(file_object)
|
||||
)
|
||||
class TagSignalIndexingTestCase(DocumentTestMixin, BaseTestCase):
|
||||
auto_upload_document = False
|
||||
|
||||
def test_tag_indexing(self):
|
||||
index = Index.objects.create(label=TEST_INDEX_LABEL)
|
||||
@@ -48,7 +31,7 @@ class TagSignalIndexingTestCase(BaseTestCase):
|
||||
)
|
||||
|
||||
tag = Tag.objects.create(color=TEST_TAG_COLOR, label=TEST_TAG_LABEL)
|
||||
self._create_document()
|
||||
self.document = self.upload_document()
|
||||
|
||||
self.assertTrue(
|
||||
self.document in IndexInstanceNode.objects.get(
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from django.core.files.base import File
|
||||
from django.test import override_settings
|
||||
|
||||
from common.tests import BaseTestCase
|
||||
from documents.models import DocumentType
|
||||
from documents.tests import TEST_DOCUMENT_TYPE_LABEL, TEST_SMALL_DOCUMENT_PATH
|
||||
from documents.tests import DocumentTestMixin
|
||||
|
||||
from ..models import Tag
|
||||
|
||||
@@ -13,17 +11,11 @@ from .literals import TEST_TAG_COLOR, TEST_TAG_LABEL
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class TagTestCase(BaseTestCase):
|
||||
class TagTestCase(DocumentTestMixin, BaseTestCase):
|
||||
auto_upload_document = False
|
||||
|
||||
def setUp(self):
|
||||
super(TagTestCase, 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(file_object)
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
self.document.delete()
|
||||
@@ -37,6 +29,7 @@ class TagTestCase(BaseTestCase):
|
||||
|
||||
def test_addition_and_deletion_of_documents(self):
|
||||
tag = Tag.objects.create(color=TEST_TAG_COLOR, label=TEST_TAG_LABEL)
|
||||
self.document = self.upload_document()
|
||||
|
||||
tag.documents.add(self.document)
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ class TaggedDocumentUploadTestCase(GenericDocumentViewTestCase):
|
||||
self.document.delete()
|
||||
|
||||
def _request_upload_interactive_document_create_view(self):
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_object:
|
||||
with open(TEST_SMALL_DOCUMENT_PATH, 'rb') as file_object:
|
||||
return self.post(
|
||||
viewname='sources:upload_interactive', args=(self.source.pk,),
|
||||
data={
|
||||
|
||||
Reference in New Issue
Block a user