[Erp5-report] r11157 - /erp5/trunk/products/ERP5/tests/testBusinessTemplate.py

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Nov 7 14:01:59 CET 2006


Author: romain
Date: Tue Nov  7 14:01:49 2006
New Revision: 11157

URL: http://svn.erp5.org?rev=11157&view=rev
Log:
Test that installing an existing Portal Type from a new business template does not erase the current configuration.

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

Modified: erp5/trunk/products/ERP5/tests/testBusinessTemplate.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/tests/testBusinessTemplate.py?rev=11157&r1=11156&r2=11157&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/tests/testBusinessTemplate.py (original)
+++ erp5/trunk/products/ERP5/tests/testBusinessTemplate.py Tue Nov  7 14:01:49 2006
@@ -319,6 +319,18 @@
     bt.edit(template_portal_type_id_list=ptype_ids)
     self.stepFillPortalTypesFields(sequence=sequence, sequence_list=sequence_list, **kw)
 
+  def stepAddDuplicatedPortalTypeToBusinessTemplate(self, sequence=None, 
+                                                    sequence_list=None, **kw):
+    """
+    Add duplicated portal type to business template
+    """
+    bt = sequence.get('current_bt', None)
+    self.failUnless(bt is not None)
+    ptype_ids = []
+    ptype_ids.append(sequence.get('object_ptype_id', ''))
+    self.assertEqual(len(ptype_ids), 1)
+    bt.edit(template_portal_type_id_list=ptype_ids)
+
   def stepRemovePortalType(self, sequence=None, sequence_list=None, **kw):
     """
     Remove PortalType
@@ -357,6 +369,17 @@
     module_id = sequence.get('module_ptype_id')
     module_type = pt._getOb(module_id, None)
     self.failUnless(module_type is None)
+    object_type = pt._getOb(object_id, None)
+    self.failUnless(object_type is None)
+
+  def stepCheckDuplicatedPortalTypeRemoved(self, sequence=None, 
+                                           sequence_list=None, **kw):
+    """
+    Check non presence of portal type
+    """
+    pt = self.getTypeTool()
+    object_id = sequence.get('object_ptype_id')
+    module_id = sequence.get('module_ptype_id')
     object_type = pt._getOb(object_id, None)
     self.failUnless(object_type is None)
 
@@ -1630,6 +1653,17 @@
     import_bt = sequence.get('import_bt')
     import_bt.install(force=1)
 
+  def stepInstallDuplicatedBusinessTemplate(self, sequence=None, 
+                                            sequence_list=None, **kw):
+    """
+    Install importzed business template
+    """
+    import_bt = sequence.get('import_bt')
+    pt_id = sequence.get('object_ptype_id')
+    object_to_update = {
+      'portal_types/%s' % pt_id: 'install'}
+    import_bt.install(object_to_update=object_to_update)
+
   def stepPartialCatalogMethodInstall(self, sequence=None, sequence_list=None, **kw):
     """
     Install importzed business template
@@ -1651,13 +1685,23 @@
                   description='bt for unit_test')
     sequence.edit(export_bt=template)
 
-  def stepBuildBusinessTemplate(self, sequence=None, sequence_list=None, **kw):
-    """
-    Build Business Template
-    """
-    template = sequence.get('current_bt')
-    template.build()
-  
+  def stepCreateDuplicatedBusinessTemplate(self, sequence=None, 
+                                           sequence_list=None, **kw):
+    """
+    Create a new Business Template which will duplicate
+    the configuration.
+    """
+    pt = self.getTemplateTool()
+    template = pt.newContent(portal_type='Business Template')
+    self.failUnless(template.getBuildingState() == 'draft')
+    self.failUnless(template.getInstallationState() == 'not_installed')
+    template.edit(title='duplicated geek template',
+                  version='1.0',
+                  description='bt for unit_test')
+    sequence.edit(
+        export_bt=template,
+        previous_bt=sequence.get('current_bt'))
+
   def stepBuildBusinessTemplateFail(self, sequence=None, sequence_list=None, **kw):
     """
     Build Business Template
@@ -1745,6 +1789,14 @@
     Uninstall current Business Template
     """
     bt = sequence.get('current_bt')
+    bt.uninstall()
+
+  def stepUninstallPreviousBusinessTemplate(self, sequence=None, 
+                                            sequence_list=None, **kw):
+    """
+    Uninstall current Business Template
+    """
+    bt = sequence.get('previous_bt')
     bt.uninstall()
 
   def stepClearBusinessTemplateField(self, sequence=None, sequence_list=None, **kw):
@@ -3407,6 +3459,53 @@
     sequence_list.addSequenceString(sequence_string)
     sequence_list.play(self, quiet=quiet)
 
+  def test_32_BusinessTemplateWithDuplicatedPortalTypes(self, quiet=quiet, 
+                                                        run=run_all_test):
+    if not run: return
+    if not quiet:
+      message = 'Test Business Template With Duplicated Portal Types'
+      ZopeTestCase._print('\n%s ' % message)
+      LOG('Testing... ', 0, message)
+    sequence_list = SequenceList()
+    sequence_string = '\
+                       CreatePortalType \
+                       CreateFirstAction \
+                       CreateSecondAction \
+                       CreateNewBusinessTemplate \
+                       UseExportBusinessTemplate \
+                       AddPortalTypeToBusinessTemplate \
+                       AddSecondActionToBusinessTemplate \
+                       FillPortalTypesFields \
+                       BuildBusinessTemplate \
+                       SaveBusinessTemplate \
+                       RemovePortalType \
+                       RemoveBusinessTemplate \
+                       RemoveAllTrashBins \
+                       ImportBusinessTemplate \
+                       UseImportBusinessTemplate \
+                       InstallBusinessTemplate \
+                       Tic \
+                       \
+                       CreateDuplicatedBusinessTemplate \
+                       UseExportBusinessTemplate \
+                       AddDuplicatedPortalTypeToBusinessTemplate \
+                       BuildBusinessTemplate \
+                       SaveBusinessTemplate \
+                       ImportBusinessTemplate \
+                       UseImportBusinessTemplate \
+                       InstallDuplicatedBusinessTemplate \
+                       Tic \
+                       \
+                       CheckPortalTypeExists \
+                       CheckSecondActionExists \
+                       \
+                       UninstallBusinessTemplate \
+                       CheckDuplicatedPortalTypeRemoved \
+                       UninstallPreviousBusinessTemplate \
+                       '
+    sequence_list.addSequenceString(sequence_string)
+    sequence_list.play(self, quiet=quiet)
+
 if __name__ == '__main__':
   framework()
 else:




More information about the Erp5-report mailing list