[Erp5-report] r36269 jerome - in /erp5/trunk/products/ERP5: Tool/ tests/
nobody at svn.erp5.org
nobody at svn.erp5.org
Fri Jun 11 14:23:31 CEST 2010
Author: jerome
Date: Fri Jun 11 14:23:18 2010
New Revision: 36269
URL: http://svn.erp5.org?rev=36269&view=rev
Log:
support group_by= as string, and test some other cases of group_by=
Modified:
erp5/trunk/products/ERP5/Tool/SimulationTool.py
erp5/trunk/products/ERP5/tests/testInventoryAPI.py
Modified: erp5/trunk/products/ERP5/Tool/SimulationTool.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Tool/SimulationTool.py?rev=36269&r1=36268&r2=36269&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Tool/SimulationTool.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Tool/SimulationTool.py [utf8] Fri Jun 11 14:23:18 2010
@@ -442,6 +442,9 @@ class SimulationTool(BaseTool):
# group by involving a related key (eg. group_by=['product_line_uid'])
related_key_dict_passthrough_group_by = new_kw.get(
'related_key_dict_passthrough', dict()).pop('group_by', [])
+ if isinstance(related_key_dict_passthrough_group_by, basestring):
+ related_key_dict_passthrough_group_by = (
+ related_key_dict_passthrough_group_by,)
group_by.extend(related_key_dict_passthrough_group_by)
if group_by:
Modified: erp5/trunk/products/ERP5/tests/testInventoryAPI.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testInventoryAPI.py?rev=36269&r1=36268&r2=36269&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testInventoryAPI.py [utf8] (original)
+++ erp5/trunk/products/ERP5/tests/testInventoryAPI.py [utf8] Fri Jun 11 14:23:18 2010
@@ -896,8 +896,27 @@ class TestInventoryList(InventoryAPITest
if r.getObject().getUse() == 'use1'][0].inventory, 5)
self.assertEquals([r for r in inventory_list
if r.getObject().getUse() == 'use2'][0].inventory, 11)
+ # group_by can also be passed as string
+ inventory_list = getInventoryList(node_uid=(self.node.getUid(),
+ self.other_node.getUid()),
+ group_by='strict_use_uid', )
+ self.assertEquals(2, len(inventory_list))
+ self.assertEquals([r for r in inventory_list
+ if r.getObject().getUse() == 'use1'][0].inventory, 5)
+ self.assertEquals([r for r in inventory_list
+ if r.getObject().getUse() == 'use2'][0].inventory, 11)
+
+ # the name of a column can also be used, from stock or other tables
+ inventory_list = getInventoryList(node_uid=(self.node.getUid(),
+ self.other_node.getUid()),
+ group_by='node_uid', )
+ self.assertEquals(2, len(inventory_list))
+ inventory_list = getInventoryList(node_uid=(self.node.getUid(),
+ self.other_node.getUid()),
+ group_by='title', )
+ self.assertEquals(4, len(inventory_list))
- # mixed with group_by_* arguments
+ # group_by= can be mixed with group_by_* arguments
inventory_list = getInventoryList(node_uid=(self.node.getUid(),
self.other_node.getUid()),
group_by_node=True,
More information about the Erp5-report
mailing list