Add test for required metadata remove issue.
Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
This commit is contained in:
@@ -30,10 +30,10 @@ class DocumentMetadataTestCase(GenericDocumentViewTestCase):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
super(DocumentMetadataTestCase, self).setUp()
|
super(DocumentMetadataTestCase, self).setUp()
|
||||||
|
|
||||||
self.test_metadata_type = MetadataType.objects.create(
|
#self.test_metadata_type = MetadataType.objects.create(
|
||||||
name=TEST_METADATA_TYPE_NAME, label=TEST_METADATA_TYPE_LABEL
|
# name=TEST_METADATA_TYPE_NAME, label=TEST_METADATA_TYPE_LABEL
|
||||||
)
|
#)
|
||||||
|
self._create_test_metadata_type()
|
||||||
self.test_document_type.metadata.create(
|
self.test_document_type.metadata.create(
|
||||||
metadata_type=self.test_metadata_type
|
metadata_type=self.test_metadata_type
|
||||||
)
|
)
|
||||||
@@ -332,6 +332,63 @@ class DocumentMetadataTestCase(GenericDocumentViewTestCase):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
class DocumentMetadataRequiredTestCase(
|
||||||
|
MetadataTestMixin, MetadataTypeTestMixin, GenericDocumentViewTestCase
|
||||||
|
):
|
||||||
|
def setUp(self):
|
||||||
|
super(DocumentMetadataRequiredTestCase, self).setUp()
|
||||||
|
self._create_test_metadata_type()
|
||||||
|
self._create_test_metadata_type()
|
||||||
|
self.test_document_type.metadata.create(
|
||||||
|
metadata_type=self.test_metadata_types[0]
|
||||||
|
)
|
||||||
|
self.test_document_type.metadata.create(
|
||||||
|
metadata_type=self.test_metadata_types[1], required=True
|
||||||
|
)
|
||||||
|
|
||||||
|
def _create_test_document_metadata(self):
|
||||||
|
self.test_document_metadatas = []
|
||||||
|
self.test_document_metadatas.append(
|
||||||
|
self.test_document.metadata.get_or_create(
|
||||||
|
metadata_type=self.test_metadata_types[0], #defaults={'value': 'a'}
|
||||||
|
)
|
||||||
|
)
|
||||||
|
self.test_document_metadatas.append(
|
||||||
|
self.test_document.metadata.get_or_create(
|
||||||
|
metadata_type=self.test_metadata_types[1], #defaults={'value': 'b'}
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
def _request_document_metadata_remove_post_view(self):
|
||||||
|
return self.post(
|
||||||
|
viewname='metadata:metadata_remove',
|
||||||
|
kwargs={'pk': self.test_document.pk}, data={
|
||||||
|
'form-0-id': self.test_metadata_types[0].pk,
|
||||||
|
'form-0-update': True,
|
||||||
|
'form-TOTAL_FORMS': '1',
|
||||||
|
'form-INITIAL_FORMS': '0',
|
||||||
|
'form-MAX_NUM_FORMS': '',
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
def test_document_metadata_remove_post_view_with_access(self):
|
||||||
|
self._create_test_document_metadata()
|
||||||
|
|
||||||
|
self.grant_access(
|
||||||
|
obj=self.test_document,
|
||||||
|
permission=permission_document_metadata_remove
|
||||||
|
)
|
||||||
|
response = self._request_document_metadata_remove_post_view()
|
||||||
|
self.assertEqual(response.status_code, 302)
|
||||||
|
|
||||||
|
self.assertTrue(
|
||||||
|
self.test_document_metadata not in self.test_document.metadata.all()
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class MetadataTypeViewTestCase(
|
class MetadataTypeViewTestCase(
|
||||||
DocumentTestMixin, MetadataTestMixin, MetadataTypeTestMixin,
|
DocumentTestMixin, MetadataTestMixin, MetadataTypeTestMixin,
|
||||||
GenericViewTestCase
|
GenericViewTestCase
|
||||||
|
|||||||
Reference in New Issue
Block a user