[Erp5-report] r41154 jm - in /erp5/trunk/products/ERP5Type: Core/Folder.py ERP5Type.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Mon Dec 6 11:45:47 CET 2010
Author: jm
Date: Mon Dec 6 11:45:47 2010
New Revision: 41154
URL: http://svn.erp5.org?rev=41154&view=rev
Log:
Fix checking id of new temp objects
This fixes TestERP5Type.test_03_NewTempObject
Note this condition is useless for non-temporary objects,
because that _setObject already does many checks.
Modified:
erp5/trunk/products/ERP5Type/Core/Folder.py
erp5/trunk/products/ERP5Type/ERP5Type.py
Modified: erp5/trunk/products/ERP5Type/Core/Folder.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Core/Folder.py?rev=41154&r1=41153&r2=41154&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Core/Folder.py [utf8] (original)
+++ erp5/trunk/products/ERP5Type/Core/Folder.py [utf8] Mon Dec 6 11:45:47 2010
@@ -126,7 +126,9 @@ class FolderMixIn(ExtensionClass.Base):
# The only case where the id is unused (because the new object is not added
# to its parent) is when a temp object is created inside a non-temp object.
- if id is None and (temp_container or not temp_object):
+ if id is '':
+ new_id = id
+ elif id is None and (temp_container or not temp_object):
new_id_kw = {}
if method is not None:
new_id_kw['method'] = method
Modified: erp5/trunk/products/ERP5Type/ERP5Type.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/ERP5Type.py?rev=41154&r1=41153&r2=41154&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/ERP5Type.py [utf8] (original)
+++ erp5/trunk/products/ERP5Type/ERP5Type.py [utf8] Mon Dec 6 11:45:47 2010
@@ -336,9 +336,6 @@ class ERP5TypeInformation(XMLObject,
Call the init_script for the portal_type.
Returns the object.
"""
- if id is None or len(id) == 0:
- raise ValueError("invalid object id")
-
if not temp_object and not self.isConstructionAllowed(container):
raise AccessControl_Unauthorized('Cannot create %s' % self.getId())
@@ -349,6 +346,8 @@ class ERP5TypeInformation(XMLObject,
ob = klass(id)
if temp_object:
+ if id in (None, ''):
+ raise ValueError("invalid object id")
ob = ob.__of__(container)
for ignore in ('activate_kw', 'is_indexable', 'reindex_kw'):
kw.pop(ignore, None)
More information about the Erp5-report
mailing list