[SCM] build.samba.org - branch master updated

Jelmer Vernooij jelmer at samba.org
Thu Nov 18 18:35:37 MST 2010


The branch, master has been updated
       via  fa581f9 Add get_last_builds tests.
      from  c6a5101 Add get_tree_builds.

http://gitweb.samba.org/?p=build-farm.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit fa581f99b057b52143b8984aba976d6223c5f637
Author: Jelmer Vernooij <jelmer at samba.org>
Date:   Fri Nov 19 02:35:00 2010 +0100

    Add get_last_builds tests.

-----------------------------------------------------------------------

Summary of changes:
 buildfarm/sqldb.py                |    2 +-
 buildfarm/tests/test_buildfarm.py |   30 ++++++++++++++++++++++++------
 buildfarm/web/__init__.py         |    2 +-
 3 files changed, 26 insertions(+), 8 deletions(-)


Changeset truncated at 500 lines:

diff --git a/buildfarm/sqldb.py b/buildfarm/sqldb.py
index 47bfa79..f816dd6 100644
--- a/buildfarm/sqldb.py
+++ b/buildfarm/sqldb.py
@@ -253,7 +253,7 @@ class StormCachingBuildFarm(BuildFarm):
             StormBuild.tree == tree).group_by(StormBuild.compiler, StormBuild.host)
 
     def get_last_builds(self):
-        return self._get_store().find(StormBuild)
+        return self._get_store().find(StormBuild).group_by(StormBuild.tree, StormBuild.compiler, StormBuild.host)
 
     def commit(self):
         self.store.commit()
diff --git a/buildfarm/tests/test_buildfarm.py b/buildfarm/tests/test_buildfarm.py
index 045348a..986462f 100644
--- a/buildfarm/tests/test_buildfarm.py
+++ b/buildfarm/tests/test_buildfarm.py
@@ -76,7 +76,8 @@ class BuildFarmTestBase(object):
     def setUp(self):
         self.write_compilers(["cc"])
         self.write_hosts({"myhost": "Fedora"})
-        self.write_trees({"trivial": {"scm": "git", "repo": "git://foo", "branch": "master"}})
+        self.write_trees({"trivial": {"scm": "git", "repo": "git://foo", "branch": "master"},
+                          "other": {"scm": "git", "repo": "other.git", "branch": "HEAD"}})
 
     def test_get_new_builds_empty(self):
         self.assertEquals([], list(self.x.get_new_builds()))
@@ -88,17 +89,34 @@ class BuildFarmTestBase(object):
         self.assertEquals([], list(self.x.get_tree_builds("trival")))
 
     def test_get_tree_builds(self):
-        path = self.upload_mock_logfile(self.x.builds, "tdb", "charis", "cc",
-                "BUILD COMMIT REVISION: 12\n")
-        path = self.upload_mock_logfile(self.x.builds, "tdb", "charis", "cc",
+        path = self.upload_mock_logfile(self.x.builds, "tdb", "myhost", "cc",
+            "BUILD COMMIT REVISION: 12\n")
+        path = self.upload_mock_logfile(self.x.builds, "tdb", "myhost", "cc",
             "BUILD COMMIT REVISION: 13\n")
-        path = self.upload_mock_logfile(self.x.builds, "tdb", "charis", "cc",
-                "BUILD COMMIT REVISION: 42\n")
+        path = self.upload_mock_logfile(self.x.builds, "tdb", "myhost", "cc",
+            "BUILD COMMIT REVISION: 42\n")
         builds = list(self.x.get_tree_builds("tdb"))
         self.assertEquals(1, len(builds))
         build = builds[0]
         self.assertEquals("42", build.revision)
 
+    def test_get_last_builds(self):
+        path = self.upload_mock_logfile(self.x.builds, "other", "myhost", "cc",
+            "BUILD COMMIT REVISION: 12\n")
+        path = self.upload_mock_logfile(self.x.builds, "trivial", "myhost", "cc",
+            "BUILD COMMIT REVISION: 13\n")
+        path = self.upload_mock_logfile(self.x.builds, "trivial", "myhost", "cc",
+            "BUILD COMMIT REVISION: 42\n")
+        builds = list(self.x.get_last_builds())
+        builds.sort()
+        self.assertEquals(2, len(builds))
+        build = builds[0]
+        self.assertEquals("42", build.revision_details()[0])
+        self.assertEquals("trivial", build.tree)
+        build = builds[1]
+        self.assertEquals("12", build.revision_details()[0])
+        self.assertEquals("other", build.tree)
+
     def test_get_host_builds_empty(self):
         self.assertEquals([], list(self.x.get_host_builds("myhost")))
 
diff --git a/buildfarm/web/__init__.py b/buildfarm/web/__init__.py
index 591d1b0..848f60d 100755
--- a/buildfarm/web/__init__.py
+++ b/buildfarm/web/__init__.py
@@ -591,7 +591,7 @@ class ViewRecentBuildsPage(BuildFarmPage):
         assert tree in self.buildfarm.trees, "not a build tree"
         assert sort_by in cmp_funcs, "not a valid sort"
 
-        for build in self.buildfarm.get_last_builds(tree=tree):
+        for build in self.buildfarm.get_tree_builds(tree=tree):
             try:
                 host = self.buildfarm.hostdb.host(build.host)
             except hostdb.NoSuchHost:


-- 
build.samba.org


More information about the samba-cvs mailing list