Revision: f85ee8611eae
Author: Janne Härkönen <[email protected]>
Date: Sat Nov 5 04:54:17 2011
Log: rebot: correctly configure Statistics()
http://code.google.com/p/robotframework/source/detail?r=f85ee8611eae
Modified:
/src/robot/reporting/resultwriter.py
/src/robot/result/model.py
=======================================
--- /src/robot/reporting/resultwriter.py Sat Nov 5 02:54:53 2011
+++ /src/robot/reporting/resultwriter.py Sat Nov 5 04:54:17 2011
@@ -84,20 +84,20 @@
def __init__(self, execution_result, settings=None):
self.result = execution_result
- self.suite = execution_result.suite
- self.exec_errors = execution_result.errors
- if settings:
- params = (settings['SuiteStatLevel'],
settings['TagStatInclude'],
- settings['TagStatExclude'],
settings['TagStatCombine'],
- settings['TagDoc'], settings['TagStatLink'])
- else:
- params = ()
- self.statistics = Statistics(self.suite, *params)
+ self._settings = settings
self._generator = 'Robot'
def serialize_output(self, path, log=True):
if path == 'NONE':
return
+ if self._settings:
+ settings = self._settings
+ params = (settings['SuiteStatLevel'],
settings['TagStatInclude'],
+ settings['TagStatExclude'],
settings['TagStatCombine'],
+ settings['TagDoc'], settings['TagStatLink'])
+ else:
+ params = ()
+ self.result.configure_statistics(*params)
serializer = RebotXMLWriter(path)
self.result.visit(serializer)
if log:
@@ -108,7 +108,7 @@
return
serializer = XUnitWriter(path)
try:
- self.suite.visit(serializer)
+ self.result.suite.visit(serializer)
except:
raise DataError("Writing XUnit result file '%s' failed: %s" %
(path, utils.get_error_message()))
=======================================
--- /src/robot/result/model.py Sat Nov 5 02:54:53 2011
+++ /src/robot/result/model.py Sat Nov 5 04:54:17 2011
@@ -30,10 +30,11 @@
self.errors = ExecutionErrors()
self.generator = None
self.should_return_status_rc = True
+ self._stat_opts = ()
@property
def statistics(self):
- return Statistics(self.suite)
+ return Statistics(self.suite, *self._stat_opts)
@property
def return_code(self):
@@ -45,6 +46,9 @@
self.should_return_status_rc = status_rc
SuiteConfigurer(**suite_opts).configure(self.suite)
+ def configure_statistics(self, *stat_opts): #TODO: use **kwargs
+ self._stat_opts = stat_opts
+
def visit(self, visitor):
visitor.visit_result(self)