[Zope-Checkins] CVS: Zope - test.py:1.2.2.10
Chris Withers
chris at simplistix.co.uk
Fri Jul 30 16:49:06 EDT 2004
Update of /cvs-repository/Zope
In directory cvs.zope.org:/tmp/cvs-serv20722
Modified Files:
Tag: Zope-2_7-branch
test.py
Log Message:
Collector #1445: Fixed bad interaction between -p and -v(v) options to test.py that resulted in exceptions being printed when they shouldn't have been.
=== Zope/test.py 1.2.2.9 => 1.2.2.10 ===
--- Zope/test.py:1.2.2.9 Fri Jul 30 14:09:03 2004
+++ Zope/test.py Fri Jul 30 16:48:36 2004
@@ -254,15 +254,31 @@
for i in range(n):
print >>stream, "%6dms" % int(results[i][1] * 1000), results[i][0]
- def _print_traceback(self, msg, err, test, errlist):
- if self.showAll or self.dots or self._progress:
- self.stream.writeln("\n")
- self._lastWidth = 0
-
+ def _handle_problem(self, err, test, errlist):
+
+ if self._debug:
+ raise err[0], err[1], err[2]
+
+ if errlist is self.errors:
+ prefix = 'Error'
+ else:
+ prefix = 'Failure'
+
tb = "".join(traceback.format_exception(*err))
- self.stream.writeln(msg)
- self.stream.writeln(tb)
- errlist.append((test, tb))
+
+ if self._progress:
+ self.stream.writeln("\r")
+ self.stream.writeln("%s in test %s" % (prefix,test))
+ self.stream.writeln(tb)
+ self._lastWidth = 0
+ elif self.showAll:
+ self._lastWidth = 0
+ self.stream.writeln(prefix.upper())
+ elif self.dots:
+ self.stream.write(prefix[0])
+
+ if not self._progress:
+ errlist.append((test, tb))
def startTest(self, test):
if self._progress:
@@ -300,20 +316,10 @@
return s[:self._maxWidth]
def addError(self, test, err):
- if self._progress:
- self.stream.write("\r")
- if self._debug:
- raise err[0], err[1], err[2]
- self._print_traceback("Error in test %s" % test, err,
- test, self.errors)
+ self._handle_problem(err, test, self.errors)
def addFailure(self, test, err):
- if self._progress:
- self.stream.write("\r")
- if self._debug:
- raise err[0], err[1], err[2]
- self._print_traceback("Failure in test %s" % test, err,
- test, self.failures)
+ self._handle_problem(err, test, self.failures)
def printErrors(self):
if self._progress and not (self.dots or self.showAll):
More information about the Zope-Checkins
mailing list