diff --git a/product/CMFCategory/tests/testCMFCategory.py b/product/CMFCategory/tests/testCMFCategory.py index f1cb3a1792a4eb777656b16befe85c62d01b8261..f3499ab3ffa9da1238abded240334e18d09569ce 100644 --- a/product/CMFCategory/tests/testCMFCategory.py +++ b/product/CMFCategory/tests/testCMFCategory.py @@ -71,7 +71,7 @@ class TestCMFCategory(ERP5TypeTestCase): """ Return the list of business templates. - the business template crm give the following things : + the business template base give the following things : modules: - person - organisation @@ -81,7 +81,7 @@ class TestCMFCategory(ERP5TypeTestCase): /organisation """ - return ('erp5_base',) + return ('erp5_base', 'erp5_trade') def getCategoriesTool(self): return getattr(self.getPortal(), 'portal_categories', None) @@ -102,21 +102,30 @@ class TestCMFCategory(ERP5TypeTestCase): def afterSetUp(self, quiet=1, run=1): self.login() portal = self.getPortal() + # Make persons. person_module = self.getPersonModule() if self.id1 not in person_module.objectIds(): - p1 = person_module.newContent(id=self.id1) + p1 = person_module.newContent(id=self.id1, title=self.id1) else: p1 = person_module._getOb(self.id1) if self.id1 not in p1.objectIds(): sub_person = p1.newContent(id=self.id1,portal_type='Person') if self.id2 not in person_module.objectIds(): - p2 = person_module.newContent(id=self.id2) + p2 = person_module.newContent(id=self.id2, title=self.id2) + # Make organisations. organisation_module = self.getOrganisationModule() if self.id1 not in organisation_module.objectIds(): o1 = organisation_module.newContent(id=self.id1) if self.id2 not in organisation_module.objectIds(): o2 = organisation_module.newContent(id=self.id2) portal_categories = self.getCategoriesTool() + # Make a sale order and a sale packing list. + sale_order_module = portal.sale_order_module + if self.id1 not in sale_order_module.objectIds(): + sale_order_module.newContent(id=self.id1) + sale_packing_list_module = portal.sale_packing_list_module + if self.id1 not in sale_packing_list_module.objectIds(): + sale_packing_list_module.newContent(id=self.id1) # This set the acquisition for region for bc in ('region', ): if not hasattr(portal_categories, bc): @@ -726,12 +735,43 @@ class TestCMFCategory(ERP5TypeTestCase): def test_20_CategoryChildTitleAndIdItemList(self, quiet=quiet, run=run_all_test): """Tests getCategoryChildTitleAndIdItemList.""" + if not run : return + if not quiet: + message = 'Test Category Child Title And Id Item List' + ZopeTestCase._print('\n '+message) + LOG('Testing... ',0,message) base_cat = self.getCategoryTool().newContent(portal_type='Base Category') cat = base_cat.newContent(portal_type='Category', id='the_id', title='The Title') self.assertEquals([['', ''], ['The Title (the_id)', 'the_id']], base_cat.getCategoryChildTitleAndIdItemList()) + def test_21_AcquiredPortalType(self, quiet=quiet, run=run_all_test): + """Test if acquired_portal_type works correctly.""" + if not run : return + if not quiet: + message = 'Test Acquired Portal Type' + ZopeTestCase._print('\n '+message) + LOG('Testing... ',0,message) + + portal = self.getPortal() + order = portal.sale_order_module[self.id1] + packing_list = portal.sale_packing_list_module[self.id1] + person = self.getPersonModule()[self.id1] + + person.setTitle('toto') + self.assertEquals(person.getTitle(), 'toto') + + order.setDestinationAdministrationValue(person) + self.assertEquals(order.getDestinationAdministrationPersonTitle(), 'toto') + + packing_list.setDestinationAdministrationValue(None) + packing_list.setCausalityValue(None) + self.assertEquals(packing_list.getDestinationAdministrationPersonTitle(), None) + + packing_list.setCausalityValue(order) + self.assertEquals(packing_list.getDestinationAdministrationPersonTitle(), 'toto') + if __name__ == '__main__': framework() else: