[Erp5-report] r44768 arnaud.fontaine - /erp5/trunk/utils/erp5.utils.test_browser/src/erp5/u...

nobody at svn.erp5.org nobody at svn.erp5.org
Wed Mar 30 05:33:20 CEST 2011


Author: arnaud.fontaine
Date: Wed Mar 30 05:33:20 2011
New Revision: 44768

URL: http://svn.erp5.org?rev=44768&view=rev
Log:
Set properly the docstrings for time* methods and lastRequest* methods
in the meta class, thus enhancing documentation generated by epydoc

Modified:
    erp5/trunk/utils/erp5.utils.test_browser/src/erp5/utils/test_browser/browser.py

Modified: erp5/trunk/utils/erp5.utils.test_browser/src/erp5/utils/test_browser/browser.py
URL: http://svn.erp5.org/erp5/trunk/utils/erp5.utils.test_browser/src/erp5/utils/test_browser/browser.py?rev=44768&r1=44767&r2=44768&view=diff
==============================================================================
--- erp5/trunk/utils/erp5.utils.test_browser/src/erp5/utils/test_browser/browser.py [utf8] (original)
+++ erp5/trunk/utils/erp5.utils.test_browser/src/erp5/utils/test_browser/browser.py [utf8] Wed Mar 30 05:33:20 2011
@@ -72,17 +72,31 @@ def measurementMetaClass(prefix):
             method.func_name[1:]
 
         def innerSecond(self, *args, **kwargs):
+          """
+          Call L{%(name)s} method and return the time it took in seconds.
+
+          @param args: Positional arguments given to L{%(name)s}
+          @param kwargs: Keyword arguments given to L{%(name)s}
+          """
           method(self, *args, **kwargs)
           return self.lastRequestSeconds
 
         innerSecond.func_name = method_name_prefix + 'InSecond'
+        innerSecond.__doc__ = innerSecond.__doc__ %  {'name': method.func_name}
         dictionary[innerSecond.func_name] = innerSecond
 
         def innerPystone(self, *args, **kwargs):
+          """
+          Call L{%(name)s} method and return the time it took in pystones.
+
+          @param args: Positional arguments given to L{%(name)s}
+          @param kwargs: Keyword arguments given to L{%(name)s}
+          """
           method(self, *args, **kwargs)
           return self.lastRequestPystones
 
         innerPystone.func_name = method_name_prefix + 'InPystone'
+        innerPystone.__doc__ = innerPystone.__doc__ % {'name': method.func_name}
         dictionary[innerPystone.func_name] = innerPystone
 
       # Create time*InSecond and time*InPystone methods only for the
@@ -95,11 +109,15 @@ def measurementMetaClass(prefix):
       # defined on classes inheriting from zope.testbrowser.browser.Browser,
       # so create these properties for all other classes too
       if 'Browser' not in bases[0].__name__:
-        dictionary['lastRequestSeconds'] = property(
-          lambda self: self.browser.lastRequestSeconds)
-
-        dictionary['lastRequestPystones'] = property(
-          lambda self: self.browser.lastRequestPystones)
+        time_method = lambda self: self.browser.lastRequestSeconds
+        time_method.func_name = 'lastRequestSeconds'
+        time_method.__doc__ = Browser.lastRequestSeconds.__doc__
+        dictionary['lastRequestSeconds'] = property(time_method)
+
+        time_method = lambda self: self.browser.lastRequestPystones
+        time_method.func_name = 'lastRequestPystones'
+        time_method.__doc__ = Browser.lastRequestPystones.__doc__
+        dictionary['lastRequestPystones'] = property(time_method)
 
       return super(MeasurementMetaClass,
                    metacls).__new__(metacls, name, bases, dictionary)



More information about the Erp5-report mailing list