[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

eric at webkit.org eric at webkit.org
Wed Dec 22 13:23:35 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 25b24877e8fb617b81b5e44274ea72ae8c8930a0
Author: eric at webkit.org <eric at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Sep 14 01:38:50 2010 +0000

    2010-09-13  Eric Seidel  <eric at webkit.org>
    
            Reviewed by Adam Barth.
    
            commit-queue should log when it's retrying due to checkout out of date error
            https://bugs.webkit.org/show_bug.cgi?id=45725
    
            This will allow us to better track how often we see these errors
            and how long it takes the queue to recover from them.
    
            In order to pass the tests, I had to correct an error
            from a previous change.  The UnitTestPort should not have
            ever been using the base port method as that will read
            a file from disk.  If the unit tests haven't passed the contents
            it should raise an IOError as though the file doesn't exist.
    
            * Scripts/webkitpy/layout_tests/port/base_unittest.py:
            * Scripts/webkitpy/tool/commands/queues.py:
            * Scripts/webkitpy/tool/commands/queues_unittest.py:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@67429 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index b3e3b07..6c4092c 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,3 +1,23 @@
+2010-09-13  Eric Seidel  <eric at webkit.org>
+
+        Reviewed by Adam Barth.
+
+        commit-queue should log when it's retrying due to checkout out of date error
+        https://bugs.webkit.org/show_bug.cgi?id=45725
+
+        This will allow us to better track how often we see these errors
+        and how long it takes the queue to recover from them.
+
+        In order to pass the tests, I had to correct an error
+        from a previous change.  The UnitTestPort should not have
+        ever been using the base port method as that will read
+        a file from disk.  If the unit tests haven't passed the contents
+        it should raise an IOError as though the file doesn't exist.
+
+        * Scripts/webkitpy/layout_tests/port/base_unittest.py:
+        * Scripts/webkitpy/tool/commands/queues.py:
+        * Scripts/webkitpy/tool/commands/queues_unittest.py:
+
 2010-09-13  Mihai Parparita  <mihaip at chromium.org>
 
         Reviewed by Adam Barth.
diff --git a/WebKitTools/Scripts/webkitpy/layout_tests/port/base_unittest.py b/WebKitTools/Scripts/webkitpy/layout_tests/port/base_unittest.py
index 1cc426f..3926838 100644
--- a/WebKitTools/Scripts/webkitpy/layout_tests/port/base_unittest.py
+++ b/WebKitTools/Scripts/webkitpy/layout_tests/port/base_unittest.py
@@ -66,7 +66,7 @@ class UnitTestPort(base.Port):
     def _open_configuration_file(self):
         if self._configuration_contents:
             return NewStringIO(self._configuration_contents)
-        return base.Port._open_configuration_file(self)
+        raise IOError
 
 
 class PortTest(unittest.TestCase):
diff --git a/WebKitTools/Scripts/webkitpy/tool/commands/queues.py b/WebKitTools/Scripts/webkitpy/tool/commands/queues.py
index f21df94..31ac5d8 100644
--- a/WebKitTools/Scripts/webkitpy/tool/commands/queues.py
+++ b/WebKitTools/Scripts/webkitpy/tool/commands/queues.py
@@ -294,6 +294,8 @@ class CommitQueue(AbstractPatchQueue, StepSequenceErrorHandler):
 
     @classmethod
     def handle_checkout_needs_update(cls, tool, state, options, error):
+        message = "Tests passed, but commit failed (checkout out of date).  Updating, then landing without building or re-running tests."
+        tool.status_server.update_status(cls.name, message, state["patch"])
         # The only time when we find out that out checkout needs update is
         # when we were ready to actually pull the trigger and land the patch.
         # Rather than spinning in the master process, we retry without
diff --git a/WebKitTools/Scripts/webkitpy/tool/commands/queues_unittest.py b/WebKitTools/Scripts/webkitpy/tool/commands/queues_unittest.py
index fd6543c..bb216a7 100644
--- a/WebKitTools/Scripts/webkitpy/tool/commands/queues_unittest.py
+++ b/WebKitTools/Scripts/webkitpy/tool/commands/queues_unittest.py
@@ -36,7 +36,7 @@ from webkitpy.tool.commands.commandtest import CommandsTest
 from webkitpy.tool.commands.queues import *
 from webkitpy.tool.commands.queuestest import QueuesTest
 from webkitpy.tool.commands.stepsequence import StepSequence
-from webkitpy.tool.mocktool import MockTool, MockSCM
+from webkitpy.tool.mocktool import MockTool, MockSCM, MockStatusServer
 
 
 class TestQueue(AbstractPatchQueue):
@@ -141,6 +141,9 @@ class NeedsUpdateSequence(StepSequence):
 
 
 class AlwaysCommitQueueTool(object):
+    def __init__(self):
+        self.status_server = MockStatusServer()
+
     def command_by_name(self, name):
         return CommitQueue
 
@@ -245,8 +248,9 @@ MOCK: update_work_items: commit-queue [106, 197]
         tool = AlwaysCommitQueueTool()
         sequence = NeedsUpdateSequence(None)
 
-        expected_stderr = "Commit failed because the checkout is out of date.  Please update and try again.\n"
-        OutputCapture().assert_outputs(self, sequence.run_and_handle_errors, [tool, options], expected_exception=TryAgain, expected_stderr=expected_stderr)
+        expected_stderr = "Commit failed because the checkout is out of date.  Please update and try again.\nMOCK: update_status: commit-queue Tests passed, but commit failed (checkout out of date).  Updating, then landing without building or re-running tests.\n"
+        state = {'patch': None}
+        OutputCapture().assert_outputs(self, sequence.run_and_handle_errors, [tool, options, state], expected_exception=TryAgain, expected_stderr=expected_stderr)
 
         self.assertEquals(options.update, True)
         self.assertEquals(options.build, False)

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list