def html(self):
classes = list()<EOL>package = "<STR_LIT>"<EOL>if self.package is not None:<EOL><INDENT>package = "<STR_LIT>" + self.package + "<STR_LIT>"<EOL><DEDENT>for classname in self.classes:<EOL><INDENT>classes.append(self.classes[classname].html())<EOL><DEDENT>errs = "<STR_LIT>"<EOL>for error in self.errors:<EOL><INDENT>if not len(errs):<EOL><INDENT>errs += "<STR_LIT>"<EOL><DEDENT>for part in ["<STR_LIT:type>", "<STR_LIT:message>", "<STR_LIT:text>"]:<EOL><INDENT>if part in error:<EOL><INDENT>errs += "<STR_LIT>".format(<EOL>part,<EOL>tag.text(error[part]))<EOL><DEDENT><DEDENT><DEDENT>stdio = "<STR_LIT>"<EOL>if self.stderr or self.stdout:<EOL><INDENT>stdio += "<STR_LIT>"<EOL>if self.stderr:<EOL><INDENT>stdio += "<STR_LIT>".format(<EOL>tag.text(self.stderr))<EOL><DEDENT>if self.stdout:<EOL><INDENT>stdio += "<STR_LIT>".format(<EOL>tag.text(self.stdout))<EOL><DEDENT><DEDENT>props = "<STR_LIT>"<EOL>if len(self.properties):<EOL><INDENT>props += "<STR_LIT>"<EOL>propnames = sorted(self.properties)<EOL>for prop in propnames:<EOL><INDENT>props += "<STR_LIT>".format(prop, self.properties[prop])<EOL><DEDENT>props += "<STR_LIT>"<EOL><DEDENT>return """<STR_LIT>""".format(name=tag.text(self.name),<EOL>anchor=self.anchor(),<EOL>duration=self.duration,<EOL>errs=errs,<EOL>stdio=stdio,<EOL>toc=self.toc(),<EOL>package=package,<EOL>properties=props,<EOL>classes="<STR_LIT>".join(classes),<EOL>count=len(self.all()),<EOL>fails=len(self.failed()))<EOL>
Render this as html.
:return: