From 97648cbc38d018df3139c460e1723260618b135d Mon Sep 17 00:00:00 2001 From: Vincent Pelletier <vincent@nexedi.com> Date: Fri, 25 Mar 2011 17:39:41 +0000 Subject: [PATCH] Cleanup test a bit. - sort with key instead of cmp - sorting once is enough - use 0-based sequences, to allow using enumerate - simplify dict creation - word-wrap a bit - simplify sequence declaration - make it easier to navigate from steps to sequence and vice-versa git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@44640 20353a03-c40f-0410-a6d1-a30d3c3de9de --- ...estERP5BankingCashMovementNewNotEmitted.py | 82 +++++++++---------- 1 file changed, 39 insertions(+), 43 deletions(-) diff --git a/product/ERP5Banking/tests/testERP5BankingCashMovementNewNotEmitted.py b/product/ERP5Banking/tests/testERP5BankingCashMovementNewNotEmitted.py index 0487eb383b..342937460b 100644 --- a/product/ERP5Banking/tests/testERP5BankingCashMovementNewNotEmitted.py +++ b/product/ERP5Banking/tests/testERP5BankingCashMovementNewNotEmitted.py @@ -134,38 +134,36 @@ class TestERP5BankingCashMovementNewNotEmitted(TestERP5BankingMonetaryReceptionM # get the cash container item from the monetary reception cash_container_item_list = [x.getObject() for x in self.simulation_tool.getCurrentTrackingList(node=self.reception.getRelativeUrl())] self.assertEqual(len(cash_container_item_list), 2) - def reference_sort(a, b): - return cmp(a.getReference(), b.getReference()) - cash_container_item_list.sort(reference_sort) + cash_container_item_list.sort(key=lambda x: x.getReference()) # contruct list of dict to create cash container new_cash_container_list = [] - i = 1 - for cash_container in cash_container_item_list: + append = new_cash_container_list.append + for i, cash_container in enumerate(cash_container_item_list): # register cash container on self to check aggregate value later - setattr(self, 'cash_container_item_%s' %(str(i), ), cash_container) - container_dict = {} - container_dict['id'] = str(i) - container_dict['reference'] = cash_container.getReference() - container_dict['range_start'] = cash_container.getCashNumberRangeStart() - container_dict['range_stop'] = cash_container.getCashNumberRangeStop() + setattr(self, 'cash_container_item_%s' % (i, ), cash_container) cash_container_line = cash_container.objectValues()[0] - container_dict['quantity'] = cash_container_line.getQuantity() - container_dict['aggregate'] = cash_container - new_cash_container_list.append(container_dict) - i += 1 - - def reference_sort(a, b): - return cmp(a['reference'], b['reference']) - new_cash_container_list.sort(reference_sort) - - global_dict = {} - global_dict['emission_letter'] = 'p' - global_dict['variation'] = '2003' - global_dict['cash_status'] = 'new_not_emitted' - global_dict['resource'] = self.billet_10000 - - self.createCashContainer(self.cash_movement, 'Cash Movement New Not Emitted Container', global_dict, new_cash_container_list, 'Cash Movement New Not Emitted Line') + append({ + 'id': str(i), + 'reference': cash_container.getReference(), + 'range_start': cash_container.getCashNumberRangeStart(), + 'range_stop': cash_container.getCashNumberRangeStop(), + 'quantity': cash_container_line.getQuantity(), + 'aggregate': cash_container, + }) + + self.createCashContainer( + self.cash_movement, + 'Cash Movement New Not Emitted Container', + { + 'emission_letter': 'p', + 'variation': '2003', + 'cash_status': 'new_not_emitted', + 'resource': self.billet_10000, + }, + new_cash_container_list, + 'Cash Movement New Not Emitted Line', + ) self.stepTic() self.assertEqual(len(self.cash_movement.objectValues()), 3) @@ -242,8 +240,7 @@ class TestERP5BankingCashMovementNewNotEmitted(TestERP5BankingMonetaryReceptionM self.assertEqual(self.container_1.getCashNumberRangeStart(), '0') self.assertEqual(self.container_1.getCashNumberRangeStop(), '100') self.assertEqual(len(self.container_1.getAggregateValueList()), 1) - self.assertEqual(self.container_1.getAggregateValueList()[0], self.cash_container_item_1) -# self.assertTrue(self.container_1.getAggregateValueList()[0] == self.cash_container_item_1 or self.container_1.getAggregateValueList()[0] == self.cash_container_item_2) + self.assertEqual(self.container_1.getAggregateValueList()[0], self.cash_container_item_0) self.assertEqual(len(self.container_1.objectIds()), 1) # now get the line and check it self.container_line_1 = self.container_1.objectValues()[0] @@ -279,8 +276,7 @@ class TestERP5BankingCashMovementNewNotEmitted(TestERP5BankingMonetaryReceptionM self.assertEqual(self.container_2.getCashNumberRangeStart(), '100') self.assertEqual(self.container_2.getCashNumberRangeStop(), '200') self.assertEqual(len(self.container_2.getAggregateValueList()), 1) - self.assertEqual(self.container_2.getAggregateValueList()[0], self.cash_container_item_2) -# self.assertTrue(self.container_2.getAggregateValueList()[0] == self.cash_container_item_2 or self.container_2.getAggregateValueList()[0] == self.cash_container_item_1) + self.assertEqual(self.container_2.getAggregateValueList()[0], self.cash_container_item_1) self.assertEqual(len(self.container_2.objectIds()), 1) # now get the line and check it self.container_line_2 = self.container_2.objectValues()[0] @@ -335,18 +331,18 @@ class TestERP5BankingCashMovementNewNotEmitted(TestERP5BankingMonetaryReceptionM # define the sequence - sequence_string = 'Tic CheckObjects ' \ - + 'CreateMonetaryReception Tic ' \ - + 'CheckInitialInventory CheckInitialContainerInventory ' \ - + 'CreateCashMovement Tic ' \ - + 'CreateCashContainer Tic ' \ - + 'CheckCashDeliveryLine ' \ - + 'CheckCashContainer1 CheckCashContainer2 ' \ - + 'ConfirmDocument Tic ' \ - + 'StartDocument Tic ' \ - + 'StopDocument Tic ' \ - + 'DeliverDocument Tic ' \ - + 'CheckFinalInventory CheckFinalContainerInventory' + sequence_string = 'stepTic stepCheckObjects ' \ + 'stepCreateMonetaryReception stepTic ' \ + 'stepCheckInitialInventory stepCheckInitialContainerInventory ' \ + 'stepCreateCashMovement stepTic ' \ + 'stepCreateCashContainer stepTic ' \ + 'stepCheckCashDeliveryLine ' \ + 'stepCheckCashContainer1 stepCheckCashContainer2 ' \ + 'stepConfirmDocument stepTic ' \ + 'stepStartDocument stepTic ' \ + 'stepStopDocument stepTic ' \ + 'stepDeliverDocument stepTic ' \ + 'stepCheckFinalInventory stepCheckFinalContainerInventory' sequence_list.addSequenceString(sequence_string) -- 2.30.9