[Erp5-report] r23695 - in /erp5/trunk/bt5/erp5_egov: TestTemplateItem/ bt/

nobody at svn.erp5.org nobody at svn.erp5.org
Thu Sep 18 10:49:09 CEST 2008


Author: fabien
Date: Thu Sep 18 10:49:06 2008
New Revision: 23695

URL: http://svn.erp5.org?rev=23695&view=rev
Log:
override some method to be able to display more verbose test reports

Modified:
    erp5/trunk/bt5/erp5_egov/TestTemplateItem/testEGovMixin.py
    erp5/trunk/bt5/erp5_egov/bt/revision

Modified: erp5/trunk/bt5/erp5_egov/TestTemplateItem/testEGovMixin.py
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_egov/TestTemplateItem/testEGovMixin.py?rev=23695&r1=23694&r2=23695&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_egov/TestTemplateItem/testEGovMixin.py (original)
+++ erp5/trunk/bt5/erp5_egov/TestTemplateItem/testEGovMixin.py Thu Sep 18 10:49:06 2008
@@ -32,6 +32,9 @@
 from Products.ERP5Type.tests.utils import DummyMailHost
 from AccessControl import Unauthorized
 from Testing import ZopeTestCase
+from Products.ERP5Type.tests.Sequence import Step, Sequence, SequenceList
+from zLOG import LOG
+import random
 
 class TestEGovMixin(SecurityTestCase):
   """Usefull methods for eGov Unit Tests."""
@@ -65,6 +68,44 @@
   ADD = 'Add portal content'
   MODIFY = 'Modify portal content'
   DELETE = 'Delete objects'
+
+
+  # use modified method to render a more verbose output
+  def play(self, context, sequence=None, sequence_number=0, quiet=0):
+    if sequence is None:
+      for idx, step in enumerate(self._step_list):
+        step.play(context, sequence=self, quiet=quiet)
+        # commit transaction after each step
+        get_transaction().commit()
+  Sequence.play = play
+
+  def play(self, context, sequence=None, quiet=0):
+    method_name = 'step' + self._method_name
+    method = getattr(context,method_name)
+    # We can in same cases replay many times the same step,
+    # or not playing it at all
+    nb_replay = random.randrange(0,self._max_replay+1)
+    if self._required:
+      if nb_replay==0:
+        nb_replay=1
+    for i in range(0,nb_replay):
+      if not quiet:
+        ZopeTestCase._print('\n  Playing step %s' % self._method_name)
+        ZopeTestCase._print('\n    -> %s' % method.__doc__)
+        LOG('Step.play', 0, '  Playing step %s' % self._method_name)
+        LOG('Step.play', 0, '    -> %s' % method.__doc__)
+      method(sequence=sequence)
+  Step.play = play
+
+  def playSequence(self, sequence_string, quiet=0) :
+    ZopeTestCase._print('\n\n\n---------------------------------------------------------------------')
+    ZopeTestCase._print('\nStarting New Sequence %s :' % self._TestCase__testMethodName)
+    ZopeTestCase._print('\n * %s... \n' % self._TestCase__testMethodDoc)
+    LOG('Sequence.play', 0, 'Starting New Sequence %s :' % self._TestCase__testMethodName)
+    LOG('Sequence.play', 0, ' * %s... \n' % self._TestCase__testMethodDoc)
+    sequence_list = SequenceList()
+    sequence_list.addSequenceString(sequence_string)
+    sequence_list.play(self, quiet=quiet)
 
   def getBusinessTemplateList(self):
     """return list of business templates to be installed. """

Modified: erp5/trunk/bt5/erp5_egov/bt/revision
URL: http://svn.erp5.org/erp5/trunk/bt5/erp5_egov/bt/revision?rev=23695&r1=23694&r2=23695&view=diff
==============================================================================
--- erp5/trunk/bt5/erp5_egov/bt/revision (original)
+++ erp5/trunk/bt5/erp5_egov/bt/revision Thu Sep 18 10:49:06 2008
@@ -1,1 +1,1 @@
-309
+318




More information about the Erp5-report mailing list