[SCM] build.samba.org - branch master updated
Jelmer Vernooij
jelmer at samba.org
Tue Nov 9 22:57:12 MST 2010
The branch, master has been updated
via 9b5d8e0 Cope with intermediate errors.
via d08baa5 Cope with other_failures being the same.
via 794ca6c Use standard infrastructure for cmp.
from 1866e85 Return to the current directory after dealing with git revision calculation
http://gitweb.samba.org/?p=build-farm.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 9b5d8e01a53fcf035b153b05b06fb364e33c4822
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Wed Nov 10 06:57:53 2010 +0100
Cope with intermediate errors.
commit d08baa5a63fbb39346b1decacb5aaabdc5ee5adb
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Wed Nov 10 06:41:33 2010 +0100
Cope with other_failures being the same.
commit 794ca6c26b0070b0caf6e6181e1c1cfa084fa1ff
Author: Jelmer Vernooij <jelmer at samba.org>
Date: Wed Nov 10 06:23:18 2010 +0100
Use standard infrastructure for cmp.
-----------------------------------------------------------------------
Summary of changes:
buildfarm/data.py | 23 ++++++++-------------
buildfarm/tests/test_data.py | 44 ++++++++++++++++++++++++++++-------------
2 files changed, 39 insertions(+), 28 deletions(-)
Changeset truncated at 500 lines:
diff --git a/buildfarm/data.py b/buildfarm/data.py
index ffe4d64..8b73ee9 100644
--- a/buildfarm/data.py
+++ b/buildfarm/data.py
@@ -57,28 +57,23 @@ class BuildStatus(object):
return False
return cmp(self._status_tuple(), other._status_tuple())
- def cmp(a, b):
-
- #Give more importance to other failures
- if len(b.other_failures):
+ def __cmp__(self, other):
+ other_extra = other.other_failures - self.other_failures
+ self_extra = self.other_failures - other.other_failures
+ # Give more importance to other failures
+ if other_extra:
return 1
- if len(a.other_failures):
+ if self_extra:
return -1
- la = len(a.stages)
- lb = len(b.stages)
+ la = len(self.stages)
+ lb = len(other.stages)
if la > lb:
return 1
elif lb > la:
return -1
else:
- if la == 0:
- return 0
-
- sa = a.stages[-1]
- sb = b.stages[-1]
-
- return cmp(sb[1], sa[1])
+ return cmp(other.stages, self.stages)
def __str__(self):
return repr((self.stages, self.other_failures))
diff --git a/buildfarm/tests/test_data.py b/buildfarm/tests/test_data.py
index aff868a..e4ebb54 100755
--- a/buildfarm/tests/test_data.py
+++ b/buildfarm/tests/test_data.py
@@ -257,38 +257,54 @@ class BuildStatusTest(testtools.TestCase):
a = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 2)])
b = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 2)])
- self.assertEquals(a.cmp(b), 0)
+ self.assertEquals(cmp(a, b), 0)
- self.assertEquals(data.BuildStatus().cmp(data.BuildStatus()), 0)
+ def test_cmp_empty(self):
+ self.assertEquals(cmp(data.BuildStatus(), data.BuildStatus()), 0)
+
+ def test_cmp_other_failures(self):
+ self.assertEquals(cmp(
+ data.BuildStatus((), set(["foo"])), data.BuildStatus((), set(["foo"]))),
+ 0)
+
+ def test_cmp_intermediate_errors(self):
+ a = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 3)])
+ b = data.BuildStatus([("CONFIGURE", 2), ("TEST", 7), ("CC_CHECKER", 3)])
+ self.assertEquals(cmp(a, b), 1)
def test_cmp_bigger(self):
a = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 3)])
b = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 2)])
c = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3)])
- d = data.BuildStatus([], ("super error"))
- e = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 1)], ("super error"))
+ d = data.BuildStatus([], set(["super error"]))
+ e = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 1)], set(["super error"]))
# less stage means smaller, more error/higher error code means smaller as well
- self.assertEquals(b.cmp(a), 1)
+ self.assertEquals(cmp(b, a), 1)
- self.assertEquals(a.cmp(c), 1)
+ self.assertEquals(cmp(a, c), 1)
- self.assertEquals(a.cmp(d), 1)
+ self.assertEquals(cmp(a, d), 1)
- self.assertEquals(b.cmp(e), 1)
+ self.assertEquals(cmp(b, e), 1)
def test_cmp_smaller(self):
a = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 2)])
b = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 1)])
c = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3)])
- d = data.BuildStatus([], ("super error"))
- e = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 1)], ("super error"))
+ d = data.BuildStatus([], set(["super error"]))
+ e = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 1)], set(["super error"]))
# less stage means smaller, more error/higher error code means smaller as well
- self.assertEquals(a.cmp(b), -1)
+ self.assertEquals(cmp(a, b), -1)
+
+ self.assertEquals(cmp(c, b), -1)
- self.assertEquals(c.cmp(b), -1)
+ self.assertEquals(cmp(d, c), -1)
- self.assertEquals(d.cmp(c), -1)
+ self.assertEquals(cmp(e, c), -1)
- self.assertEquals(e.cmp(c), -1)
+ def test_cmp_with_other_failures(self):
+ d = data.BuildStatus([], set(["super error"]))
+ e = data.BuildStatus([("CONFIGURE", 2), ("TEST", 3), ("CC_CHECKER", 1)], set(["super error"]))
+ self.assertEquals(cmp(d, e), -1)
--
build.samba.org
More information about the samba-cvs
mailing list