[Erp5-report] r10145 - in /erp5/trunk/products/ERP5Type/tests: testERP5Type.py utils.py

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Sep 19 13:14:34 CEST 2006


Author: jerome
Date: Tue Sep 19 13:14:32 2006
New Revision: 10145

URL: http://svn.erp5.org?rev=10145&view=rev
Log:
create installRealClassTool and installDummyClassTool utility functions


Modified:
    erp5/trunk/products/ERP5Type/tests/testERP5Type.py
    erp5/trunk/products/ERP5Type/tests/utils.py

Modified: erp5/trunk/products/ERP5Type/tests/testERP5Type.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/tests/testERP5Type.py?rev=10145&r1=10144&r2=10145&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/tests/testERP5Type.py (original)
+++ erp5/trunk/products/ERP5Type/tests/testERP5Type.py Tue Sep 19 13:14:32 2006
@@ -1,9 +1,3 @@
-
-# we need a class tool for this test.
-def allowClassTool():
-  return 1
-import Products.ERP5Type
-Products.ERP5Type.allowClassTool = allowClassTool
 
 import os, sys
 if __name__ == '__main__':
@@ -20,6 +14,7 @@
 from Products.CMFCore.tests.base.testcase import LogInterceptor
 from Products.ERP5Type.Cache import CachingMethod, clearCache
 from Products.ERP5Type.Base import _aq_reset
+from Products.ERP5Type.tests.utils import installRealClassTool
 
 class TestERP5Type(ERP5TypeTestCase, LogInterceptor):
 
@@ -406,6 +401,7 @@
       This is a test to make sure this will not happens any more
       """
       if not run: return
+      installRealClassTool(self.getPortal())
       # We will first define a new propertysheet
       class_tool = self.getClassTool()
 

Modified: erp5/trunk/products/ERP5Type/tests/utils.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/tests/utils.py?rev=10145&r1=10144&r2=10145&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/tests/utils.py (original)
+++ erp5/trunk/products/ERP5Type/tests/utils.py Tue Sep 19 13:14:32 2006
@@ -29,6 +29,7 @@
 """Utility functions and classes for unit testing
 """
 
+import Products.ERP5Type
 from Products.MailHost.MailHost import MailHost
 
 class DummyMailHost(MailHost):
@@ -68,3 +69,24 @@
   Removes a Python script `script_id` in the given `container`.
   """
   container.manage_delObjects([script_id])
+
+def installRealClassTool(portal):
+  """Replaces portal_classes by a real class tool object.
+  """
+  Products.ERP5Type.allowClassTool = lambda: 1
+  _recreateClassTool(portal)
+
+def installDummyClassTool(portal):
+  """Replaces portal_classes by a dummy class tool object.
+  """
+  Products.ERP5Type.allowClassTool = lambda: 0
+  _recreateClassTool(portal)
+
+def _recreateClassTool(portal):
+  """Recreate the class tool for this portal.
+  """
+  from Products.ERP5Type.Tool import ClassTool
+  reload(ClassTool)
+  portal.manage_delObjects(['portal_classes'])
+  portal._setObject('portal_classes', ClassTool.ClassTool())
+  




More information about the Erp5-report mailing list