From a001b4bbb32ae000e189b1a3e2b60f1a43db94cf Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Fri, 26 Jul 2019 18:20:23 -0400 Subject: [PATCH] Move new version block to its own test case Signed-off-by: Roberto Rosario --- mayan/apps/checkouts/tests/test_views.py | 81 +++++++++++++----------- 1 file changed, 44 insertions(+), 37 deletions(-) diff --git a/mayan/apps/checkouts/tests/test_views.py b/mayan/apps/checkouts/tests/test_views.py index 3910dedd98..a8b3256816 100644 --- a/mayan/apps/checkouts/tests/test_views.py +++ b/mayan/apps/checkouts/tests/test_views.py @@ -315,43 +315,6 @@ class DocumentCheckoutViewTestCase( response=response, text=self.test_document.label, status_code=200 ) - def test_document_check_out_new_version(self): - """ - Gitlab issue #231 - User shown option to upload new version of a document even though it - is blocked by checkout - v2.0.0b2 - - Expected results: - - Link to upload version view should not resolve - - Upload version view should reject request - """ - self._create_test_case_superuser() - self._check_out_test_document() - self.login_superuser() - - response = self.post( - viewname='sources:upload_version', kwargs={ - 'document_pk': self.test_document.pk - }, follow=True - ) - - self.assertContains( - response=response, text='blocked from uploading', - status_code=200 - ) - - response = self.get( - viewname='documents:document_version_list', kwargs={ - 'pk': self.test_document.pk - }, follow=True - ) - - # Needed by the url view resolver - response.context.current_app = None - resolved_link = link_document_version_upload.resolve(context=response.context) - - self.assertEqual(resolved_link, None) - def test_document_check_in_forcefull_view_no_permission(self): # Gitlab issue #237 # Forcefully checking in a document by a user without adequate @@ -388,3 +351,47 @@ class DocumentCheckoutViewTestCase( ) self.assertEqual(response.status_code, 302) self.assertFalse(self.test_document.is_checked_out()) + + +class NewVersionBlockViewTestCase( + DocumentCheckoutTestMixin, DocumentCheckoutViewTestMixin, + GenericDocumentViewTestCase): + + def test_document_check_out_new_version(self): + """ + Gitlab issue #231 + User shown option to upload new version of a document even though it + is blocked by checkout - v2.0.0b2 + + Expected results: + - Link to upload version view should not resolve + - Upload version view should reject request + """ + self._create_test_case_superuser() + self._check_out_test_document() + self.login_superuser() + + response = self.post( + viewname='sources:upload_version', kwargs={ + 'document_pk': self.test_document.pk + }, follow=True + ) + + self.assertContains( + response=response, text='blocked from uploading', + status_code=200 + ) + + response = self.get( + viewname='documents:document_version_list', kwargs={ + 'pk': self.test_document.pk + }, follow=True + ) + + # Needed by the url view resolver + response.context.current_app = None + resolved_link = link_document_version_upload.resolve( + context=response.context + ) + + self.assertEqual(resolved_link, None)