Revision: f1c15e0bfa69
Branch: default
Author: Jussi Malinen <jussi.ao.mali...@gmail.com>
Date: Tue May 27 14:43:45 2014 UTC
Log: Update issue 811
Added support for methods names starting with underscore
http://code.google.com/p/robotframework/source/detail?r=f1c15e0bfa69
Modified:
/atest/testdata/test_libraries/as_listener/listenerlibrary.py
/src/robot/output/librarylisteners.py
/src/robot/output/listeners.py
/src/robot/output/loggerhelper.py
=======================================
--- /atest/testdata/test_libraries/as_listener/listenerlibrary.py Tue May
27 10:01:34 2014 UTC
+++ /atest/testdata/test_libraries/as_listener/listenerlibrary.py Tue May
27 14:43:45 2014 UTC
@@ -10,13 +10,13 @@
def get_events(self):
return self.events[:]
- def start_test(self, name, attrs):
+ def _start_test(self, name, attrs):
self.events.append('start test %s' % name)
def end_test(self, name, attrs):
self.events.append('end test %s' % name)
- def start_keyword(self, name, attrs):
+ def _start_keyword(self, name, attrs):
self.events.append('start kw %s' % name)
def end_keyword(self, name, attrs):
=======================================
--- /src/robot/output/librarylisteners.py Tue May 27 10:01:34 2014 UTC
+++ /src/robot/output/librarylisteners.py Tue May 27 14:43:45 2014 UTC
@@ -13,6 +13,7 @@
# limitations under the License.
from .listeners import Listeners, _ListenerProxy
+from .loggerhelper import AbstractLoggerProxy
class LibraryListeners(Listeners):
@@ -29,5 +30,16 @@
from robot.running import EXECUTION_CONTEXTS
if not EXECUTION_CONTEXTS.current:
return []
- return [_ListenerProxy(listener=listener) for listener in
+ return [_LibraryListenerProxy(listener) for listener in
EXECUTION_CONTEXTS.current.namespace.library_listeners]
+
+class _LibraryListenerProxy(_ListenerProxy):
+
+ def __init__(self, listener):
+ AbstractLoggerProxy.__init__(self, listener)
+ self.name = type(listener).__name__
+ self.version = self._get_version(listener)
+ self.is_java = self._is_java(listener)
+
+ def _get_method_names(self, name):
+ return (name, self._toCamelCase(name), '_%s' % name)
=======================================
--- /src/robot/output/listeners.py Mon May 26 15:18:30 2014 UTC
+++ /src/robot/output/listeners.py Tue May 27 14:43:45 2014 UTC
@@ -218,12 +218,15 @@
'output_file', 'report_file', 'log_file', 'debug_file',
'xunit_file', 'close']
- def __init__(self, name=None, args=None, listener=None):
- listener = listener or self._import_listener(name, args)
+ def __init__(self, name, args):
+ listener = self._import_listener(name, args)
AbstractLoggerProxy.__init__(self, listener)
- self.name = name or type(listener).__name__
+ self.name = name
self.version = self._get_version(listener)
- self.is_java = utils.is_jython and isinstance(listener, Object)
+ self.is_java = self._is_java(listener)
+
+ def _is_java(self, listener):
+ return utils.is_jython and isinstance(listener, Object)
def _import_listener(self, name, args):
importer = utils.Importer('listener')
=======================================
--- /src/robot/output/loggerhelper.py Thu Jan 23 14:00:53 2014 UTC
+++ /src/robot/output/loggerhelper.py Tue May 27 14:43:45 2014 UTC
@@ -133,9 +133,13 @@
setattr(self, name, self._get_method(logger, name))
def _get_method(self, logger, name):
- if hasattr(logger, name):
- return getattr(logger, name)
- return getattr(logger, self._toCamelCase(name), self._no_method)
+ for method_name in self._get_method_names(name):
+ if hasattr(logger, method_name):
+ return getattr(logger, method_name)
+ return self._no_method
+
+ def _get_method_names(self, name):
+ return (name, self._toCamelCase(name))
def _toCamelCase(self, name):
parts = name.split('_')
--
---
You received this message because you are subscribed to the Google Groups "robotframework-commit" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to robotframework-commit+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.