Commit d10cf0da authored by Jérome Perrin's avatar Jérome Perrin

Enable coding style for erp5_core_test

See merge request nexedi/erp5!1427
parents 2cbd5640 56ece63b
...@@ -100,11 +100,13 @@ ...@@ -100,11 +100,13 @@
</record> </record>
<record id="4" aka="AAAAAAAAAAQ="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.patches.WorkflowTool"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
<pickle> <pickle>
<tuple> <dictionary>
<none/> <item>
<key> <string>_log</string> </key>
<value>
<list> <list>
<dictionary> <dictionary>
<item> <item>
...@@ -117,7 +119,9 @@ ...@@ -117,7 +119,9 @@
</item> </item>
</dictionary> </dictionary>
</list> </list>
</tuple> </value>
</item>
</dictionary>
</pickle> </pickle>
</record> </record>
</ZopeData> </ZopeData>
...@@ -79,7 +79,7 @@ class TestBase(ERP5TypeTestCase, ZopeTestCase.Functional): ...@@ -79,7 +79,7 @@ class TestBase(ERP5TypeTestCase, ZopeTestCase.Functional):
""" """
return ('erp5_base',) return ('erp5_base',)
def login(self): def login(self): # pylint:disable=arguments-differ
uf = self.getPortal().acl_users uf = self.getPortal().acl_users
uf._doAddUser(self.username, '', ['Manager'], []) uf._doAddUser(self.username, '', ['Manager'], [])
user = uf.getUserById(self.username).__of__(uf) user = uf.getUserById(self.username).__of__(uf)
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testBase</string> </value> <value> <string>testBase</string> </value>
...@@ -43,11 +49,7 @@ ...@@ -43,11 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 82, 2: Arguments number differs from overridden \'login\' method (arguments-differ)</string>
<string>W:951, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:1034, 10: Redefining built-in \'id\' (redefined-builtin)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -57,13 +59,28 @@ ...@@ -57,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -76,7 +93,7 @@ ...@@ -76,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -85,7 +102,7 @@ ...@@ -85,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -42,7 +42,6 @@ from Products.ERP5Type.tests.utils import LogInterceptor ...@@ -42,7 +42,6 @@ from Products.ERP5Type.tests.utils import LogInterceptor
from Products.ERP5Type.Workflow import addWorkflowByType from Products.ERP5Type.Workflow import addWorkflowByType
import shutil import shutil
import os import os
import gc
import random import random
import string import string
import tempfile import tempfile
...@@ -65,7 +64,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -65,7 +64,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
) )
## Ignore errors from PortalTransforms (e.g. missing binaries) ## Ignore errors from PortalTransforms (e.g. missing binaries)
def _catch_log_errors(self): def _catch_log_errors(self): # pylint:disable=arguments-differ
LogInterceptor._catch_log_errors(self) LogInterceptor._catch_log_errors(self)
level = self.level level = self.level
def _tr_init(*args, **kw): def _tr_init(*args, **kw):
...@@ -82,7 +81,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -82,7 +81,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
assert self.output == 'BROKEN' assert self.output == 'BROKEN'
Transform.manage_beforeDelete = manage_beforeDelete Transform.manage_beforeDelete = manage_beforeDelete
def _ignore_log_errors(self): def _ignore_log_errors(self): # pylint:disable=arguments-differ
Transform._tr_init = Transform_tr_init Transform._tr_init = Transform_tr_init
Transform.manage_beforeDelete = Transform_manage_beforeDelete Transform.manage_beforeDelete = Transform_manage_beforeDelete
LogInterceptor._ignore_log_errors(self) LogInterceptor._ignore_log_errors(self)
...@@ -127,10 +126,6 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -127,10 +126,6 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
for d in getattr(self, "rmdir_list", ()): for d in getattr(self, "rmdir_list", ()):
shutil.rmtree(d) shutil.rmtree(d)
pw = self.getWorkflowTool()
props = {}
for type_object in self.getTypesTool().listTypeInfo(): for type_object in self.getTypesTool().listTypeInfo():
workflow_list = type_object.getTypeWorkflowList() workflow_list = type_object.getTypeWorkflowList()
if 'geek_workflow' in workflow_list: if 'geek_workflow' in workflow_list:
...@@ -421,8 +416,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -421,8 +416,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
""" """
trash = self.getTrashTool() trash = self.getTrashTool()
trash_ids = list(trash.objectIds()) trash_ids = list(trash.objectIds())
for id in trash_ids: for id_ in trash_ids:
trash.deleteContent(id) trash.deleteContent(id_)
self.assertFalse(len(trash.objectIds()) > 0) self.assertFalse(len(trash.objectIds()) > 0)
def stepCheckTrashBin(self, sequence=None, **kw): def stepCheckTrashBin(self, sequence=None, **kw):
...@@ -600,21 +595,21 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -600,21 +595,21 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
Create Module with objects Create Module with objects
""" """
portal = self.getPortal() portal = self.getPortal()
id = 'geek_module' id_ = 'geek_module'
n = 0 n = 0
while id in portal.objectIds(): while id_ in portal.objectIds():
n = n + 1 n = n + 1
id = "%s_%s" %('geek_module', n) id_ = "%s_%s" % ('geek_module', n)
module = portal.newContent(id=id, portal_type='Geek Module') module = portal.newContent(id=id_, portal_type='Geek Module')
self.assertTrue(module is not None) self.assertTrue(module is not None)
# add a specific permission to module which do not use acquisition # add a specific permission to module which do not use acquisition
module.manage_permission('Copy or Move', ['Assignor'], False) module.manage_permission('Copy or Move', ['Assignor'], False)
sequence.edit(module_id=module.getId()) sequence.edit(module_id=module.getId())
module_object_list = [] module_object_list = []
for i in xrange(10): for _ in xrange(10):
object = module.newContent(portal_type = 'Geek Object') obj = module.newContent(portal_type = 'Geek Object')
self.assertTrue(object is not None) self.assertIsNotNone(obj)
module_object_list.append(object) module_object_list.append(obj)
sequence.edit(module_object_id_list=module_object_list) sequence.edit(module_object_id_list=module_object_list)
def stepAddModuleToBusinessTemplate(self, sequence=None, **kw): def stepAddModuleToBusinessTemplate(self, sequence=None, **kw):
...@@ -623,7 +618,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -623,7 +618,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
""" """
bt = sequence.get('current_bt', None) bt = sequence.get('current_bt', None)
module_id = sequence.get('module_id', None) module_id = sequence.get('module_id', None)
self.assertTrue(module_id is not None) self.assertIsNotNone(module_id)
bt.edit(template_module_id_list=[module_id]) bt.edit(template_module_id_list=[module_id])
def stepCreateModuleObjects(self, sequence=None, **kw): def stepCreateModuleObjects(self, sequence=None, **kw):
...@@ -633,12 +628,12 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -633,12 +628,12 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
portal = self.getPortal() portal = self.getPortal()
module_id = sequence.get('module_id') module_id = sequence.get('module_id')
module = portal._getOb(module_id, None) module = portal._getOb(module_id, None)
self.assertTrue(module is not None) self.assertIsNotNone(module)
module_object_list = [] module_object_list = []
for i in xrange(10): for _ in xrange(10):
object = module.newContent(portal_type = 'Geek Object') obj = module.newContent(portal_type = 'Geek Object')
self.assertTrue(object is not None) self.assertIsNotNone(obj)
module_object_list.append(object.getId()) module_object_list.append(obj.getId())
sequence.edit(module_object_id_list=module_object_list) sequence.edit(module_object_id_list=module_object_list)
def stepRemoveModule(self, sequence=None, **kw): def stepRemoveModule(self, sequence=None, **kw):
...@@ -648,7 +643,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -648,7 +643,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
portal = self.getPortal() portal = self.getPortal()
module_id = sequence.get("module_id") module_id = sequence.get("module_id")
portal.manage_delObjects([module_id]) portal.manage_delObjects([module_id])
self.assertFalse(portal._getOb(module_id, None) is not None) self.assertIsNone(portal._getOb(module_id, None))
def stepCheckModuleExists(self, sequence=None, **kw): def stepCheckModuleExists(self, sequence=None, **kw):
""" """
...@@ -657,7 +652,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -657,7 +652,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
portal = self.getPortal() portal = self.getPortal()
module_id = sequence.get("module_id") module_id = sequence.get("module_id")
new_module = portal._getOb(module_id, None) new_module = portal._getOb(module_id, None)
self.assertFalse(new_module is None) self.assertIsNotNone(new_module)
def stepCheckModulePermissions(self, sequence=None, **kw): def stepCheckModulePermissions(self, sequence=None, **kw):
""" """
...@@ -687,11 +682,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -687,11 +682,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
portal = self.getPortal() portal = self.getPortal()
module_id = sequence.get('module_id') module_id = sequence.get('module_id')
module = portal._getOb(module_id) module = portal._getOb(module_id)
self.assertTrue(module is not None) self.assertIsNotNone(module)
object_id_list = sequence.get('module_object_id_list') object_id_list = sequence.get('module_object_id_list')
for object_id in object_id_list: for object_id in object_id_list:
object = module._getOb(object_id, None) self.assertIsNotNone(module._getOb(object_id, None))
self.assertTrue(object is not None)
def stepCheckModuleObjectsRemoved(self, sequence=None, **kw): def stepCheckModuleObjectsRemoved(self, sequence=None, **kw):
""" """
...@@ -703,8 +697,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -703,8 +697,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self.assertTrue(module is not None) self.assertTrue(module is not None)
object_id_list = sequence.get('module_object_id_list') object_id_list = sequence.get('module_object_id_list')
for object_id in object_id_list: for object_id in object_id_list:
object = module._getOb(object_id, None) self.assertIsNone(module._getOb(object_id, None))
self.assertTrue(object is None)
def stepCheckModuleRemoved(self, sequence=None, **kw): def stepCheckModuleRemoved(self, sequence=None, **kw):
""" """
...@@ -712,7 +705,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -712,7 +705,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
""" """
portal = self.getPortal() portal = self.getPortal()
module_id = sequence.get("module_id") module_id = sequence.get("module_id")
self.assertFalse(portal._getOb(module_id, None) is not None) self.assertIsNone(portal._getOb(module_id, None))
# skins folder # skins folder
def stepCreateSkinFolder(self, sequence=None, **kw): def stepCreateSkinFolder(self, sequence=None, **kw):
...@@ -722,7 +715,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -722,7 +715,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
ps = self.getSkinsTool() ps = self.getSkinsTool()
ps.manage_addProduct['OFSP'].manage_addFolder('erp5_geek') ps.manage_addProduct['OFSP'].manage_addFolder('erp5_geek')
skin_folder = ps._getOb('erp5_geek', None) skin_folder = ps._getOb('erp5_geek', None)
self.assertTrue(skin_folder is not None) self.assertIsNotNone(skin_folder)
sequence.edit(skin_folder_id=skin_folder.getId()) sequence.edit(skin_folder_id=skin_folder.getId())
# add skin in layers # add skin in layers
for skin_name, selection in ps.getSkinPaths(): for skin_name, selection in ps.getSkinPaths():
...@@ -738,7 +731,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -738,7 +731,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
ps = self.getSkinsTool() ps = self.getSkinsTool()
ps.manage_addProduct['OFSP'].manage_addFolder('erp5_nerd') ps.manage_addProduct['OFSP'].manage_addFolder('erp5_nerd')
skin_folder = ps._getOb('erp5_nerd', None) skin_folder = ps._getOb('erp5_nerd', None)
self.assertTrue(skin_folder is not None) self.assertIsNotNone(skin_folder)
sequence.edit(another_skin_folder_id=skin_folder.getId()) sequence.edit(another_skin_folder_id=skin_folder.getId())
# add skin in layers # add skin in layers
for skin_name, selection in ps.getSkinPaths(): for skin_name, selection in ps.getSkinPaths():
...@@ -754,7 +747,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -754,7 +747,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
ps = self.getSkinsTool() ps = self.getSkinsTool()
ps.manage_addProduct['OFSP'].manage_addFolder('erp5_static') ps.manage_addProduct['OFSP'].manage_addFolder('erp5_static')
skin_folder = ps._getOb('erp5_static', None) skin_folder = ps._getOb('erp5_static', None)
self.assertTrue(skin_folder is not None) self.assertIsNotNone(skin_folder)
sequence.edit(static_skin_folder_id=skin_folder.getId()) sequence.edit(static_skin_folder_id=skin_folder.getId())
# add skin in layers # add skin in layers
for skin_name, selection in ps.getSkinPaths(): for skin_name, selection in ps.getSkinPaths():
...@@ -767,10 +760,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -767,10 +760,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
def stepCreateSkinSubFolder(self, sequence=None, **kw): def stepCreateSkinSubFolder(self, sequence=None, **kw):
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_geek', None) skin_folder = ps._getOb('erp5_geek', None)
self.assertTrue(skin_folder is not None) self.assertIsNotNone(skin_folder)
skin_folder.manage_addFolder('erp5_subgeek') skin_folder.manage_addFolder('erp5_subgeek')
skin_subfolder = skin_folder._getOb('erp5_subgeek', None) skin_subfolder = skin_folder._getOb('erp5_subgeek', None)
self.assertTrue(skin_subfolder is not None) self.assertIsNotNone(skin_subfolder)
sequence.edit(skin_subfolder_id=skin_subfolder.getId()) sequence.edit(skin_subfolder_id=skin_subfolder.getId())
def stepCheckSkinSubFolderExists(self, sequence=None, **kw): def stepCheckSkinSubFolderExists(self, sequence=None, **kw):
...@@ -780,21 +773,21 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -780,21 +773,21 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_id = sequence.get('skin_folder_id') skin_id = sequence.get('skin_folder_id')
skin_folder = ps._getOb(skin_id, None) skin_folder = ps._getOb(skin_id, None)
self.assertTrue(skin_folder is not None) self.assertIsNotNone(skin_folder)
subskin_id = sequence.get('skin_subfolder_id') subskin_id = sequence.get('skin_subfolder_id')
skin_subfolder = skin_folder._getOb(subskin_id, None) skin_subfolder = skin_folder._getOb(subskin_id, None)
self.assertTrue(skin_subfolder is not None) self.assertIsNotNone(skin_subfolder)
def stepCreateNewForm(self, sequence=None): def stepCreateNewForm(self, sequence=None):
"""Create a new ERP5 Form in a skin folder.""" """Create a new ERP5 Form in a skin folder."""
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_geek', None) skin_folder = ps._getOb('erp5_geek', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = 'Geek_view' form_id = 'Geek_view'
addERP5Form = skin_folder.manage_addProduct['ERP5Form'].addERP5Form addERP5Form = skin_folder.manage_addProduct['ERP5Form'].addERP5Form
addERP5Form(form_id, 'View') addERP5Form(form_id, 'View')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
self.assertNotEquals(form, None) self.assertIsNotNone(form)
self.assertEqual(sorted(form.get_groups(include_empty=1)), self.assertEqual(sorted(form.get_groups(include_empty=1)),
sorted(['left', 'right', 'center', 'bottom', 'hidden'])) sorted(['left', 'right', 'center', 'bottom', 'hidden']))
addField = form.manage_addProduct['Formulator'].manage_addField addField = form.manage_addProduct['Formulator'].manage_addField
...@@ -813,12 +806,12 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -813,12 +806,12 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Create a new ERP5 Form in a skin folder.""" """Create a new ERP5 Form in a skin folder."""
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_nerd', None) skin_folder = ps._getOb('erp5_nerd', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = 'Geek_view' form_id = 'Geek_view'
addERP5Form = skin_folder.manage_addProduct['ERP5Form'].addERP5Form addERP5Form = skin_folder.manage_addProduct['ERP5Form'].addERP5Form
addERP5Form(form_id, 'View') addERP5Form(form_id, 'View')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
self.assertNotEquals(form, None) self.assertIsNotNone(form)
self.assertEqual(sorted(form.get_groups(include_empty=1)), self.assertEqual(sorted(form.get_groups(include_empty=1)),
sorted(['left', 'right', 'center', 'bottom', 'hidden'])) sorted(['left', 'right', 'center', 'bottom', 'hidden']))
addField = form.manage_addProduct['Formulator'].manage_addField addField = form.manage_addProduct['Formulator'].manage_addField
...@@ -837,22 +830,22 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -837,22 +830,22 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Remove an ERP5 Form.""" """Remove an ERP5 Form."""
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_geek', None) skin_folder = ps._getOb('erp5_geek', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = sequence.get('form_id') form_id = sequence.get('form_id')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
self.assertNotEquals(form, None) self.assertIsNotNone(form)
skin_folder.manage_delObjects([form_id]) skin_folder.manage_delObjects([form_id])
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
self.assertEqual(form, None) self.assertIsNone(form)
def stepAddFormField(self, sequence=None): def stepAddFormField(self, sequence=None):
"""Add a field to an ERP5 Form.""" """Add a field to an ERP5 Form."""
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_geek', None) skin_folder = ps._getOb('erp5_geek', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = sequence.get('form_id') form_id = sequence.get('form_id')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
self.assertNotEquals(form, None) self.assertIsNotNone(form)
self.assertEqual(sorted(form.get_groups(include_empty=1)), self.assertEqual(sorted(form.get_groups(include_empty=1)),
sorted(['left', 'right', 'center', 'bottom', 'hidden'])) sorted(['left', 'right', 'center', 'bottom', 'hidden']))
addField = form.manage_addProduct['Formulator'].manage_addField addField = form.manage_addProduct['Formulator'].manage_addField
...@@ -871,12 +864,12 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -871,12 +864,12 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
def stepModifyFormTitle(self, sequence=None): def stepModifyFormTitle(self, sequence=None):
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_geek', None) skin_folder = ps._getOb('erp5_geek', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = sequence.get('form_id') form_id = sequence.get('form_id')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
form_title = 'First Form Title' form_title = 'First Form Title'
form.title = form_title form.title = form_title
self.assertNotEquals(form, None) self.assertIsNotNone(form)
self.assertEqual(sorted(form.get_groups(include_empty=1)), self.assertEqual(sorted(form.get_groups(include_empty=1)),
sorted(['left', 'right', 'center', 'bottom', 'hidden'])) sorted(['left', 'right', 'center', 'bottom', 'hidden']))
group_dict = {} group_dict = {}
...@@ -891,7 +884,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -891,7 +884,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
def stepRevertFormTitle(self, sequence=None): def stepRevertFormTitle(self, sequence=None):
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_geek', None) skin_folder = ps._getOb('erp5_geek', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = sequence.get('form_id') form_id = sequence.get('form_id')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
form_title = 'Second Form Title' form_title = 'Second Form Title'
...@@ -900,7 +893,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -900,7 +893,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
def stepCheckFormTitle(self, sequence=None): def stepCheckFormTitle(self, sequence=None):
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_geek', None) skin_folder = ps._getOb('erp5_geek', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = sequence.get('form_id') form_id = sequence.get('form_id')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
self.assertEqual('First Form Title', form.title) self.assertEqual('First Form Title', form.title)
...@@ -909,7 +902,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -909,7 +902,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Check the form is exist in erp5_geek.""" """Check the form is exist in erp5_geek."""
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_geek', None) skin_folder = ps._getOb('erp5_geek', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = sequence.get('form_id') form_id = sequence.get('form_id')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
self.assertEqual(form, None) self.assertEqual(form, None)
...@@ -918,19 +911,19 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -918,19 +911,19 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Check the form is not exist in erp5_nerd.""" """Check the form is not exist in erp5_nerd."""
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_nerd', None) skin_folder = ps._getOb('erp5_nerd', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = sequence.get('form_id') form_id = sequence.get('form_id')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
self.assertNotEquals(form, None) self.assertIsNotNone(form)
def stepRemoveFormField(self, sequence=None): def stepRemoveFormField(self, sequence=None):
"""Remove a field from an ERP5 Form.""" """Remove a field from an ERP5 Form."""
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_geek', None) skin_folder = ps._getOb('erp5_geek', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = sequence.get('form_id') form_id = sequence.get('form_id')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
self.assertNotEquals(form, None) self.assertIsNotNone(form)
field_id = sequence.get('field_id') field_id = sequence.get('field_id')
field = form.get_field(field_id) field = form.get_field(field_id)
self.assertNotEquals(field, None) self.assertNotEquals(field, None)
...@@ -941,10 +934,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -941,10 +934,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Check the groups of an ERP5 Form.""" """Check the groups of an ERP5 Form."""
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_geek', None) skin_folder = ps._getOb('erp5_geek', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = sequence.get('form_id') form_id = sequence.get('form_id')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
self.assertNotEquals(form, None) self.assertIsNotNone(form)
group_dict = sequence.get('group_dict') group_dict = sequence.get('group_dict')
self.assertEqual(sorted(form.get_groups(include_empty=1)), self.assertEqual(sorted(form.get_groups(include_empty=1)),
sorted(group_dict.iterkeys())) sorted(group_dict.iterkeys()))
...@@ -958,10 +951,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -958,10 +951,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Check that field title is not removed form erp5_nerd.""" """Check that field title is not removed form erp5_nerd."""
ps = self.getSkinsTool() ps = self.getSkinsTool()
skin_folder = ps._getOb('erp5_nerd', None) skin_folder = ps._getOb('erp5_nerd', None)
self.assertNotEquals(skin_folder, None) self.assertIsNotNone(skin_folder)
form_id = sequence.get('form_id') form_id = sequence.get('form_id')
form = skin_folder._getOb(form_id, None) form = skin_folder._getOb(form_id, None)
self.assertNotEquals(form, None) self.assertIsNotNone(form)
title_field =form._getOb('my_title', None) title_field =form._getOb('my_title', None)
self.assertNotEquals(title_field, None) self.assertNotEquals(title_field, None)
...@@ -1185,9 +1178,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -1185,9 +1178,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
base_category = pc._getOb(bc_id, None) base_category = pc._getOb(bc_id, None)
self.assertTrue(base_category is not None) self.assertTrue(base_category is not None)
category_list = [] category_list = []
for i in xrange(10): for _ in xrange(10):
category = base_category.newContent(portal_type='Category') category = base_category.newContent(portal_type='Category')
self.assertTrue(category is not None)
category_list.append(category.getId()) category_list.append(category.getId())
sequence.edit(category_id_list=category_list) sequence.edit(category_id_list=category_list)
...@@ -1253,9 +1245,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -1253,9 +1245,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self.assertTrue(category is not None) self.assertTrue(category is not None)
subcategory_list = [] subcategory_list = []
subcategory_uid_dict = {} subcategory_uid_dict = {}
for i in xrange(10): for _ in xrange(10):
subcategory = category.newContent(portal_type='Category', title='toto') subcategory = category.newContent(portal_type='Category', title='toto')
self.assertTrue(subcategory is not None)
subcategory_list.append(subcategory.getId()) subcategory_list.append(subcategory.getId())
subcategory_uid_dict[subcategory.getId()] = subcategory.getUid() subcategory_uid_dict[subcategory.getId()] = subcategory.getUid()
sequence.edit(subcategory_id_list=subcategory_list, \ sequence.edit(subcategory_id_list=subcategory_list, \
...@@ -1430,8 +1421,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -1430,8 +1421,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
wf_id = sequence.get('workflow_id') wf_id = sequence.get('workflow_id')
tt = self.getPortal()['portal_trash'] tt = self.getPortal()['portal_trash']
self.assertEqual(len(tt.objectIds()), 1) self.assertEqual(len(tt.objectIds()), 1)
bin = tt.objectValues()[0] trash_bin = tt.objectValues()[0]
self.assertNotEqual(len(bin.portal_workflow_items[wf_id].objectIds()), 0) self.assertNotEqual(len(trash_bin.portal_workflow_items[wf_id].objectIds()), 0)
# Actions # Actions
def stepCreateFirstAction(self, sequence=None, **kw): def stepCreateFirstAction(self, sequence=None, **kw):
...@@ -1666,11 +1657,11 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -1666,11 +1657,11 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self.assertIn(method_id, catalog.sql_uncatalog_object) self.assertIn(method_id, catalog.sql_uncatalog_object)
# check filter # check filter
filter_dict = catalog._getFilterDict() filter_dict = catalog._getFilterDict()
filter = filter_dict[method_id] filter_ = filter_dict[method_id]
self.assertItemsEqual(filter['expression_cache_key'], ['portal_type']) self.assertItemsEqual(filter_['expression_cache_key'], ['portal_type'])
self.assertEqual(filter['type'], []) self.assertEqual(filter_['type'], [])
self.assertEqual(filter['filtered'], 1) self.assertEqual(filter_['filtered'], 1)
self.assertEqual(filter['expression'], 'python: context.isPredicate()') self.assertEqual(filter_['expression'], 'python: context.isPredicate()')
def stepCheckUpdatedCatalogMethodExists(self, sequence=None, **kw): def stepCheckUpdatedCatalogMethodExists(self, sequence=None, **kw):
pc = self.getCatalogTool() pc = self.getCatalogTool()
...@@ -1683,11 +1674,11 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -1683,11 +1674,11 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self.assertIn(method_id, catalog.sql_uncatalog_object) self.assertIn(method_id, catalog.sql_uncatalog_object)
# check filter # check filter
filter_dict = catalog._getFilterDict() filter_dict = catalog._getFilterDict()
filter = filter_dict[method_id] filter_ = filter_dict[method_id]
self.assertItemsEqual(filter['expression_cache_key'], ['portal_type']) self.assertItemsEqual(filter_['expression_cache_key'], ['portal_type'])
self.assertEqual(filter['type'], []) self.assertEqual(filter_['type'], [])
self.assertEqual(filter['filtered'], 1) self.assertEqual(filter_['filtered'], 1)
self.assertEqual(filter['expression'], 'python: context.isDelivery()') self.assertEqual(filter_['expression'], 'python: context.isDelivery()')
def stepCheckCatalogMethodRemoved(self, sequence=None, **kw): def stepCheckCatalogMethodRemoved(self, sequence=None, **kw):
""" """
...@@ -1703,7 +1694,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -1703,7 +1694,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self.assertNotIn(method_id, catalog.sql_uncatalog_object) self.assertNotIn(method_id, catalog.sql_uncatalog_object)
# check filter # check filter
with self.assertRaises(KeyError): with self.assertRaises(KeyError):
catalog._getFilterDict()[method_id] _ = catalog._getFilterDict()[method_id]
def stepRemoveCatalogMethod(self, sequence=None, **kw): def stepRemoveCatalogMethod(self, sequence=None, **kw):
""" """
...@@ -1724,7 +1715,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -1724,7 +1715,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self.assertNotIn(method_id, catalog.sql_uncatalog_object) self.assertNotIn(method_id, catalog.sql_uncatalog_object)
# remove filter # remove filter
with self.assertRaises(KeyError): with self.assertRaises(KeyError):
catalog._getFilterDict()[method_id] _ = catalog._getFilterDict()[method_id]
# Related key, Result key and table, and others # Related key, Result key and table, and others
def stepCreateKeysAndTable(self, sequence=list, **kw): def stepCreateKeysAndTable(self, sequence=list, **kw):
...@@ -2391,9 +2382,9 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -2391,9 +2382,9 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
Add Property Sheet to Business Template Add Property Sheet to Business Template
""" """
bt = sequence.get('current_bt', None) bt = sequence.get('current_bt', None)
self.assertTrue(bt is not None) self.assertIsNotNone(bt)
ps_title = sequence.get('ps_title', None) ps_title = sequence.get('ps_title', None)
self.assertTrue(ps_title is not None) self.assertIsNotNone(ps_title)
bt.edit(template_property_sheet_id_list=[ps_title]) bt.edit(template_property_sheet_id_list=[ps_title])
def stepCheckPropertySheetMigration(self, sequence=None, **kw): def stepCheckPropertySheetMigration(self, sequence=None, **kw):
...@@ -2413,19 +2404,11 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -2413,19 +2404,11 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
""" """
Remove Property Sheet Remove Property Sheet
""" """
ps_title = sequence.get('ps_title', None)
ps_path = sequence.get('ps_path', None) ps_path = sequence.get('ps_path', None)
self.assertTrue(ps_path is not None) self.assertIsNotNone(ps_path)
self.assertTrue(os.path.exists(ps_path)) self.assertTrue(os.path.exists(ps_path))
os.remove(ps_path) os.remove(ps_path)
self.assertFalse(os.path.exists(ps_path)) self.assertFalse(os.path.exists(ps_path))
return
# Property Sheet will not be installed in file sytem
self.assertFalse(os.path.exists(ps_path))
# Property Sheet will be installed in ZODB
self.assertTrue(getattr(self.portal.portal_property_sheets, ps_title, None) is not None)
self.portal.portal_property_sheets.manage_delObjects([ps_title])
self.assertFalse(getattr(self.portal.portal_property_sheets, ps_title, None) is not None)
def stepRemovePropertySheetFromZODB(self, sequence=None, sequencer_list=None, **kw): def stepRemovePropertySheetFromZODB(self, sequence=None, sequencer_list=None, **kw):
""" """
...@@ -2433,7 +2416,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -2433,7 +2416,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
""" """
ps_title = sequence.get('ps_title', None) ps_title = sequence.get('ps_title', None)
ps_path = sequence.get('ps_path', None) ps_path = sequence.get('ps_path', None)
self.assertTrue(ps_path is not None) self.assertIsNotNone(ps_path)
# Property Sheet will not be installed in file sytem # Property Sheet will not be installed in file sytem
self.assertFalse(os.path.exists(ps_path)) self.assertFalse(os.path.exists(ps_path))
# Property Sheet will be installed in ZODB # Property Sheet will be installed in ZODB
...@@ -2447,7 +2430,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -2447,7 +2430,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
""" """
ps_title = sequence.get('ps_title', None) ps_title = sequence.get('ps_title', None)
ps_path = sequence.get('ps_path', None) ps_path = sequence.get('ps_path', None)
self.assertTrue(ps_path is not None) self.assertIsNotNone(ps_path)
# Property Sheet will not be installed in file sytem # Property Sheet will not be installed in file sytem
self.assertFalse(os.path.exists(ps_path)) self.assertFalse(os.path.exists(ps_path))
# Property Sheet will be installed in ZODB # Property Sheet will be installed in ZODB
...@@ -2458,7 +2441,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -2458,7 +2441,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
Check deletion of Property Sheet Check deletion of Property Sheet
""" """
ps_path = sequence.get('ps_path', None) ps_path = sequence.get('ps_path', None)
self.assertTrue(ps_path is not None) self.assertIsNotNone(ps_path)
self.assertFalse(os.path.exists(ps_path)) self.assertFalse(os.path.exists(ps_path))
def stepCheckMigratedPropertySheetRemoved(self, sequence=None, **kw): def stepCheckMigratedPropertySheetRemoved(self, sequence=None, **kw):
...@@ -2492,7 +2475,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -2492,7 +2475,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
""" """
ps_title = sequence.get('ps_title', None) ps_title = sequence.get('ps_title', None)
ps_path = sequence.get('ps_path', None) ps_path = sequence.get('ps_path', None)
self.assertTrue(ps_path is not None) self.assertIsNotNone(ps_path)
# Property Sheet will not be installed in file sytem # Property Sheet will not be installed in file sytem
self.assertFalse(os.path.exists(ps_path)) self.assertFalse(os.path.exists(ps_path))
# Property Sheet will be installed in ZODB # Property Sheet will be installed in ZODB
...@@ -2696,7 +2679,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -2696,7 +2679,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
for item_name in item_list: for item_name in item_list:
item = getattr(bt, item_name) item = getattr(bt, item_name)
if item is not None: if item is not None:
for key, data in item._objects.items(): for data in item._objects.itervalues():
if hasattr(data, '__ac_local_roles__'): if hasattr(data, '__ac_local_roles__'):
self.assertTrue(data.__ac_local_roles__ is None) self.assertTrue(data.__ac_local_roles__ is None)
if hasattr(data, '_owner'): if hasattr(data, '_owner'):
...@@ -2796,7 +2779,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -2796,7 +2779,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self.assertTrue(p._getOb('portal_simulation', None) is None) self.assertTrue(p._getOb('portal_simulation', None) is None)
def stepCheckSimulationToolExists(self, sequence=None, **kw): def stepCheckSimulationToolExists(self, sequence=None, **kw):
self.assertTrue(self.getSimulationTool() is not None) self.assertIsNotNone(self.getSimulationTool())
def stepCheckSubobjectsNotIncluded(self, sequence=None, **kw): def stepCheckSubobjectsNotIncluded(self, sequence=None, **kw):
"""Check subobjects are not included in the base category. """Check subobjects are not included in the base category.
...@@ -2806,30 +2789,19 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -2806,30 +2789,19 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
# XXX maybe too low level # XXX maybe too low level
base_category_obj = bt._category_item._objects.get( base_category_obj = bt._category_item._objects.get(
'portal_categories/%s' % base_category_id) 'portal_categories/%s' % base_category_id)
self.assertTrue(base_category_obj is not None) self.assertIsNotNone(base_category_obj)
self.assertEqual(len(base_category_obj.objectIds()), 0) self.assertEqual(len(base_category_obj.objectIds()), 0)
def stepCheckNoMissingDependencies(self, sequence=None, **kw): def stepCheckNoMissingDependencies(self, sequence=None, **kw):
""" Check if bt has no missing dependency """ Check if bt has no missing dependency
""" """
missing_dep = False sequence['current_bt'].checkDependencies()
bt = sequence.get('current_bt')
try:
bt.checkDependencies()
except:
missing_dep = True
self.assertTrue(not missing_dep)
def stepCheckMissingDependencies(self, sequence=None, **kw): def stepCheckMissingDependencies(self, sequence=None, **kw):
""" Check if bt has missing dependency """ Check if bt has missing dependency
""" """
missing_dep = False with self.assertRaises(Exception):
bt = sequence.get('current_bt') sequence['current_bt'].checkDependencies()
try:
bt.checkDependencies()
except:
missing_dep = True
self.assertTrue(missing_dep)
def stepAddDependency(self, sequence=None, **kw): def stepAddDependency(self, sequence=None, **kw):
""" Add a dependency to the business template """ Add a dependency to the business template
...@@ -2992,7 +2964,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -2992,7 +2964,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
new_value = [] new_value = []
workflow_chain_list = list(bt.getTemplatePortalTypeWorkflowChainList()) workflow_chain_list = list(bt.getTemplatePortalTypeWorkflowChainList())
for workflow_chain in workflow_chain_list: for workflow_chain in workflow_chain_list:
portal_type, wkflow_id = workflow_chain.split(' | ') _, wkflow_id = workflow_chain.split(' | ')
if wkflow_id != workflow_id: if wkflow_id != workflow_id:
new_value.append(workflow_chain) new_value.append(workflow_chain)
bt.edit(template_portal_type_workflow_chain_list=new_value) bt.edit(template_portal_type_workflow_chain_list=new_value)
...@@ -3018,8 +2990,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -3018,8 +2990,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
""" """
Add type role to business template Add type role to business template
""" """
bt = sequence.get('current_bt', None) bt = sequence['current_bt']
self.assertTrue(bt is not None)
ptype_ids = [] ptype_ids = []
ptype_ids.append(sequence.get('object_ptype_id', '')) ptype_ids.append(sequence.get('object_ptype_id', ''))
ptype_ids.append(sequence.get('module_ptype_id', '')) ptype_ids.append(sequence.get('module_ptype_id', ''))
...@@ -3069,7 +3040,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor): ...@@ -3069,7 +3040,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
def stepCreateFakeZODBScript(self, sequence=None, **kw): def stepCreateFakeZODBScript(self, sequence=None, **kw):
"""Create a Script inside portal_skins """Create a Script inside portal_skins
""" """
grain_of_sand = ''.join([random.choice(string.ascii_letters) for i in xrange(10)]) grain_of_sand = ''.join([random.choice(string.ascii_letters) for _ in xrange(10)])
python_script_id = 'ERP5Site_dummyScriptWhichRandomId%s' % grain_of_sand python_script_id = 'ERP5Site_dummyScriptWhichRandomId%s' % grain_of_sand
skin_folder_id = 'custom' skin_folder_id = 'custom'
if getattr(self.portal.portal_skins, skin_folder_id, None) is None: if getattr(self.portal.portal_skins, skin_folder_id, None) is None:
...@@ -6765,7 +6736,7 @@ class TestBusinessTemplate(BusinessTemplateMixin): ...@@ -6765,7 +6736,7 @@ class TestBusinessTemplate(BusinessTemplateMixin):
""" """
# Simulate the case where we have an installed business template providing # Simulate the case where we have an installed business template providing
# the path test_document # the path test_document
new_object = self.portal.newContent(portal_type='File', id='test_document') self.portal.newContent(portal_type='File', id='test_document')
bt = self.portal.portal_templates.newContent( bt = self.portal.portal_templates.newContent(
portal_type='Business Template', portal_type='Business Template',
...@@ -7150,12 +7121,10 @@ class TestBusinessTemplate(BusinessTemplateMixin): ...@@ -7150,12 +7121,10 @@ class TestBusinessTemplate(BusinessTemplateMixin):
bt.edit(template_registered_version_priority_selection_list=()) bt.edit(template_registered_version_priority_selection_list=())
def stepCheckVersionPrioritySetOnSite(self, sequence=None, **kw): def stepCheckVersionPrioritySetOnSite(self, sequence=None, **kw):
bt = sequence.get('current_bt')
self.assertEqual(self.getPortalObject().getVersionPriorityList(), self.assertEqual(self.getPortalObject().getVersionPriorityList(),
sequence['expected_version_priority_list']) sequence['expected_version_priority_list'])
def stepCheckVersionPriorityRemovedFromSite(self, sequence=None, **kw): def stepCheckVersionPriorityRemovedFromSite(self, sequence=None, **kw):
bt = sequence.get('current_bt')
self.assertEqual(self.getPortalObject().getVersionPriorityList(), self.assertEqual(self.getPortalObject().getVersionPriorityList(),
('erp5 | 0.0',)) ('erp5 | 0.0',))
...@@ -7341,8 +7310,7 @@ class TestBusinessTemplate(BusinessTemplateMixin): ...@@ -7341,8 +7310,7 @@ class TestBusinessTemplate(BusinessTemplateMixin):
self.commit() self.commit()
self.portal.organisation_module.manage_delObjects(['1']) self.portal.organisation_module.manage_delObjects(['1'])
broken = self.portal.organisation_module.newContent( self.portal.organisation_module.newContent(portal_type='Mock Broken Organisation', id='1')
portal_type='Mock Broken Organisation', id='1')
self.commit() self.commit()
self.tic() # triger undex/index the document self.tic() # triger undex/index the document
......
...@@ -49,51 +49,7 @@ ...@@ -49,51 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 68, 2: Arguments number differs from overridden \'_catch_log_errors\' method (arguments-differ)</string>
<string>W: 85, 2: Arguments number differs from overridden \'_ignore_log_errors\' method (arguments-differ)</string>
<string>W:135, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:427, 8: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:618, 6: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:606, 4: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:617, 8: Unused variable \'i\' (unused-variable)</string>
<string>W:642, 6: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:641, 8: Unused variable \'i\' (unused-variable)</string>
<string>W:696, 6: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:709, 6: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:1191, 8: Unused variable \'i\' (unused-variable)</string>
<string>W:1259, 8: Unused variable \'i\' (unused-variable)</string>
<string>W:1337, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:1353, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:1366, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:1377, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:1389, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:1389, 14: Unused variable \'wf_ids\' (unused-variable)</string>
<string>W:1445, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:1477, 4: Redefining built-in \'bin\' (redefined-builtin)</string>
<string>W:1713, 4: Redefining built-in \'filter\' (redefined-builtin)</string>
<string>W:1730, 4: Redefining built-in \'filter\' (redefined-builtin)</string>
<string>W:1750, 6: Expression "catalog._getFilterDict()[method_id]" is assigned to nothing (expression-not-assigned)</string>
<string>W:1771, 6: Expression "catalog._getFilterDict()[method_id]" is assigned to nothing (expression-not-assigned)</string>
<string>W:2468, 4: Unreachable code (unreachable)</string>
<string>W:2743, 12: Unused variable \'key\' (unused-variable)</string>
<string>W:2863, 4: No exception type(s) specified (bare-except)</string>
<string>W:2874, 4: No exception type(s) specified (bare-except)</string>
<string>W:2968, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:2998, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:2998, 14: Unused variable \'wf_ids\' (unused-variable)</string>
<string>W:3013, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:3013, 14: Unused variable \'wf_ids\' (unused-variable)</string>
<string>W:3028, 10: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:3066, 6: Unused variable \'portal_type\' (unused-variable)</string>
<string>W:3143, 69: Unused variable \'i\' (unused-variable)</string>
<string>W:6460, 8: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:6855, 4: Unused variable \'new_object\' (unused-variable)</string>
<string>W:7169, 4: Unused variable \'bt\' (unused-variable)</string>
<string>W:7174, 4: Unused variable \'bt\' (unused-variable)</string>
<string>W:7360, 4: Unused variable \'broken\' (unused-variable)</string>
<string>W: 45, 0: Unused import gc (unused-import)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
......
...@@ -65,8 +65,7 @@ class TestRamCache(ERP5TypeTestCase): ...@@ -65,8 +65,7 @@ class TestRamCache(ERP5TypeTestCase):
test_scopes.sort() test_scopes.sort()
## remove DistributedRamCache since it's a flat storage ## remove DistributedRamCache since it's a flat storage
filtered_cache_plugins = filter( filtered_cache_plugins = [x for x in self.cache_plugins if not isinstance(x, DistributedRamCache)]
lambda x: not isinstance(x, DistributedRamCache), self.cache_plugins)
for cache_plugin in filtered_cache_plugins: for cache_plugin in filtered_cache_plugins:
if not self.quiet: if not self.quiet:
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testCache</string> </value> <value> <string>testCache</string> </value>
...@@ -43,9 +49,7 @@ ...@@ -43,9 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 68, 29: map/filter on lambda could be replaced by comprehension (deprecated-lambda)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -55,13 +59,28 @@ ...@@ -55,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -74,7 +93,7 @@ ...@@ -74,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -83,7 +102,7 @@ ...@@ -83,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -65,7 +65,7 @@ class TestCacheTool(ERP5TypeTestCase): ...@@ -65,7 +65,7 @@ class TestCacheTool(ERP5TypeTestCase):
self.createCachedMethod() self.createCachedMethod()
self.commit() self.commit()
def login(self): def login(self): # pylint:disable=arguments-differ
uf = self.portal.acl_users uf = self.portal.acl_users
uf._doAddUser('admin', '', ['Manager'], []) uf._doAddUser('admin', '', ['Manager'], [])
uf._doAddUser('ERP5TypeTestCase', '', ['Manager'], []) uf._doAddUser('ERP5TypeTestCase', '', ['Manager'], [])
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testCacheTool</string> </value> <value> <string>testCacheTool</string> </value>
...@@ -43,9 +49,7 @@ ...@@ -43,9 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 68, 2: Arguments number differs from overridden \'login\' method (arguments-differ)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -55,13 +59,28 @@ ...@@ -55,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -74,7 +93,7 @@ ...@@ -74,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -83,7 +102,7 @@ ...@@ -83,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -57,7 +57,7 @@ class TestCachedSkinsTool(ERP5TypeTestCase): ...@@ -57,7 +57,7 @@ class TestCachedSkinsTool(ERP5TypeTestCase):
# Use None as skinname to keep using the default one. # Use None as skinname to keep using the default one.
self.getSkinnableObject().changeSkin(skinname=None) self.getSkinnableObject().changeSkin(skinname=None)
def login(self): def login(self): # pylint:disable=arguments-differ
uf = self.portal.acl_users uf = self.portal.acl_users
uf._doAddUser('vincent', '', ['Manager'], []) uf._doAddUser('vincent', '', ['Manager'], [])
user = uf.getUserById('vincent').__of__(uf) user = uf.getUserById('vincent').__of__(uf)
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testCachedSkinsTool</string> </value> <value> <string>testCachedSkinsTool</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5Type.tests.testCachedSkinsTool</string> </value> <value> <string>Products.ERP5Type.tests.testCachedSkinsTool</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testCachedSkinsTool</string> </value> <value> <string>test.erp5.testCachedSkinsTool</string> </value>
...@@ -37,9 +49,7 @@ ...@@ -37,9 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 60, 2: Arguments number differs from overridden \'login\' method (arguments-differ)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -49,13 +59,28 @@ ...@@ -49,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -68,7 +93,7 @@ ...@@ -68,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -77,7 +102,7 @@ ...@@ -77,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -49,7 +49,7 @@ class TestConstraint(PropertySheetTestCase): ...@@ -49,7 +49,7 @@ class TestConstraint(PropertySheetTestCase):
""" """
return ('erp5_base',) return ('erp5_base',)
def login(self): def login(self): # pylint:disable=arguments-differ
uf = self.portal.acl_users uf = self.portal.acl_users
uf._doAddUser('rc', '', ['Manager'], []) uf._doAddUser('rc', '', ['Manager'], [])
user = uf.getUserById('rc').__of__(uf) user = uf.getUserById('rc').__of__(uf)
...@@ -114,26 +114,24 @@ class TestConstraint(PropertySheetTestCase): ...@@ -114,26 +114,24 @@ class TestConstraint(PropertySheetTestCase):
Create a object which will be tested. Create a object which will be tested.
""" """
module = self.portal.getDefaultModule(self.object_portal_type) module = self.portal.getDefaultModule(self.object_portal_type)
object = module.newContent(portal_type=self.object_portal_type) document = module.newContent(portal_type=self.object_portal_type)
group1 = object.portal_categories.restrictedTraverse('group/testGroup1') group1 = document.portal_categories.restrictedTraverse('group/testGroup1')
if sequence: if sequence:
sequence.edit( sequence.edit(
object=object, document=document,
group=group1, group=group1,
) )
return object return document
def stepSetObjectGroup(self, sequence=None, def stepSetObjectGroup(self, sequence=None,
sequence_list=None, **kw): sequence_list=None, **kw):
""" """
Set a group to object Set a group to object
""" """
object = sequence.get('object') document = sequence.get('document')
# group1 = object.portal_categories.restrictedTraverse('group/testGroup1') document.edit(group='testGroup1')
# object.edit(group_value=group1)
object.edit(group='testGroup1')
self.assertNotEqual( self.assertNotEqual(
object.getGroup(portal_type=()), document.getGroup(portal_type=()),
None ) None )
def stepSetObjectGroupOrganisation(self, sequence=None, def stepSetObjectGroupOrganisation(self, sequence=None,
...@@ -141,11 +139,11 @@ class TestConstraint(PropertySheetTestCase): ...@@ -141,11 +139,11 @@ class TestConstraint(PropertySheetTestCase):
""" """
Set a group to object, forcing portal_type color to Organisation Set a group to object, forcing portal_type color to Organisation
""" """
object = sequence.get('object') document = sequence.get('document')
object.setGroup(object.getRelativeUrl(), document.setGroup(document.getRelativeUrl(),
portal_type='Organisation') portal_type='Organisation')
self.assertNotEqual( self.assertNotEqual(
object.getGroup(portal_type='Organisation'), document.getGroup(portal_type='Organisation'),
None ) None )
def stepSetObjectGroupList(self, sequence=None, def stepSetObjectGroupList(self, sequence=None,
...@@ -153,68 +151,65 @@ class TestConstraint(PropertySheetTestCase): ...@@ -153,68 +151,65 @@ class TestConstraint(PropertySheetTestCase):
""" """
Set a group to object Set a group to object
""" """
object = sequence.get('object') document = sequence.get('document')
# group1 = object.portal_categories.restrictedTraverse('group/testGroup1') document.edit(group_list=['testGroup1', 'testGroup2'])
# group2 = object.portal_categories.restrictedTraverse('group/testGroup2')
# object.edit(group_value_list=[group1, group2])
object.edit(group_list=['testGroup1', 'testGroup2'])
def stepSetObjectTitle(self, sequence=None, def stepSetObjectTitle(self, sequence=None,
sequence_list=None, **kw): sequence_list=None, **kw):
""" """
Set a different title value Set a different title value
""" """
object = sequence.get('object') document = sequence.get('document')
object_title = self.object_title object_title = self.object_title
object.setTitle(object_title) document.setTitle(object_title)
def stepSetObjectNoneTitle(self, sequence=None, def stepSetObjectNoneTitle(self, sequence=None,
sequence_list=None, **kw): sequence_list=None, **kw):
""" """
Set a different title value Set a different title value
""" """
object = sequence.get('object') document = sequence.get('document')
# Do not call edit, as we want to explicitely modify the property # Do not call edit, as we want to explicitely modify the property
# (and edit modify only if value is different) # (and edit modify only if value is different)
object.setTitle(None) document.setTitle(None)
def stepSetObjectEmptyTitle(self, sequence=None, def stepSetObjectEmptyTitle(self, sequence=None,
sequence_list=None, **kw): sequence_list=None, **kw):
""" """
Set a different title value Set a different title value
""" """
object = sequence.get('object') document = sequence.get('document')
# Do not call edit, as we want to explicitely modify the property # Do not call edit, as we want to explicitely modify the property
# (and edit modify only if value is different) # (and edit modify only if value is different)
object.setTitle('') document.setTitle('')
def stepSetObjectIntTitle(self, sequence=None, def stepSetObjectIntTitle(self, sequence=None,
sequence_list=None, **kw): sequence_list=None, **kw):
""" """
Set a different title value Set a different title value
""" """
object = sequence.get('object') document = sequence.get('document')
object.edit(title=12345) document.edit(title=12345)
def stepSetObjectBadTypedProperty(self, sequence=None, def stepSetObjectBadTypedProperty(self, sequence=None,
sequence_list=None, **kw): sequence_list=None, **kw):
""" """
Set a property with a bad type Set a property with a bad type
""" """
object = sequence.get('object') document = sequence.get('document')
property_name = 'ean13code' property_name = 'ean13code'
# make sure the property is defined on the object # make sure the property is defined on the document
self.assertTrue(not object.hasProperty(property_name)) self.assertTrue(not document.hasProperty(property_name))
self.assertTrue(object.getPropertyType(property_name) != 'int') self.assertTrue(document.getPropertyType(property_name) != 'int')
object.setProperty(property_name, 12) document.setProperty(property_name, 12)
def stepSetObjectIntLocalProperty(self, sequence=None, def stepSetObjectIntLocalProperty(self, sequence=None,
sequence_list=None, **kw): sequence_list=None, **kw):
""" """
Set a local property on the object, with an int type. Set a local property on the document, with an int type.
""" """
object = sequence.get('object') document = sequence.get('document')
object.edit(local_prop = 12345) document.edit(local_prop = 12345)
def _createGenericConstraint(self, sequence=None, klass_name='Constraint', def _createGenericConstraint(self, sequence=None, klass_name='Constraint',
**kw): **kw):
...@@ -225,9 +220,7 @@ class TestConstraint(PropertySheetTestCase): ...@@ -225,9 +220,7 @@ class TestConstraint(PropertySheetTestCase):
module = Constraint module = Constraint
file_path = "%s.%s" % (module.__name__, klass_name) file_path = "%s.%s" % (module.__name__, klass_name)
__import__(file_path) __import__(file_path)
file = getattr(module, klass_name) klass = getattr(module, klass_name)
klass = file
# klass = getattr(file, klass_name)
constraint = klass(**kw) constraint = klass(**kw)
if sequence is not None: if sequence is not None:
sequence.edit(constraint=constraint,) sequence.edit(constraint=constraint,)
...@@ -238,10 +231,10 @@ class TestConstraint(PropertySheetTestCase): ...@@ -238,10 +231,10 @@ class TestConstraint(PropertySheetTestCase):
""" """
Call checkConsistency of a Constraint. Call checkConsistency of a Constraint.
""" """
object = sequence.get('object') document = sequence.get('document')
constraint = sequence.get('constraint') constraint = sequence.get('constraint')
# Check # Check
error_list = constraint.checkConsistency(object) error_list = constraint.checkConsistency(document)
sequence.edit( sequence.edit(
error_list=error_list error_list=error_list
) )
...@@ -251,10 +244,10 @@ class TestConstraint(PropertySheetTestCase): ...@@ -251,10 +244,10 @@ class TestConstraint(PropertySheetTestCase):
""" """
Call checkConsistency of a Constraint, fixing the errors. Call checkConsistency of a Constraint, fixing the errors.
""" """
object = sequence.get('object') document = sequence.get('document')
constraint = sequence.get('constraint') constraint = sequence.get('constraint')
# Check # Check
error_list = constraint.checkConsistency(object, fixit=1) error_list = constraint.checkConsistency(document, fixit=1)
sequence.edit( sequence.edit(
error_list=error_list error_list=error_list
) )
...@@ -264,10 +257,10 @@ class TestConstraint(PropertySheetTestCase): ...@@ -264,10 +257,10 @@ class TestConstraint(PropertySheetTestCase):
""" """
Call checkConsistency of a Constraint. Call checkConsistency of a Constraint.
""" """
object = sequence.get('group') document = sequence.get('group')
constraint = sequence.get('constraint') constraint = sequence.get('constraint')
# Check # Check
error_list = constraint.checkConsistency(object) error_list = constraint.checkConsistency(document)
sequence.edit( sequence.edit(
error_list=error_list error_list=error_list
) )
...@@ -1327,8 +1320,8 @@ class TestConstraint(PropertySheetTestCase): ...@@ -1327,8 +1320,8 @@ class TestConstraint(PropertySheetTestCase):
""" """
Create a Content Object inside one Object Create a Content Object inside one Object
""" """
object = sequence.get('object') document = sequence.get('document')
content_object = object.newContent(portal_type=self.object_content_portal_type) content_object = document.newContent(portal_type=self.object_content_portal_type)
sequence.edit( sequence.edit(
content_object = content_object, content_object = content_object,
) )
...@@ -1373,20 +1366,20 @@ class TestConstraint(PropertySheetTestCase): ...@@ -1373,20 +1366,20 @@ class TestConstraint(PropertySheetTestCase):
""" """
Set valid Title to Object Set valid Title to Object
""" """
object = sequence.get('object') document = sequence.get('document')
object.setTitle(self.object_title) document.setTitle(self.object_title)
sequence.edit( sequence.edit(
object = object, document = document,
) )
def stepSetObjectTitle1(self, sequence=None, sequence_list=None, **kw): def stepSetObjectTitle1(self, sequence=None, sequence_list=None, **kw):
""" """
Set empty (or invalid string) to Object Set empty (or invalid string) to Object
""" """
object = sequence.get('object') document = sequence.get('document')
object.setTitle(' ') document.setTitle(' ')
sequence.edit( sequence.edit(
object = object, document = document,
) )
def test_StringAttributeMatchConstraint(self): def test_StringAttributeMatchConstraint(self):
...@@ -1527,13 +1520,13 @@ class TestConstraint(PropertySheetTestCase): ...@@ -1527,13 +1520,13 @@ class TestConstraint(PropertySheetTestCase):
def stepValidateObject(self, sequence=None, sequence_list=None, **kw): def stepValidateObject(self, sequence=None, sequence_list=None, **kw):
""" """
""" """
document = sequence.get('object') document = sequence.get('document')
document.validate() document.validate()
def stepInvalidateObject(self, sequence=None, sequence_list=None, **kw): def stepInvalidateObject(self, sequence=None, sequence_list=None, **kw):
""" """
""" """
document = sequence.get('object') document = sequence.get('document')
document.invalidate() document.invalidate()
def stepCreateAttributeUnicityConstraint(self, sequence=None, def stepCreateAttributeUnicityConstraint(self, sequence=None,
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testConstraint</string> </value> <value> <string>testConstraint</string> </value>
...@@ -43,26 +49,7 @@ ...@@ -43,26 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 52, 2: Arguments number differs from overridden \'login\' method (arguments-differ)</string>
<string>W:117, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:131, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:144, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:156, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:167, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:176, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:186, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:196, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:204, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:216, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:228, 4: Redefining built-in \'file\' (redefined-builtin)</string>
<string>W:241, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:254, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:267, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:1330, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:1376, 4: Redefining built-in \'object\' (redefined-builtin)</string>
<string>W:1386, 4: Redefining built-in \'object\' (redefined-builtin)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -72,13 +59,28 @@ ...@@ -72,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -91,7 +93,7 @@ ...@@ -91,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -100,7 +102,7 @@ ...@@ -100,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -28,7 +28,7 @@ ...@@ -28,7 +28,7 @@
import unittest import unittest
from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase
from AccessControl.SecurityManagement import newSecurityManager
class TestERP5Category(ERP5TypeTestCase): class TestERP5Category(ERP5TypeTestCase):
...@@ -64,7 +64,6 @@ class TestERP5Category(ERP5TypeTestCase): ...@@ -64,7 +64,6 @@ class TestERP5Category(ERP5TypeTestCase):
return self.getSalePackingListModule()['1'] return self.getSalePackingListModule()['1']
def afterSetUp(self): def afterSetUp(self):
self.login()
# This add the base category size # This add the base category size
portal_categories = self.getCategoryTool() portal_categories = self.getCategoryTool()
person_module = self.getPersonModule() person_module = self.getPersonModule()
...@@ -155,12 +154,6 @@ class TestERP5Category(ERP5TypeTestCase): ...@@ -155,12 +154,6 @@ class TestERP5Category(ERP5TypeTestCase):
self.commitAndTic() self.commitAndTic()
def login(self):
uf = self.getPortal().acl_users
uf._doAddUser('seb', '', ['Manager'], [])
user = uf.getUserById('seb').__of__(uf)
newSecurityManager(None, user)
def commitAndTic(self): def commitAndTic(self):
"""Just to save one line. """Just to save one line.
""" """
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testERP5Category</string> </value> <value> <string>testERP5Category</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5.tests.testERP5Category</string> </value> <value> <string>Products.ERP5.tests.testERP5Category</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testERP5Category</string> </value> <value> <string>test.erp5.testERP5Category</string> </value>
...@@ -37,9 +49,7 @@ ...@@ -37,9 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W:158, 2: Arguments number differs from overridden \'login\' method (arguments-differ)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -49,13 +59,28 @@ ...@@ -49,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -68,7 +93,7 @@ ...@@ -68,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -77,7 +102,7 @@ ...@@ -77,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -65,7 +65,7 @@ if 1: # BBB ...@@ -65,7 +65,7 @@ if 1: # BBB
*args, **kw) *args, **kw)
def setGlobalTranslationService(translation_service): def setGlobalTranslationService(translation_service):
global global_translation_service global global_translation_service # pylint:disable=global-statement
global_translation_service = translation_service global_translation_service = translation_service
zope.component.provideUtility(DummyTranslationDomainFallback, zope.component.provideUtility(DummyTranslationDomainFallback,
provides=IFallbackTranslationDomainFactory) provides=IFallbackTranslationDomainFactory)
...@@ -578,9 +578,8 @@ class TestERP5Core(ERP5TypeTestCase, ZopeTestCase.Functional): ...@@ -578,9 +578,8 @@ class TestERP5Core(ERP5TypeTestCase, ZopeTestCase.Functional):
0 != i.getUid() != i.getProperty('uid')]) 0 != i.getUid() != i.getProperty('uid')])
def test_04_site_manager_and_translation_migration(self): def test_04_site_manager_and_translation_migration(self):
from zope.site.hooks import getSite, setSite from zope.site.hooks import setSite
from zope.component import queryUtility from zope.component import queryUtility
from zope.i18n.interfaces import ITranslationDomain
# check translation is working normaly # check translation is working normaly
erp5_ui_catalog = self.portal.Localizer.erp5_ui erp5_ui_catalog = self.portal.Localizer.erp5_ui
self.assertEqual(queryUtility(ITranslationDomain, 'erp5_ui'), self.assertEqual(queryUtility(ITranslationDomain, 'erp5_ui'),
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testERP5Core</string> </value> <value> <string>testERP5Core</string> </value>
...@@ -43,10 +49,7 @@ ...@@ -43,10 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 67, 4: Using the global statement (global-statement)</string>
<string>W:578, 4: Redefining name \'ITranslationDomain\' from outer scope (line 53) (redefined-outer-name)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -56,13 +59,28 @@ ...@@ -56,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -75,7 +93,7 @@ ...@@ -75,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -84,7 +102,7 @@ ...@@ -84,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -99,8 +99,6 @@ class TestERP5Workflow(ERP5TypeTestCase): ...@@ -99,8 +99,6 @@ class TestERP5Workflow(ERP5TypeTestCase):
transition2.setReference('transition2') transition2.setReference('transition2')
state1.setDestinationValueList([transition1, transition2]) state1.setDestinationValueList([transition1, transition2])
self.portal.portal_types.Folder.setTypeWorkflowList(['wf'])
doc = self.portal.newContent(portal_type='Folder', id='test_doc')
self.assertEqual([transition1, transition2], state1.getDestinationValueList()) self.assertEqual([transition1, transition2], state1.getDestinationValueList())
...@@ -231,6 +229,7 @@ class TestERP5Workflow(ERP5TypeTestCase): ...@@ -231,6 +229,7 @@ class TestERP5Workflow(ERP5TypeTestCase):
""" """
workflow = self.workflow_module.newContent(portal_type='Workflow') workflow = self.workflow_module.newContent(portal_type='Workflow')
state = workflow.newContent(portal_type='Workflow State', title='Some State') state = workflow.newContent(portal_type='Workflow State', title='Some State')
state.Base_viewDict()
transition = workflow.newContent(portal_type='Workflow Transition', transition = workflow.newContent(portal_type='Workflow Transition',
title='Some Transition') title='Some Transition')
transition.setReference('change_something') transition.setReference('change_something')
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testERP5Workflow</string> </value> <value> <string>testERP5Workflow</string> </value>
...@@ -53,13 +59,28 @@ ...@@ -53,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -72,7 +93,7 @@ ...@@ -72,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -81,7 +102,7 @@ ...@@ -81,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -160,7 +160,7 @@ class TestFolder(ERP5TypeTestCase, LogInterceptor): ...@@ -160,7 +160,7 @@ class TestFolder(ERP5TypeTestCase, LogInterceptor):
portal_type='Category') portal_type='Category')
def test_editWithoutModifyPortalContent(self): def test_editWithoutModifyPortalContent(self):
edit = guarded_getattr(self.folder, 'edit') _ = guarded_getattr(self.folder, 'edit')
original_permission_list = self.folder.permission_settings('Modify portal content') original_permission_list = self.folder.permission_settings('Modify portal content')
assert len(original_permission_list) == 1 assert len(original_permission_list) == 1
self.folder.manage_permission('Modify portal content', [], 0) self.folder.manage_permission('Modify portal content', [], 0)
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testFolder</string> </value> <value> <string>testFolder</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5Type.tests.testFolder</string> </value> <value> <string>Products.ERP5Type.tests.testFolder</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testFolder</string> </value> <value> <string>test.erp5.testFolder</string> </value>
...@@ -37,196 +49,7 @@ ...@@ -37,196 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 45, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 46, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 48, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 49, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 52, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 54, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 55, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 58, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 59, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 61, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 64, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 65, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 68, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 70, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 71, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 73, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 74, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 77, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 79, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 80, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 84, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 87, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 88, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 93, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 94, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 95, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 96, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 97, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 98, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:100, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:101, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:104, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:105, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:106, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:109, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:110, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:111, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:112, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)</string>
<string>W:113, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)</string>
<string>W:114, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)</string>
<string>W:116, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:117, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:118, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:119, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:121, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:122, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:123, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:127, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:128, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:130, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:133, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:134, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:135, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:136, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:138, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:139, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:140, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:141, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:143, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:144, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:146, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:148, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:149, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:150, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:151, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:152, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:154, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:155, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:157, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:158, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:159, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:162, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:163, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:164, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:165, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:166, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:167, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:169, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:171, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:172, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:173, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:176, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:179, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:180, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:181, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:182, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:183, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:184, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:185, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:186, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:187, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:189, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:190, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:191, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:192, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:194, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:195, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:196, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:197, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:198, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:199, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:200, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:201, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:202, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:204, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:205, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:206, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:207, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:209, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:210, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:211, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:212, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:213, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:214, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:215, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:216, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:217, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:218, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:220, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:221, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:222, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:223, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:225, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:226, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:227, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:228, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:229, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:230, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:231, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:232, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:233, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:234, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:236, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:237, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:238, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:239, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:240, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:241, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:243, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:244, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:245, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:246, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:247, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:248, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:249, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:250, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:251, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:252, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:253, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:255, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:256, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:257, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:258, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:260, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:261, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:262, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:263, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:264, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:265, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:266, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:268, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:269, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:271, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:272, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:273, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:274, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:275, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:276, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:277, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:278, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:279, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:280, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:281, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:282, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)</string>
<string>W:283, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:284, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:287, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:288, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:289, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:290, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:291, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:292, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:293, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:294, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:295, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:296, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:297, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:163, 6: Unused variable \'edit\' (unused-variable)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -236,13 +59,28 @@ ...@@ -236,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -255,7 +93,7 @@ ...@@ -255,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -264,7 +102,7 @@ ...@@ -264,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -416,9 +416,9 @@ class TestFolderMigration(ERP5TypeTestCase, LogInterceptor): ...@@ -416,9 +416,9 @@ class TestFolderMigration(ERP5TypeTestCase, LogInterceptor):
# Create some objects # Create some objects
self.assertEqual(self.folder.getIdGenerator(), '') self.assertEqual(self.folder.getIdGenerator(), '')
self.assertEqual(len(self.folder), 0) self.assertEqual(len(self.folder), 0)
obj1 = self.newContent(id=obj1_id) self.newContent(id=obj1_id)
obj2 = self.newContent(id=obj2_id) self.newContent(id=obj2_id)
obj3 = self.newContent(id=obj3_id) self.newContent(id=obj3_id)
self.tic() self.tic()
# call migration script # call migration script
self.folder.migrateToHBTree() self.folder.migrateToHBTree()
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testFolderMigration</string> </value> <value> <string>testFolderMigration</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5Type.tests.testFolderMigration</string> </value> <value> <string>Products.ERP5Type.tests.testFolderMigration</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testFolderMigration</string> </value> <value> <string>test.erp5.testFolderMigration</string> </value>
...@@ -37,324 +49,7 @@ ...@@ -37,324 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 41, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 42, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 44, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 45, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 48, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 50, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 51, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 54, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 55, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 58, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 59, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 62, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 63, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 64, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 65, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 67, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 68, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 71, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 73, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 74, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 77, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 78, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 79, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 81, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 82, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 86, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 87, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 88, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 89, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 90, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 91, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 92, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 93, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 94, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 96, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 98, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:100, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:101, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:102, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:103, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:105, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:106, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:107, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:109, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:110, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:111, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:112, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:113, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:114, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:116, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:117, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:119, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:120, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:123, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:124, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:125, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:127, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:128, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:131, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:132, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:133, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:134, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:136, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:137, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:141, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:142, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:143, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:145, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:147, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:149, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:150, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:151, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:153, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:154, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:155, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:156, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:157, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:159, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:160, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:161, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:163, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:164, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:168, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:169, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:170, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:171, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:172, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:173, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:174, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:175, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:176, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:179, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:180, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:182, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:183, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:184, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:185, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:187, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:188, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:189, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:191, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:192, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:193, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:195, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:196, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:198, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:199, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:203, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:204, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:205, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:206, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:207, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:208, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:209, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:210, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:211, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:214, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:215, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:217, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:218, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:219, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:220, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:222, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:223, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:224, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:226, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:227, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:228, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:230, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:231, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:233, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:234, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:235, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:236, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:238, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:239, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:240, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:241, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:243, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:244, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:245, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:247, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:248, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:250, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:251, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:255, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:256, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:257, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:258, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:259, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:260, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:261, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:262, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:263, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:265, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:267, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:269, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:270, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:271, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:272, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:274, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:275, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:276, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:278, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:279, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:280, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:281, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:282, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:283, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:285, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:286, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:288, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:290, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:293, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:294, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:295, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:296, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:298, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:299, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:303, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:304, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:305, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:306, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:307, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:308, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:309, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:310, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:311, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:313, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:315, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:316, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:318, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:320, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:321, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:322, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:323, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:325, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:326, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:327, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:329, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:330, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:331, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:332, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:333, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:334, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:336, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:337, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:339, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:340, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:345, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:346, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:347, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:348, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:349, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:350, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:351, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:352, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:353, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:355, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:356, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:357, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:358, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:359, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:360, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:361, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:362, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:363, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:365, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:366, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:371, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:372, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:373, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:374, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:375, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:376, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:377, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:378, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:379, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:381, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:382, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:383, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:384, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:385, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:386, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:387, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:388, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:389, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:390, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:391, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:392, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:393, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:395, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:396, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:399, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:400, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:401, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:403, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:404, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:405, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:407, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:408, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:412, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:413, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:414, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:415, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:417, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:418, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:419, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:420, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:421, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:422, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:424, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:425, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:427, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:428, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:429, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:430, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:432, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:433, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:434, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:436, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:437, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:438, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:439, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:440, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:442, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:443, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:444, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:446, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:447, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:449, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:451, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:452, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:454, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:455, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:457, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:458, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:460, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:461, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:463, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W:464, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:465, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:467, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:468, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:470, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:472, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:473, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:475, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:476, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:478, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:479, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:481, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:482, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:419, 6: Unused variable \'obj1\' (unused-variable)</string>
<string>W:421, 6: Unused variable \'obj3\' (unused-variable)</string>
<string>W:420, 6: Unused variable \'obj2\' (unused-variable)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -364,13 +59,28 @@ ...@@ -364,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -383,7 +93,7 @@ ...@@ -383,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -392,7 +102,7 @@ ...@@ -392,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -26,13 +26,11 @@ ...@@ -26,13 +26,11 @@
# #
############################################################################## ##############################################################################
import unittest
from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase
from AccessControl.SecurityManagement import newSecurityManager
from Products.ERP5Type.tests.Sequence import SequenceList from Products.ERP5Type.tests.Sequence import SequenceList
from Products.ERP5Type.tests.utils import createZODBPythonScript from Products.ERP5Type.tests.utils import createZODBPythonScript
class TestGeographicalAddress(ERP5TypeTestCase): class TestGeographicalAddress(ERP5TypeTestCase):
""" """
ERP5 Geographical Address related tests. ERP5 Geographical Address related tests.
...@@ -41,7 +39,6 @@ class TestGeographicalAddress(ERP5TypeTestCase): ...@@ -41,7 +39,6 @@ class TestGeographicalAddress(ERP5TypeTestCase):
on a Geographical Address returns the standard text format. on a Geographical Address returns the standard text format.
""" """
run_all_test = 1
entity_portal_type = 'Person' entity_portal_type = 'Person'
address_portal_type = 'Address' address_portal_type = 'Address'
street_address_text = "rue Truc" street_address_text = "rue Truc"
...@@ -49,37 +46,7 @@ class TestGeographicalAddress(ERP5TypeTestCase): ...@@ -49,37 +46,7 @@ class TestGeographicalAddress(ERP5TypeTestCase):
zip_code_text = "12345" zip_code_text = "12345"
city_text = "City1" city_text = "City1"
def getTitle(self): def afterSetUp(self):
return "Geographical Address"
def getBusinessTemplateList(self):
"""
"""
return ('erp5_base', )
def login(self, quiet=0, run=run_all_test):
uf = self.getPortal().acl_users
uf._doAddUser('rc', '', ['Manager'], [])
user = uf.getUserById('rc').__of__(uf)
newSecurityManager(None, user)
def enableLightInstall(self):
"""
You can override this.
Return if we should do a light install (1) or not (0)
"""
return 1
def enableActivityTool(self):
"""
You can override this.
Return if we should create (1) or not (0) an activity tool.
"""
return 1
def afterSetUp(self, quiet=1, run=run_all_test):
self.login()
self.portal = self.getPortal()
self.category_tool = self.getCategoryTool() self.category_tool = self.getCategoryTool()
self.createCategories() self.createCategories()
...@@ -91,7 +58,7 @@ class TestGeographicalAddress(ERP5TypeTestCase): ...@@ -91,7 +58,7 @@ class TestGeographicalAddress(ERP5TypeTestCase):
region_category_list = ['country1', 'country2', ] region_category_list = ['country1', 'country2', ]
if len(self.category_tool.region.contentValues()) == 0 : if len(self.category_tool.region.contentValues()) == 0 :
for category_id in region_category_list: for category_id in region_category_list:
o = self.category_tool.region.newContent(portal_type='Category', self.category_tool.region.newContent(portal_type='Category',
id=category_id, id=category_id,
title=category_id.capitalize()) title=category_id.capitalize())
self.region_category_list = ['region/%s' % x for x \ self.region_category_list = ['region/%s' % x for x \
...@@ -101,7 +68,7 @@ class TestGeographicalAddress(ERP5TypeTestCase): ...@@ -101,7 +68,7 @@ class TestGeographicalAddress(ERP5TypeTestCase):
""" """
Create an entity Create an entity
""" """
portal = self.getPortal() portal = self.portal
module = portal.getDefaultModule(self.entity_portal_type) module = portal.getDefaultModule(self.entity_portal_type)
entity = module.newContent(portal_type=self.entity_portal_type) entity = module.newContent(portal_type=self.entity_portal_type)
sequence.edit( sequence.edit(
...@@ -141,12 +108,10 @@ class TestGeographicalAddress(ERP5TypeTestCase): ...@@ -141,12 +108,10 @@ class TestGeographicalAddress(ERP5TypeTestCase):
self.zip_code_text, self.zip_code_text,
self.city_text,)) self.city_text,))
def test_01_standardAddress(self, quiet=0, run=run_all_test): def test_01_standardAddress(self):
""" """
Test property existence Test property existence
""" """
if not run: return
sequence_list = SequenceList() sequence_list = SequenceList()
sequence_string = '\ sequence_string = '\
CreateEntity \ CreateEntity \
...@@ -161,7 +126,7 @@ class TestGeographicalAddress(ERP5TypeTestCase): ...@@ -161,7 +126,7 @@ class TestGeographicalAddress(ERP5TypeTestCase):
""" """
This script returns a different address format. This script returns a different address format.
""" """
createZODBPythonScript(self.getPortal().portal_skins.custom, createZODBPythonScript(self.portal.portal_skins.custom,
'Address_asText', '', """ 'Address_asText', '', """
return '%s\\n%s %s COUNTRY' % \\ return '%s\\n%s %s COUNTRY' % \\
(context.getStreetAddress(), (context.getStreetAddress(),
...@@ -180,12 +145,10 @@ return '%s\\n%s %s COUNTRY' % \\ ...@@ -180,12 +145,10 @@ return '%s\\n%s %s COUNTRY' % \\
self.zip_code_text, self.zip_code_text,
self.city_text)) self.city_text))
def test_02_asTextScript(self, quiet=0, run=run_all_test): def test_02_asTextScript(self):
""" """
Test property existence Test property existence
""" """
if not run: return
sequence_list = SequenceList() sequence_list = SequenceList()
sequence_string = '\ sequence_string = '\
CreateEntity \ CreateEntity \
...@@ -197,7 +160,3 @@ return '%s\\n%s %s COUNTRY' % \\ ...@@ -197,7 +160,3 @@ return '%s\\n%s %s COUNTRY' % \\
sequence_list.addSequenceString(sequence_string) sequence_list.addSequenceString(sequence_string)
sequence_list.play(self) sequence_list.play(self)
def test_suite():
suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(TestGeographicalAddress))
return suite
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testGeographicalAddress</string> </value> <value> <string>testGeographicalAddress</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5.tests.testGeographicalAddress</string> </value> <value> <string>Products.ERP5.tests.testGeographicalAddress</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testGeographicalAddress</string> </value> <value> <string>test.erp5.testGeographicalAddress</string> </value>
...@@ -37,10 +49,7 @@ ...@@ -37,10 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 80, 2: Arguments number differs from overridden \'afterSetUp\' method (arguments-differ)</string>
<string>W: 94, 8: Unused variable \'o\' (unused-variable)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -50,13 +59,28 @@ ...@@ -50,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -69,7 +93,7 @@ ...@@ -69,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -78,7 +102,7 @@ ...@@ -78,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -173,7 +173,7 @@ class TestIdToolUpgrade(ERP5TypeTestCase): ...@@ -173,7 +173,7 @@ class TestIdToolUpgrade(ERP5TypeTestCase):
def _setUpLastMaxIdDict(self, id_generator_reference): def _setUpLastMaxIdDict(self, id_generator_reference):
def countup(id_generator, id_group, until): def countup(id_generator, id_group, until):
for i in xrange(until + 1): for _ in xrange(until + 1):
self.id_tool.generateNewId(id_generator=id_generator_reference, self.id_tool.generateNewId(id_generator=id_generator_reference,
id_group=id_group) id_group=id_group)
...@@ -251,14 +251,14 @@ class TestIdToolUpgrade(ERP5TypeTestCase): ...@@ -251,14 +251,14 @@ class TestIdToolUpgrade(ERP5TypeTestCase):
self._setUpLastMaxIdDict(id_generator_reference) self._setUpLastMaxIdDict(id_generator_reference)
# test migration: PersistentMapping to OOBTree # test migration: PersistentMapping to OOBTree
self.assertTrue(isinstance(last_id_dict, PersistentMapping)) self.assertIsInstance(last_id_dict, PersistentMapping)
self._assertIdGeneratorLastMaxIdDict(id_generator) self._assertIdGeneratorLastMaxIdDict(id_generator)
id_generator.rebuildGeneratorIdDict() # migrate the dict id_generator.rebuildGeneratorIdDict() # migrate the dict
self._assertIdGeneratorLastMaxIdDict(id_generator) self._assertIdGeneratorLastMaxIdDict(id_generator)
# test migration: OOBTree to OOBTree. this changes nothing, just to be sure # test migration: OOBTree to OOBTree. this changes nothing, just to be sure
last_id_dict = self._getLastIdDict(id_generator) last_id_dict = self._getLastIdDict(id_generator)
self.assertTrue(isinstance(last_id_dict, OOBTree)) self.assertIsInstance(last_id_dict, OOBTree)
self._assertIdGeneratorLastMaxIdDict(id_generator) self._assertIdGeneratorLastMaxIdDict(id_generator)
id_generator.rebuildGeneratorIdDict() # migrate the dict id_generator.rebuildGeneratorIdDict() # migrate the dict
self._assertIdGeneratorLastMaxIdDict(id_generator) self._assertIdGeneratorLastMaxIdDict(id_generator)
...@@ -268,8 +268,8 @@ class TestIdToolUpgrade(ERP5TypeTestCase): ...@@ -268,8 +268,8 @@ class TestIdToolUpgrade(ERP5TypeTestCase):
'SQL Non Continuous Increasing Id Generator': 'SQL Non Continuous Increasing Id Generator':
self._setLastIdDict(id_generator, OOBTree()) # set empty one self._setLastIdDict(id_generator, OOBTree()) # set empty one
last_id_dict = self._getLastIdDict(id_generator) last_id_dict = self._getLastIdDict(id_generator)
assert(len(last_id_dict), 0) # 0 because it is empty self.assertEqual(len(last_id_dict), 0) # 0 because it is empty
self.assertTrue(isinstance(last_id_dict, OOBTree)) self.assertIsInstance(last_id_dict, OOBTree)
# migrate the dict totally from sql table in this case # migrate the dict totally from sql table in this case
id_generator.rebuildGeneratorIdDict() id_generator.rebuildGeneratorIdDict()
self._assertIdGeneratorLastMaxIdDict(id_generator) self._assertIdGeneratorLastMaxIdDict(id_generator)
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testIdToolUpgrade</string> </value> <value> <string>testIdToolUpgrade</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5.tests.testIdToolUpgrade</string> </value> <value> <string>Products.ERP5.tests.testIdToolUpgrade</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testIdToolUpgrade</string> </value> <value> <string>test.erp5.testIdToolUpgrade</string> </value>
...@@ -37,13 +49,7 @@ ...@@ -37,13 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W:141, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)</string>
<string>W:142, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)</string>
<string>W:143, 0: Bad indentation. Found 12 spaces, expected 8 (bad-indentation)</string>
<string>W:176, 10: Unused variable \'i\' (unused-variable)</string>
<string>W:271, 6: Assert called on a 2-uple. Did you mean \'assert x,y\'? (assert-on-tuple)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -53,13 +59,28 @@ ...@@ -53,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -72,7 +93,7 @@ ...@@ -72,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -81,7 +102,7 @@ ...@@ -81,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -35,6 +35,7 @@ from Products.ERP5Type.Base import _aq_reset ...@@ -35,6 +35,7 @@ from Products.ERP5Type.Base import _aq_reset
from AccessControl import ClassSecurityInfo from AccessControl import ClassSecurityInfo
from Products.ERP5Type.Workflow import addWorkflowByType from Products.ERP5Type.Workflow import addWorkflowByType
class TestInteractionWorkflow(ERP5TypeTestCase): class TestInteractionWorkflow(ERP5TypeTestCase):
portal_type = 'Organisation' portal_type = 'Organisation'
...@@ -78,11 +79,9 @@ class TestInteractionWorkflow(ERP5TypeTestCase): ...@@ -78,11 +79,9 @@ class TestInteractionWorkflow(ERP5TypeTestCase):
return addWorkflowByType(wf_tool, "interaction_workflow", wf_id) return addWorkflowByType(wf_tool, "interaction_workflow", wf_id)
def createInteractionWorkflow(self): def createInteractionWorkflow(self):
id = 'test_workflow' if getattr(self.getWorkflowTool(), 'test_workflow', None) is None:
wf_type = "interaction_workflow" self._createInteractionWorkflowWithId('test_workflow')
if getattr(self.getWorkflowTool(), id, None) is None: wf = self.getWorkflowTool()['test_workflow']
self._createInteractionWorkflowWithId(id)
wf = self.getWorkflowTool()[id]
self.wf = wf self.wf = wf
if getattr(wf.scripts, 'afterEdit', None) is None: if getattr(wf.scripts, 'afterEdit', None) is None:
wf.scripts.manage_addProduct['PythonScripts']\ wf.scripts.manage_addProduct['PythonScripts']\
...@@ -96,9 +95,7 @@ class TestInteractionWorkflow(ERP5TypeTestCase): ...@@ -96,9 +95,7 @@ class TestInteractionWorkflow(ERP5TypeTestCase):
_aq_reset() # XXX Fails XXX _setLastId not found when doing newContent _aq_reset() # XXX Fails XXX _setLastId not found when doing newContent
def createInteractionWorkflowWithTwoInteractions(self): def createInteractionWorkflowWithTwoInteractions(self):
id = 'test_workflow' wf = self._createInteractionWorkflowWithId('test_workflow')
wf_type = "interaction_workflow (Web-configurable interaction workflow)"
wf = self._createInteractionWorkflowWithId(id)
self.wf = wf self.wf = wf
wf.scripts.manage_addProduct['PythonScripts']\ wf.scripts.manage_addProduct['PythonScripts']\
.manage_addPythonScript(id='afterEditA') .manage_addPythonScript(id='afterEditA')
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testInteractionWorkflow</string> </value> <value> <string>testInteractionWorkflow</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5.tests.testInteractionWorkflow</string> </value> <value> <string>Products.ERP5.tests.testInteractionWorkflow</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testInteractionWorkflow</string> </value> <value> <string>test.erp5.testInteractionWorkflow</string> </value>
...@@ -37,12 +49,7 @@ ...@@ -37,12 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 82, 4: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W: 83, 4: Unused variable \'wf_type\' (unused-variable)</string>
<string>W:100, 4: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:101, 4: Unused variable \'wf_type\' (unused-variable)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -52,13 +59,28 @@ ...@@ -52,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -71,7 +93,7 @@ ...@@ -71,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -80,7 +102,7 @@ ...@@ -80,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -26,34 +26,14 @@ ...@@ -26,34 +26,14 @@
# #
############################################################################## ##############################################################################
import unittest import json
from AccessControl.SecurityManagement import newSecurityManager
from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase
import json
class TestIntrospectionTool(ERP5TypeTestCase): class TestIntrospectionTool(ERP5TypeTestCase):
def getBusinessTemplateList(self):
""" """
return ('erp5_base',)
def afterSetUp(self):
self.portal = self.getPortal()
self.login()
def login(self):
uf = self.getPortal().acl_users
uf._doAddUser('seb', '', ['Manager'], [])
uf._doAddUser('ERP5TypeTestCase', '', ['Manager'], [])
user = uf.getUserById('seb').__of__(uf)
newSecurityManager(None, user)
def test_getSystemSignatureJSON(self): def test_getSystemSignatureJSON(self):
"""
Test
"""
signature_json = self.portal.portal_introspections.getSystemSignatureAsJSON() signature_json = self.portal.portal_introspections.getSystemSignatureAsJSON()
signature_by_json = json.loads(signature_json) signature_by_json = json.loads(signature_json)
signature = self.portal.portal_introspections.getSystemSignatureDict() signature = self.portal.portal_introspections.getSystemSignatureDict()
...@@ -62,7 +42,3 @@ class TestIntrospectionTool(ERP5TypeTestCase): ...@@ -62,7 +42,3 @@ class TestIntrospectionTool(ERP5TypeTestCase):
for key in signature: for key in signature:
self.assertEqual(signature[key], signature_by_json[key]) self.assertEqual(signature[key], signature_by_json[key])
def test_suite():
suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(TestIntrospectionTool))
return suite
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testIntrospectionTool</string> </value> <value> <string>testIntrospectionTool</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5.tests.testIntrospectionTool</string> </value> <value> <string>Products.ERP5.tests.testIntrospectionTool</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testIntrospectionTool</string> </value> <value> <string>test.erp5.testIntrospectionTool</string> </value>
...@@ -37,9 +49,7 @@ ...@@ -37,9 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 46, 2: Arguments number differs from overridden \'login\' method (arguments-differ)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -49,13 +59,28 @@ ...@@ -49,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -68,7 +93,7 @@ ...@@ -68,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -77,7 +102,7 @@ ...@@ -77,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -150,7 +150,7 @@ class TestLocalizer(ERP5TypeTestCase): ...@@ -150,7 +150,7 @@ class TestLocalizer(ERP5TypeTestCase):
{'fr':"C'est 1€.", 'note':'',}) {'fr':"C'est 1€.", 'note':'',})
localizer = portal.Localizer localizer = portal.Localizer
test_script = createZODBPythonScript(portal.portal_skins.custom, createZODBPythonScript(portal.portal_skins.custom,
'test_script', '', """ 'test_script', '', """
def assertEquals(a, b): def assertEquals(a, b):
if a != b: if a != b:
...@@ -191,7 +191,6 @@ assertEquals("This is 1€.", context.Base_translateString("This is 1€.")) ...@@ -191,7 +191,6 @@ assertEquals("This is 1€.", context.Base_translateString("This is 1€."))
value (e.g. the original message) must be returned value (e.g. the original message) must be returned
""" """
message = " This is 1€ non-translated " message = " This is 1€ non-translated "
localizer = self.portal.Localizer
# Base_translateString == Localizer.translate() currently, which calls # Base_translateString == Localizer.translate() currently, which calls
# zope.i18n.translate and sets 'default' to 'message' before passing it to # zope.i18n.translate and sets 'default' to 'message' before passing it to
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testLocalizer</string> </value> <value> <string>testLocalizer</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5Type.tests.testLocalizer</string> </value> <value> <string>Products.ERP5Type.tests.testLocalizer</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testLocalizer</string> </value> <value> <string>test.erp5.testLocalizer</string> </value>
...@@ -37,10 +49,7 @@ ...@@ -37,10 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W:153, 4: Unused variable \'test_script\' (unused-variable)</string>
<string>W:194, 4: Unused variable \'localizer\' (unused-variable)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -50,13 +59,28 @@ ...@@ -50,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -69,7 +93,7 @@ ...@@ -69,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -78,7 +102,7 @@ ...@@ -78,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -74,11 +74,8 @@ class TestMemcachedTool(ERP5TypeTestCase): ...@@ -74,11 +74,8 @@ class TestMemcachedTool(ERP5TypeTestCase):
self.tic() self.tic()
def afterSetUp(self): def afterSetUp(self):
self.login()
def login(self):
uf = self.portal.acl_users uf = self.portal.acl_users
uf._doAddUser('vincent', '', ['Manager'], []) uf._doAddUser('vincent', self.newPassword(), ['Manager'], [])
user = uf.getUserById('vincent').__of__(uf) user = uf.getUserById('vincent').__of__(uf)
newSecurityManager(None, user) newSecurityManager(None, user)
...@@ -104,6 +101,7 @@ class TestMemcachedTool(ERP5TypeTestCase): ...@@ -104,6 +101,7 @@ class TestMemcachedTool(ERP5TypeTestCase):
memcached_tool = self.portal.portal_memcached memcached_tool = self.portal.portal_memcached
try: try:
import memcache import memcache
del memcache
except ImportError: except ImportError:
# MemcachedTool should be disabled # MemcachedTool should be disabled
self.assertRaises(RuntimeError, memcached_tool.getMemcachedDict) self.assertRaises(RuntimeError, memcached_tool.getMemcachedDict)
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testMemcachedTool</string> </value> <value> <string>testMemcachedTool</string> </value>
...@@ -43,10 +49,7 @@ ...@@ -43,10 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 79, 2: Arguments number differs from overridden \'login\' method (arguments-differ)</string>
<string>W:106, 6: Unused variable \'memcache\' (unused-variable)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -56,13 +59,28 @@ ...@@ -56,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -75,7 +93,7 @@ ...@@ -75,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -84,7 +102,7 @@ ...@@ -84,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -39,12 +39,9 @@ class TestNotificationMessageModule(ERP5TypeTestCase): ...@@ -39,12 +39,9 @@ class TestNotificationMessageModule(ERP5TypeTestCase):
def getBusinessTemplateList(self): def getBusinessTemplateList(self):
return ('erp5_base',) return ('erp5_base',)
def createUser(self, name, role_list):
self.portal.acl_users._doAddUser(name, self.newPassword(), role_list, [])
def afterSetUp(self): def afterSetUp(self):
self.createUser('erp5user', ['Auditor', 'Author']) self.portal.acl_users._doAddUser('erp5user', self.newPassword(), ['Auditor', 'Author'], [])
self.createUser('manager', ['Manager']) self.portal.acl_users._doAddUser('manager', self.newPassword(), ['Manager'], [])
self.portal.email_from_address = 'site@example.invalid' self.portal.email_from_address = 'site@example.invalid'
self.loginByUserName('erp5user') self.loginByUserName('erp5user')
...@@ -130,7 +127,7 @@ class TestNotificationMessageModule(ERP5TypeTestCase): ...@@ -130,7 +127,7 @@ class TestNotificationMessageModule(ERP5TypeTestCase):
text_content_substitution_mapping_method_id= text_content_substitution_mapping_method_id=
'NotificationMessage_getDummySubstitionMapping') 'NotificationMessage_getDummySubstitionMapping')
mime, text = doc.convert('txt', _, text = doc.convert('txt',
substitution_method_parameter_dict=dict(a='b')) substitution_method_parameter_dict=dict(a='b'))
self.assertEqual('substitution text: b', text.rstrip()) self.assertEqual('substitution text: b', text.rstrip())
...@@ -148,7 +145,7 @@ class TestNotificationMessageModule(ERP5TypeTestCase): ...@@ -148,7 +145,7 @@ class TestNotificationMessageModule(ERP5TypeTestCase):
text_content_substitution_mapping_method_id= text_content_substitution_mapping_method_id=
'NotificationMessage_getDummySubstitionMapping') 'NotificationMessage_getDummySubstitionMapping')
mime, text = doc.convert('txt') _, text = doc.convert('txt')
self.assertEqual('substitution text: b', text.rstrip()) self.assertEqual('substitution text: b', text.rstrip())
def test_safe_substitution_content(self): def test_safe_substitution_content(self):
...@@ -167,7 +164,7 @@ class TestNotificationMessageModule(ERP5TypeTestCase): ...@@ -167,7 +164,7 @@ class TestNotificationMessageModule(ERP5TypeTestCase):
text_content_substitution_mapping_method_id= text_content_substitution_mapping_method_id=
'NotificationMessage_getDummySubstitionMapping') 'NotificationMessage_getDummySubstitionMapping')
mime, text = doc.convert('txt') _, text = doc.convert('txt')
self.assertEqual('substitution text: ${b}', text.rstrip()) self.assertEqual('substitution text: ${b}', text.rstrip())
self.assertEqual('${b}', doc.asSubjectText()) self.assertEqual('${b}', doc.asSubjectText())
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testNotificationMessageModule</string> </value> <value> <string>testNotificationMessageModule</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5.tests.testNotificationMessageModule</string> </value> <value> <string>Products.ERP5.tests.testNotificationMessageModule</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testNotificationMessageModule</string> </value> <value> <string>test.erp5.testNotificationMessageModule</string> </value>
...@@ -37,12 +49,7 @@ ...@@ -37,12 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 49, 2: Arguments number differs from overridden \'createUser\' method (arguments-differ)</string>
<string>W:149, 4: Unused variable \'mime\' (unused-variable)</string>
<string>W:168, 4: Unused variable \'mime\' (unused-variable)</string>
<string>W:187, 4: Unused variable \'mime\' (unused-variable)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -52,13 +59,28 @@ ...@@ -52,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -71,7 +93,7 @@ ...@@ -71,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -80,7 +102,7 @@ ...@@ -80,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -38,7 +38,7 @@ from email.header import decode_header, make_header ...@@ -38,7 +38,7 @@ from email.header import decode_header, make_header
from email.utils import parseaddr from email.utils import parseaddr
# Copied from ERP5Type/patches/CMFMailIn.py # Copied from ERP5Type/patches/CMFMailIn.py
def decode_email(file): def decode_email(file_):
# Prepare result # Prepare result
theMail = { theMail = {
'attachment_list': [], 'attachment_list': [],
...@@ -47,9 +47,9 @@ def decode_email(file): ...@@ -47,9 +47,9 @@ def decode_email(file):
'headers': {} 'headers': {}
} }
# Get Message # Get Message
msg = email.message_from_string(file) msg = email.message_from_string(file_)
# Back up original file # Back up original file
theMail['__original__'] = file theMail['__original__'] = file_
# Recode headers to UTF-8 if needed # Recode headers to UTF-8 if needed
for key, value in msg.items(): for key, value in msg.items():
decoded_value_list = decode_header(value) decoded_value_list = decode_header(value)
...@@ -107,7 +107,7 @@ class TestNotificationTool(ERP5TypeTestCase): ...@@ -107,7 +107,7 @@ class TestNotificationTool(ERP5TypeTestCase):
def getTitle(self): def getTitle(self):
return "Notification Tool" return "Notification Tool"
def createUser(self, name, role_list): def createUser(self, name, role_list): # pylint:disable=arguments-differ
user_folder = self.getPortal().acl_users user_folder = self.getPortal().acl_users
user_folder._doAddUser(name, 'password', role_list, []) user_folder._doAddUser(name, 'password', role_list, [])
...@@ -196,8 +196,8 @@ class TestNotificationTool(ERP5TypeTestCase): ...@@ -196,8 +196,8 @@ class TestNotificationTool(ERP5TypeTestCase):
self.portal.portal_notifications.sendMessage( self.portal.portal_notifications.sendMessage(
recipient=sequence['user_a_id'], subject='Subject', message='Message') recipient=sequence['user_a_id'], subject='Subject', message='Message')
last_message = self.portal.MailHost._last_message last_message = self.portal.MailHost._last_message
self.assertNotEquals((), last_message) self.assertNotEqual(last_message, ())
mfrom, mto, messageText = last_message mfrom, mto, _ = last_message
self.assertEqual('Portal Administrator <site@example.invalid>', mfrom) self.assertEqual('Portal Administrator <site@example.invalid>', mfrom)
self.assertEqual(['userA@example.invalid'], mto) self.assertEqual(['userA@example.invalid'], mto)
...@@ -236,8 +236,8 @@ class TestNotificationTool(ERP5TypeTestCase): ...@@ -236,8 +236,8 @@ class TestNotificationTool(ERP5TypeTestCase):
self.portal.portal_notifications.sendMessage( self.portal.portal_notifications.sendMessage(
subject='Subject', message='Message') subject='Subject', message='Message')
last_message = self.portal.MailHost._last_message last_message = self.portal.MailHost._last_message
self.assertNotEquals((), last_message) self.assertNotEqual(last_message, ())
mfrom, mto, messageText = last_message mfrom, mto, _ = last_message
self.assertEqual('Portal Administrator <site@example.invalid>', mfrom) self.assertEqual('Portal Administrator <site@example.invalid>', mfrom)
self.assertEqual(['site@example.invalid'], mto) self.assertEqual(['site@example.invalid'], mto)
...@@ -249,8 +249,8 @@ class TestNotificationTool(ERP5TypeTestCase): ...@@ -249,8 +249,8 @@ class TestNotificationTool(ERP5TypeTestCase):
self.portal.portal_notifications.sendMessage( self.portal.portal_notifications.sendMessage(
recipient=sequence['user_a_id'], subject='Subject', ) recipient=sequence['user_a_id'], subject='Subject', )
last_message = self.portal.MailHost._last_message last_message = self.portal.MailHost._last_message
self.assertNotEquals((), last_message) self.assertNotEqual(last_message, ())
mfrom, mto, messageText = last_message mfrom, mto, _ = last_message
self.assertEqual('Portal Administrator <site@example.invalid>', mfrom) self.assertEqual('Portal Administrator <site@example.invalid>', mfrom)
self.assertEqual(['userA@example.invalid'], mto) self.assertEqual(['userA@example.invalid'], mto)
...@@ -272,7 +272,7 @@ class TestNotificationTool(ERP5TypeTestCase): ...@@ -272,7 +272,7 @@ class TestNotificationTool(ERP5TypeTestCase):
self.portal.portal_notifications.sendMessage( self.portal.portal_notifications.sendMessage(
recipient=sequence['user_a_id'], subject='Subject', message='Message') recipient=sequence['user_a_id'], subject='Subject', message='Message')
last_message = self.portal.MailHost._last_message last_message = self.portal.MailHost._last_message
self.assertNotEquals((), last_message) self.assertNotEqual(last_message, ())
mfrom, mto, messageText = last_message mfrom, mto, messageText = last_message
self.assertEqual('Portal Administrator <site@example.invalid>', mfrom) self.assertEqual('Portal Administrator <site@example.invalid>', mfrom)
self.assertEqual(['userA@example.invalid'], mto) self.assertEqual(['userA@example.invalid'], mto)
...@@ -313,7 +313,7 @@ class TestNotificationTool(ERP5TypeTestCase): ...@@ -313,7 +313,7 @@ class TestNotificationTool(ERP5TypeTestCase):
]) ])
last_message = self.portal.MailHost._last_message last_message = self.portal.MailHost._last_message
self.assertNotEquals((), last_message) self.assertNotEqual(last_message, ())
mfrom, mto, messageText = last_message mfrom, mto, messageText = last_message
self.assertEqual('Portal Administrator <site@example.invalid>', mfrom) self.assertEqual('Portal Administrator <site@example.invalid>', mfrom)
self.assertEqual(['userA@example.invalid'], mto) self.assertEqual(['userA@example.invalid'], mto)
...@@ -345,14 +345,14 @@ class TestNotificationTool(ERP5TypeTestCase): ...@@ -345,14 +345,14 @@ class TestNotificationTool(ERP5TypeTestCase):
recipient=[sequence['user_a_id'], sequence['user_b_id']], subject='Subject', message='Message') recipient=[sequence['user_a_id'], sequence['user_b_id']], subject='Subject', message='Message')
last_message = self.portal.MailHost._last_message last_message = self.portal.MailHost._last_message
self.assertNotEquals((), last_message) self.assertNotEqual(last_message, ())
mfrom, mto, messageText = last_message mfrom, mto, _ = last_message
self.assertEqual('Portal Administrator <site@example.invalid>', mfrom) self.assertEqual('Portal Administrator <site@example.invalid>', mfrom)
self.assertEqual(['userB@example.invalid'], mto) self.assertEqual(['userB@example.invalid'], mto)
previous_message = self.portal.MailHost._previous_message previous_message = self.portal.MailHost._previous_message
self.assertNotEquals((), previous_message) self.assertNotEqual(last_message, ())
mfrom, mto, messageText = previous_message mfrom, mto, _ = previous_message
self.assertEqual('Portal Administrator <site@example.invalid>', mfrom) self.assertEqual('Portal Administrator <site@example.invalid>', mfrom)
self.assertEqual(['userA@example.invalid'], mto) self.assertEqual(['userA@example.invalid'], mto)
...@@ -400,7 +400,7 @@ class TestNotificationTool(ERP5TypeTestCase): ...@@ -400,7 +400,7 @@ class TestNotificationTool(ERP5TypeTestCase):
self.portal.portal_notifications.sendMessage( self.portal.portal_notifications.sendMessage(
recipient=person.getObject(), subject='Subject', message='Message') recipient=person.getObject(), subject='Subject', message='Message')
last_message = self.portal.MailHost._last_message last_message = self.portal.MailHost._last_message
self.assertNotEquals((), last_message) self.assertNotEqual(last_message, ())
mfrom, mto, messageText = last_message mfrom, mto, messageText = last_message
self.assertEqual('Portal Administrator <site@example.invalid>', mfrom) self.assertEqual('Portal Administrator <site@example.invalid>', mfrom)
self.assertEqual(['userA@example.invalid'], mto) self.assertEqual(['userA@example.invalid'], mto)
...@@ -434,7 +434,7 @@ Yes, I will go.""" ...@@ -434,7 +434,7 @@ Yes, I will go."""
recipient=sequence['user_a_id'], subject='Subject', recipient=sequence['user_a_id'], subject='Subject',
message_text_format='text/plain', message=message) message_text_format='text/plain', message=message)
last_message = self.portal.MailHost._last_message last_message = self.portal.MailHost._last_message
self.assertNotEquals((), last_message) self.assertNotEqual(last_message, ())
mfrom, mto, messageText = last_message mfrom, mto, messageText = last_message
self.assertEqual('Portal Administrator <site@example.invalid>', mfrom) self.assertEqual('Portal Administrator <site@example.invalid>', mfrom)
self.assertEqual(['userA@example.invalid'], mto) self.assertEqual(['userA@example.invalid'], mto)
...@@ -493,7 +493,7 @@ Yes, I will go.""" ...@@ -493,7 +493,7 @@ Yes, I will go."""
self.portal.portal_notifications.sendMessage( self.portal.portal_notifications.sendMessage(
recipient=sequence['user_a_id'], subject='Subject', message='Message') recipient=sequence['user_a_id'], subject='Subject', message='Message')
last_message = self.portal.MailHost._last_message last_message = self.portal.MailHost._last_message
self.assertNotEquals((), last_message) self.assertNotEqual(last_message, ())
def test_permission_on_recipient_not_needed(self): def test_permission_on_recipient_not_needed(self):
"""Notification Tool can be used to send Messages even when user does not """Notification Tool can be used to send Messages even when user does not
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testNotificationTool</string> </value> <value> <string>testNotificationTool</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5.tests.testNotificationTool</string> </value> <value> <string>Products.ERP5.tests.testNotificationTool</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testNotificationTool</string> </value> <value> <string>test.erp5.testNotificationTool</string> </value>
...@@ -37,15 +49,7 @@ ...@@ -37,15 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 64, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)</string>
<string>W: 41, 17: Redefining built-in \'file\' (redefined-builtin)</string>
<string>W:110, 2: Arguments number differs from overridden \'createUser\' method (arguments-differ)</string>
<string>W:200, 16: Unused variable \'messageText\' (unused-variable)</string>
<string>W:240, 16: Unused variable \'messageText\' (unused-variable)</string>
<string>W:253, 16: Unused variable \'messageText\' (unused-variable)</string>
<string>W:349, 16: Unused variable \'messageText\' (unused-variable)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -55,13 +59,28 @@ ...@@ -55,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -74,7 +93,7 @@ ...@@ -74,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -83,7 +102,7 @@ ...@@ -83,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -29,7 +29,6 @@ ...@@ -29,7 +29,6 @@
import unittest import unittest
from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase
from AccessControl.SecurityManagement import newSecurityManager
from Products.ERP5Type.tests.Sequence import SequenceList from Products.ERP5Type.tests.Sequence import SequenceList
from erp5.component.tool.SessionTool import SESSION_CACHE_FACTORY from erp5.component.tool.SessionTool import SESSION_CACHE_FACTORY
from string import letters as LETTERS from string import letters as LETTERS
...@@ -47,27 +46,6 @@ class TestSessionTool(ERP5TypeTestCase): ...@@ -47,27 +46,6 @@ class TestSessionTool(ERP5TypeTestCase):
session_id = "123456789" session_id = "123456789"
def getTitle(self):
return "Session Tool"
def afterSetUp(self):
# create a Memcached Plugin
memcached_tool = self.portal.portal_memcached
#create Memcache Plugin
if getattr(memcached_tool, 'default_memcached_plugin', None) is None:
memcached_tool.newContent(id='default_memcached_plugin',
portal_type='Memcached Plugin',
int_index=0,
url_string='127.0.0.1:11211')
self.login()
def login(self):
uf = self.portal.acl_users
uf._doAddUser('ivan', '', ['Manager'], [])
uf._doAddUser('ERP5TypeTestCase', '', ['Manager'], [])
user = uf.getUserById('ivan').__of__(uf)
newSecurityManager(None, user)
def _changeCachePlugin(self, portal_type, storage_duration = 86400): def _changeCachePlugin(self, portal_type, storage_duration = 86400):
""" Change current cache plugin with new one. """ """ Change current cache plugin with new one. """
portal_caches = self.portal.portal_caches portal_caches = self.portal.portal_caches
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testSessionTool</string> </value> <value> <string>testSessionTool</string> </value>
...@@ -43,9 +49,7 @@ ...@@ -43,9 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 70, 2: Arguments number differs from overridden \'login\' method (arguments-differ)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -55,13 +59,28 @@ ...@@ -55,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -74,7 +93,7 @@ ...@@ -74,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -83,7 +102,7 @@ ...@@ -83,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -75,4 +75,4 @@ class TestTimeout(ERP5TypeTestCase): ...@@ -75,4 +75,4 @@ class TestTimeout(ERP5TypeTestCase):
with Deadline(1.0): with Deadline(1.0):
time.sleep(2) time.sleep(2)
with self.assertRaises(TimeoutReachedError): with self.assertRaises(TimeoutReachedError):
[x.getObject() for x in self.portal.portal_templates.searchFolder()] _ = [x.getObject() for x in self.portal.portal_templates.searchFolder()]
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testTimeout</string> </value> <value> <string>testTimeout</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5Type.tests.testTimeout</string> </value> <value> <string>Products.ERP5Type.tests.testTimeout</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testTimeout</string> </value> <value> <string>test.erp5.testTimeout</string> </value>
...@@ -37,9 +49,7 @@ ...@@ -37,9 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 78, 8: Expression "[x.getObject() for x in self.portal.portal_templates.searchFolder()]" is assigned to nothing (expression-not-assigned)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -49,13 +59,28 @@ ...@@ -49,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -68,7 +93,7 @@ ...@@ -68,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -77,7 +102,7 @@ ...@@ -77,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -26,14 +26,12 @@ ...@@ -26,14 +26,12 @@
# #
############################################################################## ##############################################################################
import unittest
from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase
from AccessControl.SecurityManagement import newSecurityManager, \ from AccessControl.SecurityManagement import noSecurityManager
noSecurityManager
from AccessControl.ZopeGuards import guarded_apply, guarded_getattr from AccessControl.ZopeGuards import guarded_apply, guarded_getattr
from zExceptions import Unauthorized from zExceptions import Unauthorized
class TestTimerService(ERP5TypeTestCase): class TestTimerService(ERP5TypeTestCase):
""" """
Test TimerService-related features. Maybe this should be put in TimerService Test TimerService-related features. Maybe this should be put in TimerService
...@@ -41,20 +39,6 @@ class TestTimerService(ERP5TypeTestCase): ...@@ -41,20 +39,6 @@ class TestTimerService(ERP5TypeTestCase):
idea to put an ERP5-type test in it. idea to put an ERP5-type test in it.
""" """
def getTitle(self):
return "TimerService"
def getBusinessTemplateList(self):
"""
"""
return ()
def afterSetUp(self):
uf = self.portal.acl_users
uf._doAddUser('rc', '', ['Manager'], [])
user = uf.getUserById('rc').__of__(uf)
newSecurityManager(None, user)
def test_01_checkAnonymousProcessing(self): def test_01_checkAnonymousProcessing(self):
""" """
Test whether a timer can be invoked by anonymous. Test whether a timer can be invoked by anonymous.
...@@ -66,11 +50,6 @@ class TestTimerService(ERP5TypeTestCase): ...@@ -66,11 +50,6 @@ class TestTimerService(ERP5TypeTestCase):
guarded_apply(process_timer, (0,)) guarded_apply(process_timer, (0,))
except Unauthorized: except Unauthorized:
self.fail('calling process_timer is unauthorized') self.fail('calling process_timer is unauthorized')
except: except Exception:
# Do not care about any exception but unauthorized. # Do not care about any exception but unauthorized.
pass pass
def test_suite():
suite = unittest.TestSuite()
suite.addTest(unittest.makeSuite(TestTimerService))
return suite
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testTimerService</string> </value> <value> <string>testTimerService</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5Type.tests.testTimerService</string> </value> <value> <string>Products.ERP5Type.tests.testTimerService</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testTimerService</string> </value> <value> <string>test.erp5.testTimerService</string> </value>
...@@ -37,12 +49,7 @@ ...@@ -37,12 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 66, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)</string>
<string>W: 68, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)</string>
<string>W: 71, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)</string>
<string>W: 69, 4: No exception type(s) specified (bare-except)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -52,13 +59,28 @@ ...@@ -52,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -71,7 +93,7 @@ ...@@ -71,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -80,7 +102,7 @@ ...@@ -80,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -43,7 +43,7 @@ class TestTransactionalVariable(TestCase): ...@@ -43,7 +43,7 @@ class TestTransactionalVariable(TestCase):
tv.clear() tv.clear()
self.assertEqual(len(tv), 0) self.assertEqual(len(tv), 0)
with self.assertRaises(KeyError): with self.assertRaises(KeyError):
tv['toto'] _ = tv['toto']
tv['toto'] = 'titi' tv['toto'] = 'titi'
self.assertEqual(len(tv), 1) self.assertEqual(len(tv), 1)
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testTransactionalVariable</string> </value> <value> <string>testTransactionalVariable</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5Type.tests.testTransactionalVariable</string> </value> <value> <string>Products.ERP5Type.tests.testTransactionalVariable</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testTransactionalVariable</string> </value> <value> <string>test.erp5.testTransactionalVariable</string> </value>
...@@ -37,56 +49,7 @@ ...@@ -37,56 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 34, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 36, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 37, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 39, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 43, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 44, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 45, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 46, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)</string>
<string>W: 48, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 49, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 50, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 52, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 53, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 54, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 55, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 57, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 58, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 59, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 60, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 62, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 63, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 66, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 67, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 68, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 71, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 72, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 73, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 74, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 77, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 78, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 79, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 80, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 82, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)</string>
<string>W: 83, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 86, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 87, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 88, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 92, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 93, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 94, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 95, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 96, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 97, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:101, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:102, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:103, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W:104, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)</string>
<string>W: 46, 8: Statement seems to have no effect (pointless-statement)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -96,13 +59,28 @@ ...@@ -96,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -115,7 +93,7 @@ ...@@ -115,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -124,7 +102,7 @@ ...@@ -124,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -53,13 +53,8 @@ class TestTrashTool(ERP5TypeTestCase): ...@@ -53,13 +53,8 @@ class TestTrashTool(ERP5TypeTestCase):
return 1 return 1
def afterSetUp(self): def afterSetUp(self):
self.login() uf = self.portal.acl_users
portal = self.getPortal() uf._doAddUser('seb', self.newPassword(), ['Manager'], [])
catalog_tool = self.getCatalogTool()
def login(self):
uf = self.getPortal().acl_users
uf._doAddUser('seb', '', ['Manager'], [])
user = uf.getUserById('seb').__of__(uf) user = uf.getUserById('seb').__of__(uf)
newSecurityManager(None, user) newSecurityManager(None, user)
...@@ -81,9 +76,8 @@ class TestTrashTool(ERP5TypeTestCase): ...@@ -81,9 +76,8 @@ class TestTrashTool(ERP5TypeTestCase):
base_category = pc._getOb(bc_id, None) base_category = pc._getOb(bc_id, None)
self.assertTrue(base_category is not None) self.assertTrue(base_category is not None)
category_list = [] category_list = []
for i in xrange(10): for _ in xrange(10):
category = base_category.newContent(portal_type='Category') category = base_category.newContent(portal_type='Category')
self.assertTrue(category is not None)
category_list.append(category.getId()) category_list.append(category.getId())
sequence.edit(category_id_list=category_list) sequence.edit(category_id_list=category_list)
...@@ -95,13 +89,13 @@ class TestTrashTool(ERP5TypeTestCase): ...@@ -95,13 +89,13 @@ class TestTrashTool(ERP5TypeTestCase):
erp5_core = ps['erp5_core'] erp5_core = ps['erp5_core']
erp5_core.manage_addFolder(id="image") erp5_core.manage_addFolder(id="image")
image = erp5_core._getOb("image") image = erp5_core._getOb("image")
f = image.manage_addFile(id="file") image.manage_addFile(id="file")
def stepCheckTrashToolExists(self, sequence=None, sequence_list=None, **kw): def stepCheckTrashToolExists(self, sequence=None, sequence_list=None, **kw):
""" """
Check existence of trash tool Check existence of trash tool
""" """
self.assertTrue(self.getTrashTool() is not None) self.assertIsNotNone(self.getTrashTool())
def stepCreateTrashBin(self, sequence=None, sequence_list=None, **kw): def stepCreateTrashBin(self, sequence=None, sequence_list=None, **kw):
""" """
...@@ -193,11 +187,10 @@ class TestTrashTool(ERP5TypeTestCase): ...@@ -193,11 +187,10 @@ class TestTrashTool(ERP5TypeTestCase):
trash_id = sequence.get('trash_id') trash_id = sequence.get('trash_id')
trash = self.getTrashTool() trash = self.getTrashTool()
trashbin = trash._getOb(trash_id, None) trashbin = trash._getOb(trash_id, None)
self.assertTrue(trashbin is not None) self.assertIsNotNone(trashbin)
# get category trash folder # get category trash folder
bc_id = sequence.get('bc_id') bc_id = sequence.get('bc_id')
trashbin_objects_list = list(trashbin.objectValues()) trashbin_objects_list = list(trashbin.objectValues())
self.assertTrue(len(trashbin_objects_list) > 0)
self.assertEqual(len(trashbin_objects_list), 1) self.assertEqual(len(trashbin_objects_list), 1)
obj = trashbin_objects_list[0] obj = trashbin_objects_list[0]
self.assertEqual(obj.getId(), 'portal_categories_items') self.assertEqual(obj.getId(), 'portal_categories_items')
...@@ -215,11 +208,10 @@ class TestTrashTool(ERP5TypeTestCase): ...@@ -215,11 +208,10 @@ class TestTrashTool(ERP5TypeTestCase):
subcat_objects_list = (cat_object.objectIds()) subcat_objects_list = (cat_object.objectIds())
self.assertNotEqual(len(subcat_objects_list), 0) self.assertNotEqual(len(subcat_objects_list), 0)
categ_id_list = sequence.get('category_id_list') categ_id_list = sequence.get('category_id_list')
for id in subcat_objects_list: for id_ in subcat_objects_list:
self.assertTrue(id in categ_id_list) self.assertIn(id_, categ_id_list)
cat = cat_object._getOb(id, None) cat = cat_object._getOb(id_, None)
self.assertTrue(cat is not None) self.assertTrue(cat.isIndexable)
self.assertTrue(cat.isIndexable, 0)
self.assertEqual(cat.getPortalType(), 'Category') self.assertEqual(cat.getPortalType(), 'Category')
def stepCheckFolderObjectBackup(self, sequence=None, sequence_list=None, **kw): def stepCheckFolderObjectBackup(self, sequence=None, sequence_list=None, **kw):
...@@ -230,7 +222,6 @@ class TestTrashTool(ERP5TypeTestCase): ...@@ -230,7 +222,6 @@ class TestTrashTool(ERP5TypeTestCase):
trash = self.getTrashTool() trash = self.getTrashTool()
trashbin = trash._getOb(trash_id, None) trashbin = trash._getOb(trash_id, None)
self.assertTrue(trashbin is not None) self.assertTrue(trashbin is not None)
bc_id = sequence.get('bc_id')
trashbin_objects_list = list(trashbin.objectValues()) trashbin_objects_list = list(trashbin.objectValues())
self.assertTrue(len(trashbin_objects_list) > 0) self.assertTrue(len(trashbin_objects_list) > 0)
self.assertEqual(len(trashbin_objects_list), 1) self.assertEqual(len(trashbin_objects_list), 1)
...@@ -318,8 +309,6 @@ class TestTrashTool(ERP5TypeTestCase): ...@@ -318,8 +309,6 @@ class TestTrashTool(ERP5TypeTestCase):
bc_id = sequence.get('bc_id') bc_id = sequence.get('bc_id')
pc = self.getCategoryTool() pc = self.getCategoryTool()
base_category = pc._getOb(bc_id, None) base_category = pc._getOb(bc_id, None)
self.assertTrue(base_category is not None)
subobjects_ids = base_category.objectIds()
bc_path = base_category.getPath().split('/')[2:-1] bc_path = base_category.getPath().split('/')[2:-1]
# check backup # check backup
backup_subobjects_ids = trash.backupObject(trashbin, bc_path, bc_id, save=1, keep_subobjects=1) backup_subobjects_ids = trash.backupObject(trashbin, bc_path, bc_id, save=1, keep_subobjects=1)
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testTrashTool</string> </value> <value> <string>testTrashTool</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5.tests.testTrashTool</string> </value> <value> <string>Products.ERP5.tests.testTrashTool</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testTrashTool</string> </value> <value> <string>test.erp5.testTrashTool</string> </value>
...@@ -37,16 +49,7 @@ ...@@ -37,16 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 57, 4: Unused variable \'portal\' (unused-variable)</string>
<string>W: 58, 4: Unused variable \'catalog_tool\' (unused-variable)</string>
<string>W: 60, 2: Arguments number differs from overridden \'login\' method (arguments-differ)</string>
<string>W: 84, 8: Unused variable \'i\' (unused-variable)</string>
<string>W: 98, 4: Unused variable \'f\' (unused-variable)</string>
<string>W:218, 8: Redefining built-in \'id\' (redefined-builtin)</string>
<string>W:233, 4: Unused variable \'bc_id\' (unused-variable)</string>
<string>W:322, 4: Unused variable \'subobjects_ids\' (unused-variable)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -56,13 +59,28 @@ ...@@ -56,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -75,7 +93,7 @@ ...@@ -75,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -84,7 +102,7 @@ ...@@ -84,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -94,7 +94,7 @@ class TestWorkflowHistoryList(TestCase): ...@@ -94,7 +94,7 @@ class TestWorkflowHistoryList(TestCase):
a = EXPECTED[item] a = EXPECTED[item]
except IndexError: except IndexError:
with self.assertRaises(IndexError): with self.assertRaises(IndexError):
ddl[item] _ = ddl[item]
else: else:
assert a != [], a assert a != [], a
self.assertEqual(a, ddl[item]) self.assertEqual(a, ddl[item])
...@@ -102,16 +102,16 @@ class TestWorkflowHistoryList(TestCase): ...@@ -102,16 +102,16 @@ class TestWorkflowHistoryList(TestCase):
i = COUNT + 1 i = COUNT + 1
for i in xrange(-i, i): for i in xrange(-i, i):
check[i] _ = check[i]
check[-50:10] _ = check[-50:10]
check[:20:3] _ = check[:20:3]
check[5:40] _ = check[5:40]
check[32::4] _ = check[32::4]
check[::-1] _ = check[::-1]
check[-5::-7] _ = check[-5::-7]
check[50:40:-1] _ = check[50:40:-1]
check[30:-50:-4] _ = check[30:-50:-4]
check[:30:-3] _ = check[:30:-3]
self.assertFalse(ddl[-5:30]) self.assertFalse(ddl[-5:30])
self.assertFalse(ddl[30:-5:-1]) self.assertFalse(ddl[30:-5:-1])
...@@ -129,8 +129,7 @@ class TestWorkflowHistoryList(TestCase): ...@@ -129,8 +129,7 @@ class TestWorkflowHistoryList(TestCase):
@fixed_count_bucket @fixed_count_bucket
def test_01_DoublyLinkList(self): def test_01_DoublyLinkList(self):
EXPECTED = range(COUNT) self.checkList(new(DoublyLinkList, range(COUNT)))
self.checkList(new(DoublyLinkList, EXPECTED))
@fixed_count_bucket @fixed_count_bucket
def test_02_LegacyWorkflowHistoryList(self): def test_02_LegacyWorkflowHistoryList(self):
...@@ -205,10 +204,10 @@ class TestDedup(ERP5TypeTestCase): ...@@ -205,10 +204,10 @@ class TestDedup(ERP5TypeTestCase):
self.login() self.login()
deduped = [] deduped = []
def dedupStrings(obj): def dedupStrings(obj):
new = orig_dedupStrings(obj) new_obj = orig_dedupStrings(obj)
self.assertEqual(new, obj) self.assertEqual(new_obj, obj)
deduped.append(len(new)) deduped.append(len(new_obj))
return new return new_obj
from Products.ERP5Type import Workflow from Products.ERP5Type import Workflow
orig_dedupStrings = Workflow.dedupStrings orig_dedupStrings = Workflow.dedupStrings
try: try:
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testWorkflowHistoryList</string> </value> <value> <string>testWorkflowHistoryList</string> </value>
...@@ -43,21 +49,7 @@ ...@@ -43,21 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 97, 12: Statement seems to have no effect (pointless-statement)</string>
<string>W:105, 6: Statement seems to have no effect (pointless-statement)</string>
<string>W:106, 4: Statement seems to have no effect (pointless-statement)</string>
<string>W:107, 4: Statement seems to have no effect (pointless-statement)</string>
<string>W:108, 4: Statement seems to have no effect (pointless-statement)</string>
<string>W:109, 4: Statement seems to have no effect (pointless-statement)</string>
<string>W:110, 4: Statement seems to have no effect (pointless-statement)</string>
<string>W:111, 4: Statement seems to have no effect (pointless-statement)</string>
<string>W:112, 4: Statement seems to have no effect (pointless-statement)</string>
<string>W:113, 4: Statement seems to have no effect (pointless-statement)</string>
<string>W:114, 4: Statement seems to have no effect (pointless-statement)</string>
<string>W:132, 4: Redefining name \'EXPECTED\' from outer scope (line 76) (redefined-outer-name)</string>
<string>W:206, 6: Redefining name \'new\' from outer scope (line 55) (redefined-outer-name)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -67,13 +59,28 @@ ...@@ -67,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -86,7 +93,7 @@ ...@@ -86,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -95,7 +102,7 @@ ...@@ -95,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -78,7 +78,7 @@ class TestXMLPickle(unittest.TestCase): ...@@ -78,7 +78,7 @@ class TestXMLPickle(unittest.TestCase):
reconstructed_obj = pickle.loads(reconstructed_pickled_data) reconstructed_obj = pickle.loads(reconstructed_pickled_data)
self.assert_(reconstructed_obj.__class__ is DummyClass) self.assert_(reconstructed_obj.__class__ is DummyClass)
self.assert_(type(getattr(reconstructed_obj, 'data', None)) is list) self.assert_(type(getattr(reconstructed_obj, 'data', None)) is list) # pylint:disable=unidiomatic-typecheck
self.assertEqual(reconstructed_obj.data[0], 1) self.assertEqual(reconstructed_obj.data[0], 1)
self.assert_(reconstructed_obj.data[1] is reconstructed_obj) self.assert_(reconstructed_obj.data[1] is reconstructed_obj)
self.assert_(reconstructed_obj.data[2] is reconstructed_obj.data) self.assert_(reconstructed_obj.data[2] is reconstructed_obj.data)
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testXMLPickle</string> </value> <value> <string>testXMLPickle</string> </value>
...@@ -43,9 +49,7 @@ ...@@ -43,9 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 81, 17: Using type() instead of isinstance() for a typecheck. (unidiomatic-typecheck)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -55,13 +59,28 @@ ...@@ -55,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -74,7 +93,7 @@ ...@@ -74,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -83,7 +102,7 @@ ...@@ -83,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -69,19 +69,9 @@ class TestZODBHistory(ERP5TypeTestCase): ...@@ -69,19 +69,9 @@ class TestZODBHistory(ERP5TypeTestCase):
def setUpUser(self): def setUpUser(self):
""" Set up a user to test normal users can use this function. """ """ Set up a user to test normal users can use this function. """
self.addUser('tatuya')
def addUser(self, user_name, role=['Member', 'Owner', 'Assignor']):
""" Create a test user."""
uf = self.portal.acl_users uf = self.portal.acl_users
if not uf.getUserById(user_name): if not uf.getUserById('tatuya'):
uf._doAddUser(user_name, '', role, []) uf._doAddUser('tatuya', '', ['Member', 'Owner', 'Assignor'], [])
def _clearCache(self):
""" Clear cache to validate the preference modification. """
self.portal.portal_caches.clearCache(
cache_factory_list=('erp5_ui_short', # for preference cache
))
def test_01_testZODBHistory(self): def test_01_testZODBHistory(self):
""" """
...@@ -116,7 +106,6 @@ class TestZODBHistory(ERP5TypeTestCase): ...@@ -116,7 +106,6 @@ class TestZODBHistory(ERP5TypeTestCase):
# changes the limit to 100 # changes the limit to 100
preference.setPreferredHtmlStyleZodbHistorySize(100) preference.setPreferredHtmlStyleZodbHistorySize(100)
self._clearCache()
self.assertEqual(preference.getPreferredHtmlStyleZodbHistorySize(), 100) self.assertEqual(preference.getPreferredHtmlStyleZodbHistorySize(), 100)
history_list = org2.Base_getZODBHistoryList() history_list = org2.Base_getZODBHistoryList()
# Now that the limit is 100, thus the history page show the all history # Now that the limit is 100, thus the history page show the all history
......
...@@ -6,6 +6,12 @@ ...@@ -6,6 +6,12 @@
</pickle> </pickle>
<pickle> <pickle>
<dictionary> <dictionary>
<item>
<key> <string>_recorded_property_dict</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
<item> <item>
<key> <string>default_reference</string> </key> <key> <string>default_reference</string> </key>
<value> <string>testZODBHistory</string> </value> <value> <string>testZODBHistory</string> </value>
...@@ -14,6 +20,12 @@ ...@@ -14,6 +20,12 @@
<key> <string>default_source_reference</string> </key> <key> <string>default_source_reference</string> </key>
<value> <string>Products.ERP5.tests.testZODBHistory</string> </value> <value> <string>Products.ERP5.tests.testZODBHistory</string> </value>
</item> </item>
<item>
<key> <string>description</string> </key>
<value>
<none/>
</value>
</item>
<item> <item>
<key> <string>id</string> </key> <key> <string>id</string> </key>
<value> <string>test.erp5.testZODBHistory</string> </value> <value> <string>test.erp5.testZODBHistory</string> </value>
...@@ -37,10 +49,7 @@ ...@@ -37,10 +49,7 @@
<item> <item>
<key> <string>text_content_warning_message</string> </key> <key> <string>text_content_warning_message</string> </key>
<value> <value>
<tuple> <tuple/>
<string>W: 61, 0: Bad indentation. Found 7 spaces, expected 6 (bad-indentation)</string>
<string>W: 74, 2: Dangerous default value [] as argument (dangerous-default-value)</string>
</tuple>
</value> </value>
</item> </item>
<item> <item>
...@@ -50,13 +59,28 @@ ...@@ -50,13 +59,28 @@
<item> <item>
<key> <string>workflow_history</string> </key> <key> <string>workflow_history</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="2" aka="AAAAAAAAAAI="> <record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle> <pickle>
<global name="PersistentMapping" module="Persistence.mapping"/> <global name="PersistentMapping" module="Persistence.mapping"/>
</pickle> </pickle>
...@@ -69,7 +93,7 @@ ...@@ -69,7 +93,7 @@
<item> <item>
<key> <string>component_validation_workflow</string> </key> <key> <string>component_validation_workflow</string> </key>
<value> <value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent> <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
</value> </value>
</item> </item>
</dictionary> </dictionary>
...@@ -78,7 +102,7 @@ ...@@ -78,7 +102,7 @@
</dictionary> </dictionary>
</pickle> </pickle>
</record> </record>
<record id="3" aka="AAAAAAAAAAM="> <record id="4" aka="AAAAAAAAAAQ=">
<pickle> <pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/> <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle> </pickle>
......
...@@ -48,7 +48,6 @@ test.erp5.testQueryModule ...@@ -48,7 +48,6 @@ test.erp5.testQueryModule
test.erp5.testRestrictedPythonSecurity test.erp5.testRestrictedPythonSecurity
test.erp5.testSelectionTool test.erp5.testSelectionTool
test.erp5.testSessionTool test.erp5.testSessionTool
test.erp5.testSQLCachedWorklist
test.erp5.testTimeout test.erp5.testTimeout
test.erp5.testTimerService test.erp5.testTimerService
test.erp5.testTransactionalVariable test.erp5.testTransactionalVariable
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment