[Erp5-report] r24935 - /erp5/trunk/products/ERP5/tests/testTradeReports.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Wed Dec 17 18:50:43 CET 2008
Author: mame
Date: Wed Dec 17 18:50:43 2008
New Revision: 24935
URL: http://svn.erp5.org?rev=24935&view=rev
Log:
add test not to display positive,negative or zero stock
Modified:
erp5/trunk/products/ERP5/tests/testTradeReports.py
Modified: erp5/trunk/products/ERP5/tests/testTradeReports.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testTradeReports.py?rev=24935&r1=24934&r2=24935&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testTradeReports.py [utf8] (original)
+++ erp5/trunk/products/ERP5/tests/testTradeReports.py [utf8] Wed Dec 17 18:50:43 2008
@@ -611,7 +611,6 @@
data_line_list = [l for l in line_list if l.isDataLine()]
self.assertEquals(0, len(data_line_list))
-
################################
# Middle date
################################
@@ -680,6 +679,191 @@
variation_text='colour/colour2',
inventory=66,
quantity_unit='')
+
+ def testStockReportWithPositiveOrNegativeOrZeroStock(self):
+ """
+ Stock report.
+ """
+ # Create inventories
+ first = self._makeOneInventory(
+ title='Inventory 1',
+ simulation_state='delivered',
+ destination_value=self.organisation_module.Organisation_1,
+ start_date=DateTime(2007, 2, 2),
+ resource='product_module/product_A',
+ quantity=22,
+ )
+
+ second = self._makeOneInventory(
+ title='Inventory 2',
+ simulation_state='delivered',
+ destination_value=self.organisation_module.Organisation_1,
+ start_date=DateTime(2007, 2, 2),
+ resource='product_module/product_A',
+ quantity=-22,
+ )
+
+ third = self._makeOneInventory(
+ title='Inventory 3',
+ simulation_state='delivered',
+ destination_value=self.organisation_module.Organisation_1,
+ start_date=DateTime(2007, 2, 2),
+ resource='product_module/product_B',
+ quantity=-33,
+ )
+
+ fourth = self._makeOneInventory(
+ title='Inventory 4',
+ simulation_state='delivered',
+ destination_value=self.organisation_module.Organisation_2,
+ start_date=DateTime(2007, 2, 2),
+ resource='product_module/product_B',
+ quantity=-44,
+ )
+
+ fifth = self._makeOneInventory(
+ title='Inventory 5',
+ destination_value=self.organisation_module.Organisation_1,
+ start_date=DateTime(2007, 2, 2),
+ resource='product_module/product_C',
+ quantity=55,
+ )
+ fifth_line = fifth.contentValues(portal_type='Inventory Line')[0]
+ fifth_line.edit(
+ variation_category_list=['colour/colour1', 'colour/colour2'],
+ )
+ base_id = 'movement'
+ cell_key_list = list(fifth_line.getCellKeyList(base_id=base_id))
+ for cell_key in cell_key_list:
+ cell = fifth_line.newCell(base_id=base_id,
+ portal_type='Inventory Cell',
+ *cell_key)
+ cell.edit(mapped_value_property_list=['inventory'],
+ inventory=66,
+ predicate_category_list=cell_key,
+ variation_category_list=cell_key)
+ fifth.deliver()
+
+ # services are ignored
+ self._makeOneInventory(
+ title='Inventory 6',
+ simulation_state='delivered',
+ destination_value=self.organisation_module.Organisation_1,
+ start_date=DateTime(2007, 2, 2),
+ resource='service_module/service_a',
+ quantity=11,
+ )
+
+ get_transaction().commit()
+ self.tic()
+
+ request = self.portal.REQUEST
+ ################################
+ # Don't Display Positive Stock
+ ################################
+ request.form['at_date'] = DateTime(2008, 4, 4)
+ request.form['site'] = 'demo_site_A'
+ request.form['positive_stock'] = 1
+ line_list = \
+ self.portal.inventory_module.Base_viewStockReportBySite.listbox.\
+ get_value('default',
+ render_format='list', REQUEST=self.portal.REQUEST)
+
+ data_line_list = [l for l in line_list if l.isDataLine()]
+
+ self.assertEquals(2, len(data_line_list))
+
+ self.checkLineProperties(
+ data_line_list[0],
+ resource_title='product_B',
+ resource_reference='ref 1',
+ variation_text='',
+ inventory=-33,
+ quantity_unit='Kg')
+ self.checkLineProperties(
+ data_line_list[1],
+ resource_title='product_A',
+ resource_reference='ref 2',
+ variation_text='',
+ inventory=0,
+ quantity_unit='G')
+ ################################
+ # Don't Display Negative Stock
+ ################################
+ request.form['at_date'] = DateTime(2008, 4, 4)
+ request.form['site'] = 'demo_site_A'
+ request.form['positive_stock'] = 0
+ request.form['negative_stock'] = 1
+
+ line_list = \
+ self.portal.inventory_module.Base_viewStockReportBySite.listbox.\
+ get_value('default',
+ render_format='list', REQUEST=self.portal.REQUEST)
+
+ data_line_list = [l for l in line_list if l.isDataLine()]
+
+ self.assertEquals(3, len(data_line_list))
+ self.checkLineProperties(
+ data_line_list[0],
+ resource_title='product_A',
+ resource_reference='ref 2',
+ variation_text='',
+ inventory=0,
+ quantity_unit='G')
+ self.checkLineProperties(
+ data_line_list[1],
+ resource_title='variated product',
+ resource_reference='ref 3',
+ variation_text='colour/colour1',
+ inventory=66,
+ quantity_unit='')
+ self.checkLineProperties(
+ data_line_list[2],
+ resource_title='variated product',
+ resource_reference='ref 3',
+ variation_text='colour/colour2',
+ inventory=66,
+ quantity_unit='')
+ ################################
+ # Don't Display Zero Stock
+ ################################
+ request.form['at_date'] = DateTime(2008, 4, 4)
+ request.form['site'] = 'demo_site_A'
+ request.form['positive_stock'] = 0
+ request.form['negative_stock'] = 0
+ request.form['zero_stock'] = 1
+ line_list = \
+ self.portal.inventory_module.Base_viewStockReportBySite.listbox.\
+ get_value('default',
+ render_format='list', REQUEST=self.portal.REQUEST)
+
+ data_line_list = [l for l in line_list if l.isDataLine()]
+
+ self.assertEquals(3, len(data_line_list))
+ self.checkLineProperties(
+ data_line_list[0],
+ resource_title='product_B',
+ resource_reference='ref 1',
+ variation_text='',
+ inventory=-33,
+ quantity_unit='Kg')
+ self.checkLineProperties(
+ data_line_list[1],
+ resource_title='variated product',
+ resource_reference='ref 3',
+ variation_text='colour/colour1',
+ inventory=66,
+ quantity_unit='')
+ self.checkLineProperties(
+ data_line_list[2],
+ resource_title='variated product',
+ resource_reference='ref 3',
+ variation_text='colour/colour2',
+ inventory=66,
+ quantity_unit='')
+
+
+
def test_Folder_generateWorkflowReport(self):
# Create sales orders
More information about the Erp5-report
mailing list