Repurpose the source app upload test with metadata as a metadata wizard step test.
Signed-off-by: Michael Price <loneviking72@gmail.com>
This commit is contained in:
committed by
Roberto Rosario
parent
e9a365333f
commit
31c9282d87
@@ -3,7 +3,6 @@ from __future__ import unicode_literals
|
||||
from furl import furl
|
||||
|
||||
from django.shortcuts import get_object_or_404
|
||||
from django.utils.encoding import force_text
|
||||
from django.utils.six.moves.urllib.parse import unquote_plus
|
||||
|
||||
from .models import DocumentMetadata, MetadataType
|
||||
|
||||
62
mayan/apps/metadata/tests/test_wizard_steps.py
Normal file
62
mayan/apps/metadata/tests/test_wizard_steps.py
Normal file
@@ -0,0 +1,62 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
from furl import furl
|
||||
|
||||
from django.urls import reverse
|
||||
|
||||
from documents.models import Document
|
||||
from documents.permissions import permission_document_create
|
||||
from documents.tests import (
|
||||
GenericDocumentViewTestCase, TEST_SMALL_DOCUMENT_PATH,
|
||||
)
|
||||
from metadata.tests.literals import TEST_METADATA_VALUE_UNICODE
|
||||
from metadata.tests.mixins import MetadataTypeMixin
|
||||
|
||||
from sources.models import WebFormSource
|
||||
|
||||
from sources.tests.literals import (
|
||||
TEST_SOURCE_LABEL, TEST_SOURCE_UNCOMPRESS_N,
|
||||
)
|
||||
|
||||
|
||||
class DocumentUploadMetadataTestCase(MetadataTypeMixin, GenericDocumentViewTestCase):
|
||||
def setUp(self):
|
||||
super(DocumentUploadMetadataTestCase, self).setUp()
|
||||
self.login_user()
|
||||
self.source = WebFormSource.objects.create(
|
||||
enabled=True, label=TEST_SOURCE_LABEL,
|
||||
uncompress=TEST_SOURCE_UNCOMPRESS_N
|
||||
)
|
||||
|
||||
self.document.delete()
|
||||
|
||||
self.document_type.metadata.create(
|
||||
metadata_type=self.metadata_type, required=True
|
||||
)
|
||||
|
||||
def tearDown(self):
|
||||
self.document_type.delete()
|
||||
super(DocumentUploadMetadataTestCase, self).tearDown()
|
||||
|
||||
def test_unicode_interactive_with_unicode_metadata(self):
|
||||
url = furl(reverse('sources:upload_interactive'))
|
||||
url.args['metadata0_id'] = self.metadata_type.pk
|
||||
url.args['metadata0_value'] = TEST_METADATA_VALUE_UNICODE
|
||||
|
||||
self.grant_access(
|
||||
permission=permission_document_create, obj=self.document_type
|
||||
)
|
||||
# Upload the test document
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_descriptor:
|
||||
response = self.post(
|
||||
path=url, data={
|
||||
'document-language': 'eng', 'source-file': file_descriptor,
|
||||
'document_type_id': self.document_type.pk,
|
||||
}
|
||||
)
|
||||
self.assertEqual(response.status_code, 302)
|
||||
self.assertEqual(Document.objects.count(), 1)
|
||||
self.assertEqual(
|
||||
Document.objects.first().metadata.first().value,
|
||||
TEST_METADATA_VALUE_UNICODE
|
||||
)
|
||||
@@ -3,10 +3,7 @@ from __future__ import unicode_literals
|
||||
import os
|
||||
import shutil
|
||||
|
||||
from furl import furl
|
||||
|
||||
from django.test import override_settings
|
||||
from django.urls import reverse
|
||||
|
||||
from checkouts.models import NewVersionBlock
|
||||
from common.tests import GenericViewTestCase
|
||||
@@ -18,8 +15,6 @@ from documents.tests import (
|
||||
TEST_DOCUMENT_TYPE_LABEL, TEST_SMALL_DOCUMENT_CHECKSUM,
|
||||
TEST_SMALL_DOCUMENT_PATH,
|
||||
)
|
||||
from metadata.tests.literals import TEST_METADATA_VALUE_UNICODE
|
||||
from metadata.tests.mixins import MetadataTypeMixin
|
||||
|
||||
from ..links import link_upload_version
|
||||
from ..literals import SOURCE_CHOICE_WEB_FORM
|
||||
@@ -124,43 +119,6 @@ class DocumentUploadTestCase(GenericDocumentViewTestCase):
|
||||
)
|
||||
|
||||
|
||||
class DocumentUploadMetadataTestCase(MetadataTypeMixin, GenericDocumentViewTestCase):
|
||||
def setUp(self):
|
||||
super(DocumentUploadMetadataTestCase, self).setUp()
|
||||
self.source = WebFormSource.objects.create(
|
||||
enabled=True, label=TEST_SOURCE_LABEL,
|
||||
uncompress=TEST_SOURCE_UNCOMPRESS_N
|
||||
)
|
||||
|
||||
self.document.delete()
|
||||
|
||||
self.document_type.metadata.create(
|
||||
metadata_type=self.metadata_type, required=True
|
||||
)
|
||||
|
||||
def test_unicode_interactive_with_unicode_metadata(self):
|
||||
self.login_admin_user()
|
||||
|
||||
url = furl(reverse('sources:upload_interactive'))
|
||||
url.args['metadata0_id'] = self.metadata_type.pk
|
||||
url.args['metadata0_value'] = TEST_METADATA_VALUE_UNICODE
|
||||
|
||||
# Upload the test document
|
||||
with open(TEST_SMALL_DOCUMENT_PATH) as file_descriptor:
|
||||
response = self.post(
|
||||
path=url, data={
|
||||
'document-language': 'eng', 'source-file': file_descriptor,
|
||||
'document_type_id': self.document_type.pk,
|
||||
}
|
||||
)
|
||||
self.assertEqual(response.status_code, 302)
|
||||
self.assertEqual(Document.objects.count(), 1)
|
||||
self.assertEqual(
|
||||
Document.objects.first().metadata.first().value,
|
||||
TEST_METADATA_VALUE_UNICODE
|
||||
)
|
||||
|
||||
|
||||
@override_settings(OCR_AUTO_OCR=False)
|
||||
class DocumentUploadIssueTestCase(GenericViewTestCase):
|
||||
def setUp(self):
|
||||
|
||||
Reference in New Issue
Block a user