Author: Ronan Lamy <[email protected]>
Branch:
Changeset: r967:3f895b5359db
Date: 2015-10-20 06:52 +0100
http://bitbucket.org/pypy/buildbot/changeset/3f895b5359db/
Log: Don't handle xpasses and xfails as test failures
diff --git a/bot2/pypybuildbot/summary.py b/bot2/pypybuildbot/summary.py
--- a/bot2/pypybuildbot/summary.py
+++ b/bot2/pypybuildbot/summary.py
@@ -55,6 +55,7 @@
self.failed = set()
self.skipped = set()
self._xfailed = 0
+ self._xpassed = 0
self.longreprs = {}
self._run_info = run_info
@@ -88,6 +89,8 @@
pass
elif shortrepr == 'x':
self._xfailed += 1
+ elif shortrepr == 'X':
+ self._xpassed += 1
else:
self.failed.add(namekey)
@@ -101,8 +104,8 @@
@property
def numpassed(self):
- return (len(self._outcomes) - len(self.skipped) - len(self.failed)
- - self._xfailed)
+ return (len(self._outcomes) - len(self.skipped) - len(self.failed) -
+ self._xfailed - self._xpassed)
@property
def numxfailed(self):
@@ -246,7 +249,7 @@
if self._failed is None:
self._failed = set()
for prefix, outcome in self.map.items():
- self._failed.update([(prefix,)+ namekey for namekey in
+ self._failed.update([(prefix,) + namekey for namekey in
outcome.failed])
return self._failed
@@ -497,7 +500,7 @@
combination = 0
for i, (label, outcome_set) in enumerate(by_label):
letter = outcome_set.get_outcome(failure)
- failed = letter.lower() not in ('s', '.', ' ')
+ failed = letter.lower() not in ('s', '.', ' ', 'x')
if failed:
combination |= 1 << i
if outcome_set.get_longrepr(failure):
diff --git a/bot2/pypybuildbot/test/test_summary.py
b/bot2/pypybuildbot/test/test_summary.py
--- a/bot2/pypybuildbot/test/test_summary.py
+++ b/bot2/pypybuildbot/test/test_summary.py
@@ -150,11 +150,12 @@
rev_outcome_set = summary.RevisionOutcomeSet('50000')
log = StringIO("""x a/b.py
EXC
+X a/b.py::test_1
""")
rev_outcome_set.populate(log)
-
assert rev_outcome_set.numxfailed == 1
+ assert not rev_outcome_set.failed
def test_absent_outcome(self):
@@ -204,9 +205,10 @@
log = StringIO("""F a/b.py:test_one
some
traceback
-. a/b.py:test_two
-s a/b.py:test_three
-x a/b.py:test_four
+. a/b.py::test_two
+s a/b.py::test_three
+x a/b.py::test_four
+X a/b.py::test_five
""")
rev_outcome_set_foo.populate(log)
@@ -215,9 +217,9 @@
key_bar = ('bar', 7)
rev_outcome_set_bar = summary.RevisionOutcomeSet('50000',
key_bar)
- log = StringIO(""". a/b.py:test_one
-. a/b.py:test_two
-s a/b.py:test_three
+ log = StringIO(""". a/b.py::test_one
+. a/b.py::test_two
+s a/b.py::test_three
""")
rev_outcome_set_bar.populate(log)
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit