class UnitTestProgressIndicator(ProgressIndicator): def __init__(self): self.outputter = UnitTestOutput(XMLTESTSUITE) if XMLOUT: self.outfile = open(XMLOUT, "w") else: self.outfile = sys.stdout def Starting(self): pass def AboutToRun(self, case): self.outputter.startNewTest(case.GetName()) def Done(self): self.outputter.finishAndWrite(self.outfile) if self.outfile != sys.stdout: self.outfile.close() def HasRun(self, output): if output.UnexpectedOutput(): failtext="" stdout = output.output.stdout.strip() if len(stdout): failtext+="stdout:\n" failtext+=stdout failtext+="\n" stderr = output.output.stderr.strip() if len(stderr): failtext+="stderr:\n" failtext+=stderr failtext+="\n" if output.HasCrashed(): failtext+= "--- CRASHED ---" if output.HasTimedOut(): failtext+= "--- TIMEOUT ---" self.outputter.finishCurrentTest(True, failtext) else: self.outputter.finishCurrentTest(False)
def __init__(self): self.outputter = UnitTestOutput(XMLTESTSUITE) if XMLOUT: self.outfile = open(XMLOUT, "w") else: self.outfile = sys.stdout