############################################################################## # # Copyright (c) 2002-2011 Nexedi SA and Contributors. All Rights Reserved. # Gabriel M. Monnerat <gabriel@tiolive.com> # # WARNING: This program as such is intended to be used by professional # programmers who take the whole responsibility of assessing all potential # consequences resulting from its eventual inadequacies and bugs # End users who are looking for a ready-to-use solution with commercial # guarantees and support are strongly adviced to contract a Free Software # Service Company # # This program is Free Software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # ############################################################################## from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase class TestUNG(ERP5TypeTestCase): """ UNG Test Case """ def getTitle(self): return "UNG Tests" def getBusinessTemplateList(self): return ('erp5_base', 'erp5_ingestion', 'erp5_web', 'erp5_dms', 'erp5_jquery', 'erp5_jquery_plugin_mbmenu', 'erp5_jquery_plugin_sheet', 'erp5_jquery_ui', 'erp5_jquery_plugin_jqchart', 'erp5_jquery_plugin_colorpicker', 'erp5_jquery_plugin_elastic', 'erp5_jquery_sheet_editor', 'erp5_jquery_plugin_hotkey', 'erp5_jquery_plugin_jgraduate', 'erp5_jquery_plugin_svgicon', 'erp5_jquery_plugin_jquerybbq', 'erp5_jquery_plugin_spinbtn', 'erp5_jquery_plugin_svg_editor', 'erp5_svg_editor', 'erp5_xinha_editor', 'erp5_knowledge_pad', 'erp5_ingestion_mysql_innodb_catalog', 'erp5_web_ung_core', 'erp5_web_ung_role', 'erp5_web_ung_theme') def assertCreateDocumentUsingTemplate(self, template, **kw): web_page_module = self.portal.web_page_module self.portal.ERP5Site_createNewWebDocument(template) self.stepTic() web_page_search = web_page_module.searchFolder(**kw) self.assertEquals(1, len(web_page_search)) def getTitleListToBySubjectDomain(self): parent = self.portal.portal_domains.ung_domain.by_subject return [domain.getTitle() for domain in self.portal.WebPageModule_generateDomain(0, parent)] def testERP5Site_createNewWebDocument(self): """ Test if the script creates the objects using Templates correctly XXX - Refactor tests to better validate the creation of objects """ web_page_module = self.portal.web_page_module self.assertCreateDocumentUsingTemplate("web_page_template", portal_type="Web Page", reference="default-Web.Page.Reference") self.assertCreateDocumentUsingTemplate("web_table_template", portal_type="Web Table", reference="default-Web.Table.Reference") self.assertCreateDocumentUsingTemplate("web_illustration_template", portal_type="Web Illustration", reference="default-Web.Illustration.Reference") def testWebPageModule_generateDomain(self): """ Test if script WebPageModule_generateDomain generates the list of domains correctly """ web_page = self.portal.web_page_module.newContent(portal_type="Web Page") self.stepTic() title_list = self.getTitleListToBySubjectDomain() self.assertFalse("Ung" in title_list) web_page.setSubjectList("Ung") self.stepTic() title_list = self.getTitleListToBySubjectDomain() self.assertTrue("Ung" in title_list, title_list)