From e781e625d844f6acb4497529e363e2992f613fa5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=81ukasz=20Nowak?= <luke@nexedi.com> Date: Mon, 26 Dec 2011 12:07:52 +0100 Subject: [PATCH] Change a bit testing method. Assume 12th periods of full month, but in same month. Start with current month and go until *end* of this month, then 11 times full months. --- .../tests/testVifibOpenOrderSimulation.py | 53 ++++++++++--------- 1 file changed, 28 insertions(+), 25 deletions(-) diff --git a/master/product/Vifib/tests/testVifibOpenOrderSimulation.py b/master/product/Vifib/tests/testVifibOpenOrderSimulation.py index f5e762ddb..48b99fe32 100644 --- a/master/product/Vifib/tests/testVifibOpenOrderSimulation.py +++ b/master/product/Vifib/tests/testVifibOpenOrderSimulation.py @@ -1,6 +1,7 @@ import unittest from Products.ERP5Type.tests.Sequence import SequenceList -from Products.ERP5Type.DateUtils import getClosestDate, addToDate +from Products.ERP5Type.DateUtils import getClosestDate, addToDate, \ + atTheEndOfPeriod from testVifibSlapWebService import TestVifibSlapWebServiceMixin from DateTime.DateTime import DateTime @@ -76,32 +77,34 @@ class TestVifibOpenOrderSimulation(TestVifibSlapWebServiceMixin): 0.0, open_order_line.getStopDate().second()) # Calculate the list of time frames - expected_time_frame_list = [start_date] + expected_time_frame_tuple_list = [(start_date, (atTheEndOfPeriod(start_date, 'month') - 1).latestTime())] + # now 11 months in form: 2022/02/01 00:00, 2022/02/28 23:59 current = \ - getClosestDate(target_date=start_date, precision='month', before=0) - if start_date == current: - current = addToDate(start_date, month=1) - while current <= stop_date: - expected_time_frame_list.append(current) - current = addToDate( - getClosestDate(target_date=current, precision='month', before=0), - month=1) + getClosestDate(target_date=start_date, precision='month', before=1) + for m in range(1, 12): + expected_time_frame_tuple_list.append((current, (addToDate(current, month=1)-1).latestTime())) + current = addToDate(current, month=1) + + # test the test: have we generated 12th months coverage? + self.assertEqual(12, len(expected_time_frame_tuple_list)) # Check that simulation is created by the periodicity - self.assertEquals(len(expected_time_frame_list), - len(applied_rule.contentValues()) + 1) + self.assertEquals(len(expected_time_frame_tuple_list), + len(applied_rule.contentValues())) # Check the list of expected simulation idx = 0 - while idx + 1 < len(expected_time_frame_list): + while idx + 1 < len(expected_time_frame_tuple_list): + excepted_start_date = expected_time_frame_tuple_list[idx][0] + excepted_stop_date = expected_time_frame_tuple_list[idx][1] # select simulation given start_date and stop_date simulation_movement_list = \ self.portal.portal_catalog.unrestrictedSearchResults( parent_uid=applied_rule.getUid(), portal_type="Simulation Movement", **{ - 'movement.start_date':expected_time_frame_list[idx], - 'movement.stop_date':expected_time_frame_list[idx + 1], + 'movement.start_date':excepted_start_date, + 'movement.stop_date':excepted_stop_date, }) self.assertEquals(1, len(simulation_movement_list)) simulation_movement = simulation_movement_list[0].getObject() @@ -182,9 +185,9 @@ class TestVifibOpenOrderSimulation(TestVifibSlapWebServiceMixin): simulation_movement_invoice.getResource()) self.assertEquals("vifib/invoicing", simulation_movement_invoice.getTradePhase()) - self.assertEquals(expected_time_frame_list[idx+1], + self.assertEquals(excepted_start_date, simulation_movement_invoice.getStartDate()) - self.assertEquals(expected_time_frame_list[idx+1], + self.assertEquals(excepted_stop_date, simulation_movement_invoice.getStopDate()) self.assertEquals(None, simulation_movement_invoice.getAggregate( @@ -249,9 +252,9 @@ class TestVifibOpenOrderSimulation(TestVifibSlapWebServiceMixin): simulation_movement_invoice_transaction_credit.getSpecialise()) self.assertEquals("vifib/accounting", simulation_movement_invoice_transaction_credit.getTradePhase()) - self.assertEquals(expected_time_frame_list[idx+1], + self.assertEquals(excepted_start_date, simulation_movement_invoice_transaction_credit.getStartDate()) - self.assertEquals(expected_time_frame_list[idx+1], + self.assertEquals(excepted_stop_date, simulation_movement_invoice_transaction_credit.getStopDate()) self.assertEquals(1.0, @@ -276,9 +279,9 @@ class TestVifibOpenOrderSimulation(TestVifibSlapWebServiceMixin): simulation_movement_invoice_transaction_debit.getSpecialise()) self.assertEquals("vifib/accounting", simulation_movement_invoice_transaction_debit.getTradePhase()) - self.assertEquals(expected_time_frame_list[idx+1], + self.assertEquals(excepted_start_date, simulation_movement_invoice_transaction_debit.getStartDate()) - self.assertEquals(expected_time_frame_list[idx+1], + self.assertEquals(excepted_stop_date, simulation_movement_invoice_transaction_debit.getStopDate()) # credit simulation movement has no content @@ -334,9 +337,9 @@ class TestVifibOpenOrderSimulation(TestVifibSlapWebServiceMixin): simulation_movement_credit_payment_credit.getSpecialise()) self.assertEquals("vifib/payment", simulation_movement_credit_payment_credit.getTradePhase()) - self.assertEquals(expected_time_frame_list[idx+1], + self.assertEquals(excepted_start_date, simulation_movement_credit_payment_credit.getStartDate()) - self.assertEquals(expected_time_frame_list[idx+1], + self.assertEquals(excepted_stop_date, simulation_movement_credit_payment_credit.getStopDate()) self.assertEquals(1.0, @@ -359,9 +362,9 @@ class TestVifibOpenOrderSimulation(TestVifibSlapWebServiceMixin): simulation_movement_credit_payment_debit.getSpecialise()) self.assertEquals("vifib/payment", simulation_movement_credit_payment_debit.getTradePhase()) - self.assertEquals(expected_time_frame_list[idx+1], + self.assertEquals(excepted_start_date, simulation_movement_credit_payment_debit.getStartDate()) - self.assertEquals(expected_time_frame_list[idx+1], + self.assertEquals(excepted_stop_date, simulation_movement_credit_payment_debit.getStopDate()) # check next simulation movement -- 2.30.9