Author: pekka.klarck
Date: Sun Apr  5 08:08:10 2009
New Revision: 1675

Modified:
   trunk/src/robot/serializing/logserializers.py
   trunk/src/robot/serializing/reportserializers.py
   trunk/src/robot/serializing/testoutput.py

Log:
Renamed serializer classes slightly and did some more cleanups

Modified: trunk/src/robot/serializing/logserializers.py
==============================================================================
--- trunk/src/robot/serializing/logserializers.py       (original)
+++ trunk/src/robot/serializing/logserializers.py       Sun Apr  5 08:08:10 2009
@@ -18,31 +18,7 @@
 from robot import utils


-class LogErrorsSerializer:
-
-    def __init__(self, output):
-        self._writer = utils.HtmlWriter(output)
-
-    def start_errors(self, errors):
-        if errors.messages:
-            self._writer.element('h2', 'Test Execution Errors')
-            self._writer.start('table', {'class': 'errors'})
-
-    def message(self, msg):
-        self._writer.start('tr')
-        self._writer.element('td', msg.timestamp.replace(' ', ' '),
-                             {'class': 'time'}, escape=False)
-        self._writer.element('td', msg.level,
-                             {'class': '%s level' % msg.level.lower()})
-        self._writer.element('td', msg.message, {'class': 'msg'})
-        self._writer.end('tr')
-
-    def end_errors(self, errors):
-        if errors.messages:
-            self._writer.end('table')
-
-
-class LogSuiteSerializer:
+class LogSerializer:

     def __init__(self, output, split_level=-1):
         self._writer = utils.HtmlWriter(output)
@@ -118,8 +94,8 @@

     def _write_expand_all(self, item):
         # Overridden by testdoc.py tool.
-        attrs = { 'href': "javascript:expand_all_children('%s')" % item.id,
-                  'class': 'expand' }
+        attrs = {'href': "javascript:expand_all_children('%s')" % item.id,
+                 'class': 'expand'}
         self._writer.element('a', 'Expand All', attrs)

     def _write_keyword_name(self, kw):
@@ -157,8 +133,8 @@
         self._write_button(fold, 'block', item.id+'_foldlink', onclk)

     def _write_button(self, label, display, id_, onclick):
- attrs = { 'style': 'display: %s;' % display, 'class': 'foldingbutton',
-                  'id': id_, 'onclick': onclick }
+ attrs = {'style': 'display: %s;' % display, 'class': 'foldingbutton',
+                 'id': id_, 'onclick': onclick}
         self._writer.element('div', label, attrs)

     def _is_element_open(self, item):
@@ -227,47 +203,47 @@
         pass


-class SplitLogSuiteSerializer(LogSuiteSerializer):
+class SplitLogSerializer(LogSerializer):

     def __init__(self, output, split_level):
-        LogSuiteSerializer.__init__(self, output, split_level)
+        LogSerializer.__init__(self, output, split_level)
self._namegen = utils.FileNameGenerator(os.path.basename(output.name))

     def start_suite(self, suite):
         if self._suite_level <= self._split_level:
-            LogSuiteSerializer.start_suite(self, suite)
+            LogSerializer.start_suite(self, suite)
         else:
             self._suite_level += 1

     def end_suite(self, suite):
         if self._suite_level <= self._split_level + 1:
-            LogSuiteSerializer.end_suite(self, suite)
+            LogSerializer.end_suite(self, suite)
         else:
             self._suite_level -= 1

     def start_test(self, test):
         if self._suite_level <= self._split_level:
-            LogSuiteSerializer.start_test(self, test)
+            LogSerializer.start_test(self, test)

     def end_test(self, test):
         if self._suite_level <= self._split_level:
-            LogSuiteSerializer.end_test(self, test)
+            LogSerializer.end_test(self, test)

     def start_keyword(self, kw):
         if self._suite_level <= self._split_level:
-            LogSuiteSerializer.start_keyword(self, kw)
+            LogSerializer.start_keyword(self, kw)

     def end_keyword(self, kw):
         if self._suite_level <= self._split_level:
-            LogSuiteSerializer.end_keyword(self, kw)
+            LogSerializer.end_keyword(self, kw)

     def message(self, msg):
         if self._suite_level <= self._split_level:
-            LogSuiteSerializer.message(self, msg)
+            LogSerializer.message(self, msg)

     def _write_suite_or_test_name(self, item, type_):
         if type_ == 'test' or self._suite_level < self._split_level:
-            LogSuiteSerializer._write_suite_or_test_name(self, item, type_)
+            LogSerializer._write_suite_or_test_name(self, item, type_)
         elif self._suite_level == self._split_level:
             self._write_split_suite_name(item)

@@ -288,3 +264,27 @@
             name = self._namegen.get_prev()
             link = '<a href="%s">%s</a>' % (name, name)
             self._write_metadata_row('Details', link, escape=False)
+
+
+class ErrorSerializer:
+
+    def __init__(self, output):
+        self._writer = utils.HtmlWriter(output)
+
+    def start_errors(self, errors):
+        if errors.messages:
+            self._writer.element('h2', 'Test Execution Errors')
+            self._writer.start('table', {'class': 'errors'})
+
+    def message(self, msg):
+        self._writer.start('tr')
+        self._writer.element('td', msg.timestamp.replace(' ', '&nbsp;'),
+                             {'class': 'time'}, escape=False)
+        self._writer.element('td', msg.level,
+                             {'class': '%s level' % msg.level.lower()})
+        self._writer.element('td', msg.message, {'class': 'msg'})
+        self._writer.end('tr')
+
+    def end_errors(self, errors):
+        if errors.messages:
+            self._writer.end('table')

Modified: trunk/src/robot/serializing/reportserializers.py
==============================================================================
--- trunk/src/robot/serializing/reportserializers.py    (original)
+++ trunk/src/robot/serializing/reportserializers.py Sun Apr 5 08:08:10 2009
@@ -16,7 +16,7 @@
 from robot import utils


-class _ReportTableHelper:
+class _TableHelper:

     def _start_table(self, name, tag_column_name):
         self._writer.start('table', {'class': name})
@@ -50,8 +50,7 @@
                              escape=False)

     def _get_name_params(self, item, type_):
-        attrs = { 'id' : '%s_%s' % (type_, item.longname),
-                  'title' : item.longname }
+ attrs = {'id': '%s_%s' % (type_,item.longname), 'title': item.longname}
         if item.linkpath:
             elem = 'a'
attrs['href'] = '%s#%s_%s' % (item.linkpath, type_, item.linkname)
@@ -66,7 +65,7 @@
{'class': 'col_status %s' % test.status.lower()})
         self._writer.element('td', test.message, {'class': 'col_msg'})
         self._writer.element('td', self._get_times(test),
-                             {'class': 'col_times'}, escape=False )
+                             {'class': 'col_times'}, escape=False)
         self._writer.end('tr')

     def _get_times(self, item):
@@ -87,7 +86,7 @@
         return '%s<br />%s' % (start, elapsed)


-class ReportSuiteSerializer(_ReportTableHelper):
+class ReportSerializer(_TableHelper):

end_test = start_keyword = end_keyword = message = lambda self, arg: None

@@ -122,7 +121,7 @@

     def _set_test_link(self, test):
# Separate _set_test/suite_link methods are needed to allow overriding
-        # them separately in SplitReportSuiteSerializer
+        # them separately in SplitReportSerializer
         test.linkpath = self._loglink
         test.linkname = test.longname

@@ -143,16 +142,16 @@
         self._writer.end('tr')


-class SplitReportSuiteSerializer(ReportSuiteSerializer):
+class SplitReportSerializer(ReportSerializer):

     def __init__(self, output, logpath, split_level):
-        ReportSuiteSerializer.__init__(self, output, logpath)
+        ReportSerializer.__init__(self, output, logpath)
         self._split_level = split_level
         self._namegen = utils.FileNameGenerator(self._loglink)

     def _set_suite_link(self, suite):
         if self._suite_level <= self._split_level:
-            ReportSuiteSerializer._set_suite_link(self, suite)
+            ReportSerializer._set_suite_link(self, suite)
         else:
             if self._suite_level == self._split_level + 1:
                 self._split_loglink = self._namegen.get_name()
@@ -160,7 +159,7 @@

     def _set_test_link(self, test):
         if self._suite_level <= self._split_level:
-            ReportSuiteSerializer._set_test_link(self, test)
+            ReportSerializer._set_test_link(self, test)
         else:
             self._set_split_link(test)

@@ -169,7 +168,7 @@
         item.linkname = item.get_long_name(split_level=self._split_level)


-class ReportTagStatSerializer(_ReportTableHelper):
+class TagDetailsSerializer(_TableHelper):

     def __init__(self, output):
         self._writer = utils.HtmlWriter(output)

Modified: trunk/src/robot/serializing/testoutput.py
==============================================================================
--- trunk/src/robot/serializing/testoutput.py   (original)
+++ trunk/src/robot/serializing/testoutput.py   Sun Apr  5 08:08:10 2009
@@ -26,9 +26,9 @@
 from outputserializers import OutputSerializer
 from statserializers import LogStatSerializer, SplitLogStatSerializer, \
      ReportStatSerializer, SummaryStatSerializer
-from logserializers import LogSuiteSerializer, SplitLogSuiteSerializer, \
-     LogErrorsSerializer
-from reportserializers import ReportSuiteSerializer, SplitReportSuiteSerializer, ReportTagStatSerializer +from logserializers import LogSerializer, SplitLogSerializer, ErrorSerializer
+from reportserializers import ReportSerializer, SplitReportSerializer, \
+     TagDetailsSerializer


 class RobotTestOutput:
@@ -66,9 +66,9 @@

     def serialize_summary(self, path, title=None):
         outfile = self._get_outfile(path, 'summary')
-        if outfile is None:
+        if not outfile:
             return
-        if title is None:
+        if not title:
             title = get_title('Summary', self.suite.name)
         self._use_template(outfile, templates.REPORT, title)
         self.statistics.serialize(SummaryStatSerializer(outfile))
@@ -78,28 +78,28 @@

     def serialize_report(self, path, title=None, logpath=None, split=-1):
         outfile = self._get_outfile(path, 'report')
-        if outfile is None:
+        if not outfile:
             return
-        if title is None:
+        if not title:
             title = get_title('Report', self.suite.name)
         if logpath == 'NONE':
             logpath = None
         self._use_template(outfile, templates.REPORT, title)
         self.statistics.serialize(ReportStatSerializer(outfile))
-        if split > 0 and logpath is not None:
- self.suite.serialize(SplitReportSuiteSerializer(outfile, logpath, split))
+        if split > 0 and logpath:
+ self.suite.serialize(SplitReportSerializer(outfile, logpath, split))
         else:
-            self.suite.serialize(ReportSuiteSerializer(outfile, logpath))
-        self.statistics.tags.serialize(ReportTagStatSerializer(outfile))
+            self.suite.serialize(ReportSerializer(outfile, logpath))
+        self.statistics.tags.serialize(TagDetailsSerializer(outfile))
         outfile.write('</body>\n</html>\n')
         outfile.close()
         LOGGER.output_file('Report', path)

     def serialize_log(self, path, title=None, split=-1):
         outfile = self._get_outfile(path, 'log')
-        if outfile is None:
+        if not outfile:
             return
-        if title is None:
+        if not title:
             title = get_title('Log', self.suite.name)
         self._use_template(outfile, templates.LOG, title)
         if split > 0:
@@ -112,13 +112,13 @@

     def _serialize_log(self, outfile):
         self.statistics.serialize(LogStatSerializer(outfile))
-        self.exec_errors.serialize(LogErrorsSerializer(outfile))
-        self.suite.serialize(LogSuiteSerializer(outfile))
+        self.exec_errors.serialize(ErrorSerializer(outfile))
+        self.suite.serialize(LogSerializer(outfile))

     def _serialize_split_log(self, outfile, level):
         self.statistics.serialize(SplitLogStatSerializer(outfile, level))
-        self.exec_errors.serialize(LogErrorsSerializer(outfile))
-        self.suite.serialize(SplitLogSuiteSerializer(outfile, level))
+        self.exec_errors.serialize(ErrorSerializer(outfile))
+        self.suite.serialize(SplitLogSerializer(outfile, level))
         self._create_split_sub_logs(self.suite, level)

     def _create_split_sub_logs(self, suite, level):
@@ -166,11 +166,11 @@

     def _create_split_sub_log(self, suite, split_level):
         outfile = self._get_outfile(self._namegen.get_name(), 'log')
-        if outfile is None:
+        if not outfile:
             return
self._use_template(outfile, templates.LOG, get_title('Log', suite.name)) Statistics(suite).serialize(LogStatSerializer(outfile, split_level))
-        suite.serialize(LogSuiteSerializer(outfile, split_level))
+        suite.serialize(LogSerializer(outfile, split_level))
         outfile.write('</body>\n</html>\n')
         outfile.close()

@@ -203,5 +203,5 @@

     def _serialize_split_log(self, outfile, level):
         self.statistics.serialize(SplitLogStatSerializer(outfile, level))
-        self.exec_errors.serialize(LogErrorsSerializer(outfile))
-        self._outsuite.serialize(SplitLogSuiteSerializer(outfile, level))
+        self.exec_errors.serialize(ErrorSerializer(outfile))
+        self._outsuite.serialize(SplitLogSerializer(outfile, level))

Reply via email to