From b200438c4ecec7ee8bcc8b07293c1524fa6e7255 Mon Sep 17 00:00:00 2001 From: Michael Price Date: Mon, 19 Mar 2018 16:24:23 -0400 Subject: [PATCH] Add test for the tag app wizard step. Signed-off-by: Michael Price --- mayan/apps/tags/tests/test_wizard_steps.py | 54 ++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 mayan/apps/tags/tests/test_wizard_steps.py diff --git a/mayan/apps/tags/tests/test_wizard_steps.py b/mayan/apps/tags/tests/test_wizard_steps.py new file mode 100644 index 0000000000..c34893bdf0 --- /dev/null +++ b/mayan/apps/tags/tests/test_wizard_steps.py @@ -0,0 +1,54 @@ +from __future__ import unicode_literals + +from documents.models import Document +from documents.permissions import permission_document_create +from documents.tests import ( + GenericDocumentViewTestCase, TEST_SMALL_DOCUMENT_PATH, +) +from sources.models import WebFormSource + +from sources.tests.literals import ( + TEST_SOURCE_LABEL, TEST_SOURCE_UNCOMPRESS_N +) + +from ..models import Tag + +from .literals import TEST_TAG_COLOR, TEST_TAG_LABEL + + +class TaggedDocumentUploadTestCase(GenericDocumentViewTestCase): + def setUp(self): + super(TaggedDocumentUploadTestCase, self).setUp() + self.login_user() + self.source = WebFormSource.objects.create( + enabled=True, label=TEST_SOURCE_LABEL, + uncompress=TEST_SOURCE_UNCOMPRESS_N + ) + + self.document.delete() + + def _request_upload_interactive_document_create_view(self): + with open(TEST_SMALL_DOCUMENT_PATH) as file_object: + return self.post( + viewname='sources:upload_interactive', args=(self.source.pk,), + data={ + 'document_type_id': self.document_type.pk, + 'source-file': file_object, + 'tags': self.tag.pk + } + ) + + def _create_tag(self): + self.tag = Tag.objects.create( + color=TEST_TAG_COLOR, label=TEST_TAG_LABEL + ) + + def test_upload_interactive_view_with_access(self): + self._create_tag() + self.grant_access( + permission=permission_document_create, obj=self.document_type + ) + response = self._request_upload_interactive_document_create_view() + + self.assertEqual(response.status_code, 302) + self.assertTrue(self.tag in Document.objects.first().tags.all())