Skip to content

Commit ab2c2ff

Browse files
authored
Merge pull request #98 from acsone/10.0-cmisfolder_copy_false-lmi
[FIX] cmis_field: copy=False is now the default on CmisFolder fields.
2 parents bfc1635 + e831867 commit ab2c2ff

File tree

4 files changed

+29
-2
lines changed

4 files changed

+29
-2
lines changed

CHANGES.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
10.0.3.0.1 (Jan, 30, 2018)
2+
~~~~~~~~~~~~~~~~~~~~~~~~~~
3+
4+
* Fix: copy=False is now the default on CmisFolder fields.
5+
16
10.0.3.0.0 (Dec, 21, 2017)
27
~~~~~~~~~~~~~~~~~~~~~~~~~~
38

cmis_field/__manifest__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
{
66
'name': 'Alfodoo CMIS Field',
7-
'version': '10.0.3.0.0',
7+
'version': '10.0.3.0.1',
88
'summary': 'Specialized field to work with a CMIS server',
99
'category': 'Document Management',
1010
'author': "ACSONE SA/NV ",

cmis_field/fields/cmis_folder.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,8 @@ class CmisFolder(fields.Field):
6868
'create_parent_get': None,
6969
'create_properties_get': None,
7070
'allow_create': True,
71-
'allow_delete': False
71+
'allow_delete': False,
72+
'copy': False, # noderef are not copied by default
7273
}
7374

7475
def __init__(self, backend_name=None, string=None, **kwargs):

cmis_field/tests/test_fields.py

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,3 +179,24 @@ def test_cmis_folder_get_desciption(self):
179179
descr = inst._fields['cmis_folder'].get_description(self.env)
180180
backend_description = descr.get('backend')
181181
self.assertTrue('backend_error' in backend_description)
182+
183+
def test_cmis_folder_copy_false(self):
184+
# By default the cmis_folder value must not be copied.
185+
inst1 = self.env['cmis.test.model'].create({'name': 'folder_name1'})
186+
self.assertFalse(inst1._fields['cmis_folder'].copy)
187+
with mock.patch("odoo.addons.cmis.models.cmis_backend."
188+
"CmisBackend.get_cmis_repository") as \
189+
mocked_get_repository:
190+
mocked_cmis_repository = mock.MagicMock()
191+
mocked_get_repository.return_value = mocked_cmis_repository
192+
193+
def my_side_effect(parent, name, prop=None):
194+
new_object_mock = mock.MagicMock()
195+
new_object_mock.getObjectId.return_value = "id1"
196+
return new_object_mock
197+
198+
mocked_cmis_repository.createFolder.side_effect = my_side_effect
199+
inst1._fields['cmis_folder'].create_value(inst1)
200+
self.assertEquals(inst1.cmis_folder, "id1")
201+
copy_inst1 = inst1.copy()
202+
self.assertFalse(copy_inst1.cmis_folder)

0 commit comments

Comments
 (0)