From 0e7c9975065e6eafefe08f5a0f4e1dac352a7fc7 Mon Sep 17 00:00:00 2001 From: Valentin Deniaud Date: Thu, 6 Feb 2020 17:01:55 +0100 Subject: [PATCH] cmis: handle content_type parameter (#21807) --- passerelle/apps/cmis/models.py | 5 +++-- tests/test_cmis.py | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/passerelle/apps/cmis/models.py b/passerelle/apps/cmis/models.py index 5fb95675..2735036b 100644 --- a/passerelle/apps/cmis/models.py +++ b/passerelle/apps/cmis/models.py @@ -111,6 +111,7 @@ class CmisConnector(BaseResource): filename, data['path'], data['file_byte_content'], + content_type=data['file'].get('content_type'), object_type=data.get('object_type'), properties=data.get('properties'), ) @@ -186,10 +187,10 @@ class CMISGateway(object): @wrap_cmis_error def create_doc(self, file_name, file_path, file_byte_content, - object_type=None, properties=None): + content_type=None, object_type=None, properties=None): folder = self._get_or_create_folder(file_path) properties = properties or {} if object_type: properties['cmis:objectTypeId'] = object_type return folder.createDocument(file_name, contentFile=BytesIO(file_byte_content), - properties=properties) + contentType=content_type, properties=properties) diff --git a/tests/test_cmis.py b/tests/test_cmis.py index 7147d8d6..1d5be756 100644 --- a/tests/test_cmis.py +++ b/tests/test_cmis.py @@ -45,7 +45,8 @@ def test_uploadfile(app, setup, tmpdir, monkeypatch): pass def create_doc(self, file_name, file_path, file_byte_content, - object_type=None, properties=None): + content_type=None, object_type=None, properties=None): + assert content_type == "image/jpeg" with open(file_name, 'wb') as f: f.write(file_byte_content) return Mock(properties={"toto": "tata"}) @@ -89,7 +90,7 @@ def test_uploadfile(app, setup, tmpdir, monkeypatch): def test_upload_file_metadata(app, setup, monkeypatch): class FakeFolder: - def createDocument(self, filename, contentFile, properties): + def createDocument(self, filename, contentFile, properties, contentType=None): return Mock(properties=properties) from passerelle.apps.cmis.models import CMISGateway -- 2.20.1