[Erp5-report] r9249 - in /erp5/trunk/products/ERP5: Document/ tests/

nobody at svn.erp5.org nobody at svn.erp5.org
Fri Aug 18 09:09:12 CEST 2006


Author: jerome
Date: Fri Aug 18 09:09:08 2006
New Revision: 9249

URL: http://svn.erp5.org?rev=9249&view=rev
Log:
test that local modifications made to the catalog are kept when installing a business template that contains new catalog configuration.
fix sql_search_tables that was installed as a list where it should be a tuple.


Modified:
    erp5/trunk/products/ERP5/Document/BusinessTemplate.py
    erp5/trunk/products/ERP5/tests/testBusinessTemplate.py

Modified: erp5/trunk/products/ERP5/Document/BusinessTemplate.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/BusinessTemplate.py?rev=9249&r1=9248&r2=9249&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/BusinessTemplate.py (original)
+++ erp5/trunk/products/ERP5/Document/BusinessTemplate.py Fri Aug 18 09:09:08 2006
@@ -2836,7 +2836,7 @@
       for key in keys:
         if key not in sql_search_tables:
           sql_search_tables.append(key)
-      catalog.sql_search_tables = list(sql_search_tables)
+      catalog.sql_search_tables = tuple(sql_search_tables)
 
   def uninstall(self, context, **kw):
     try:

Modified: erp5/trunk/products/ERP5/tests/testBusinessTemplate.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testBusinessTemplate.py?rev=9249&r1=9248&r2=9249&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testBusinessTemplate.py (original)
+++ erp5/trunk/products/ERP5/tests/testBusinessTemplate.py Fri Aug 18 09:09:08 2006
@@ -1106,6 +1106,31 @@
                   keyword_key=keyword_key, full_text_key=full_text_key, request_key=request_key, \
                   multivalue_key=multivalue_key, topic_key=topic_key)
 
+  def stepModifyCatalogConfiguration(self, sequence, **kw):
+    """Modify the current configuration of the catalog.
+    """
+    catalog = self.getCatalogTool().getSQLCatalog()
+    # modify method related configuration
+    catalog.sql_getitem_by_uid = 'z_search_results'
+    # modify table related configuration
+    catalog.sql_search_tables = tuple( list(catalog.sql_search_tables) +
+                                     ['translation'] )
+    # modify column related configuration
+    catalog.sql_catalog_full_text_search_keys = ('catalog.portal_type',)
+
+  def stepCheckCatalogConfigurationKept(self, sequence, **kw):
+    """Check modification made in stepModifyCatalogConfiguration are still
+    present.
+    """
+    catalog = self.getCatalogTool().getSQLCatalog()
+    # method related configuration
+    self.assertEquals(catalog.sql_getitem_by_uid, 'z_search_results')
+    # table related configuration
+    self.failUnless('translation' in catalog.sql_search_tables)
+    # column related configuration
+    self.failUnless('catalog.portal_type' 
+                    in catalog.sql_catalog_full_text_search_keys)
+
   def stepAddKeysAndTableToBusinessTemplate(self, sequence=None, sequence_list=None, **kw):
     """
     Add some related, result key and tables to Business Temlpate
@@ -3211,6 +3236,34 @@
     sequence_list.addSequenceString(sequence_string)
     sequence_list.play(self, quiet=quiet)
 
+  def test_30_CheckInstalledCatalogProperties(self, quiet=quiet, run=run_all_test):
+    if not run: return
+    if not quiet:
+      message = 'Test if installing some new catalog properties overwrites '\
+                'existing ones'
+      ZopeTestCase._print('\n%s ' % message)
+      LOG('Testing... ', 0, message)
+    sequence_list = SequenceList()
+    sequence_string = '\
+                       CreateCatalogMethod \
+                       CreateKeysAndTable \
+                       CreateNewBusinessTemplate \
+                       UseExportBusinessTemplate \
+                       AddCatalogMethodToBusinessTemplate \
+                       AddKeysAndTableToBusinessTemplate \
+                       BuildBusinessTemplate \
+                       SaveBusinessTemplate \
+                       ModifyCatalogConfiguration \
+                       ImportBusinessTemplate \
+                       UseImportBusinessTemplate \
+                       InstallBusinessTemplate \
+                       Tic \
+                       CheckCatalogConfigurationKept \
+                       UninstallBusinessTemplate \
+                       CheckCatalogConfigurationKept \
+                       '
+    sequence_list.addSequenceString(sequence_string)
+    sequence_list.play(self, quiet=quiet)
 if __name__ == '__main__':
   framework()
 else:




More information about the Erp5-report mailing list