Title: [99326] trunk/Tools
Revision
99326
Author
[email protected]
Date
2011-11-04 15:09:06 -0700 (Fri, 04 Nov 2011)

Log Message

new-run-webkit-tests autoinstalls python-irclib even though it doesn't need to
https://bugs.webkit.org/show_bug.cgi?id=71549

Reviewed by Adam Barth.

Several members of Host didn't really belong there
and were instead specific to WebKitPatch, so I've moved
them up onto that class.

* Scripts/webkitpy/common/host.py:
* Scripts/webkitpy/common/host_mock.py:
* Scripts/webkitpy/tool/main.py:
* Scripts/webkitpy/tool/mocktool.py:
* Scripts/webkitpy/tool/steps/runtests_unittest.py:

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (99325 => 99326)


--- trunk/Tools/ChangeLog	2011-11-04 22:01:07 UTC (rev 99325)
+++ trunk/Tools/ChangeLog	2011-11-04 22:09:06 UTC (rev 99326)
@@ -1,3 +1,20 @@
+2011-11-04  Eric Seidel  <[email protected]>
+
+        new-run-webkit-tests autoinstalls python-irclib even though it doesn't need to
+        https://bugs.webkit.org/show_bug.cgi?id=71549
+
+        Reviewed by Adam Barth.
+
+        Several members of Host didn't really belong there
+        and were instead specific to WebKitPatch, so I've moved
+        them up onto that class.
+
+        * Scripts/webkitpy/common/host.py:
+        * Scripts/webkitpy/common/host_mock.py:
+        * Scripts/webkitpy/tool/main.py:
+        * Scripts/webkitpy/tool/mocktool.py:
+        * Scripts/webkitpy/tool/steps/runtests_unittest.py:
+
 2011-11-04  Tony Chang  <[email protected]>
 
         garden-o-matic: bring back party time!

Modified: trunk/Tools/Scripts/webkitpy/common/host.py (99325 => 99326)


--- trunk/Tools/Scripts/webkitpy/common/host.py	2011-11-04 22:01:07 UTC (rev 99325)
+++ trunk/Tools/Scripts/webkitpy/common/host.py	2011-11-04 22:09:06 UTC (rev 99326)
@@ -30,11 +30,9 @@
 
 from webkitpy.common.checkout import Checkout
 from webkitpy.common.checkout.scm import default_scm
-from webkitpy.common.config.ports import WebKitPort
 from webkitpy.common.memoized import memoized
-from webkitpy.common.net import bugzilla, buildbot, statusserver, web
+from webkitpy.common.net import bugzilla, buildbot, web
 from webkitpy.common.net.buildbot.chromiumbuildbot import ChromiumBuildBot
-from webkitpy.common.net.irc import ircproxy
 from webkitpy.common.system import executive, filesystem, platforminfo, user, workspace
 from webkitpy.common.watchlist.watchlistloader import WatchListLoader
 from webkitpy.layout_tests.port.factory import PortFactory
@@ -59,11 +57,6 @@
         self.bugs = bugzilla.Bugzilla()
         self.buildbot = buildbot.BuildBot()
 
-        self._irc = None
-        self._port = None
-
-        self.status_server = statusserver.StatusServer()
-
         # FIXME: Unfortunately Port objects are currently the central-dispatch objects of the NRWT world.
         # In order to instantiate a port correctly, we have to pass it at least an executive, user, scm, and filesystem
         # so for now we just pass along the whole Host object.
@@ -79,9 +72,6 @@
     def checkout(self):
         return self._checkout
 
-    def port(self):
-        return self._port
-
     @memoized
     def chromium_buildbot(self):
         return ChromiumBuildBot()
@@ -89,17 +79,3 @@
     @memoized
     def watch_list(self):
         return WatchListLoader(self.filesystem).load()
-
-    def ensure_irc_connected(self, irc_delegate):
-        if not self._irc:
-            self._irc = ircproxy.IRCProxy(irc_delegate)
-
-    def irc(self):
-        # We don't automatically construct IRCProxy here because constructing
-        # IRCProxy actually connects to IRC.  We want clients to explicitly
-        # connect to IRC.
-        return self._irc
-
-    def command_completed(self):
-        if self._irc:
-            self._irc.disconnect()

Modified: trunk/Tools/Scripts/webkitpy/common/host_mock.py (99325 => 99326)


--- trunk/Tools/Scripts/webkitpy/common/host_mock.py	2011-11-04 22:01:07 UTC (rev 99325)
+++ trunk/Tools/Scripts/webkitpy/common/host_mock.py	2011-11-04 22:09:06 UTC (rev 99326)
@@ -26,24 +26,19 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
-import threading
-
+from webkitpy.common.checkout.checkout_mock import MockCheckout
+from webkitpy.common.checkout.scm.scm_mock import MockSCM
 from webkitpy.common.net.bugzilla.bugzilla_mock import MockBugzilla
-from webkitpy.common.net.statusserver_mock import MockStatusServer
 from webkitpy.common.net.buildbot.buildbot_mock import MockBuildBot
+from webkitpy.common.net.web_mock import MockWeb
 from webkitpy.common.system.executive_mock import MockExecutive
-from webkitpy.common.system.user_mock import MockUser
 from webkitpy.common.system.filesystem_mock import MockFileSystem
 from webkitpy.common.system.platforminfo_mock import MockPlatformInfo
+from webkitpy.common.system.user_mock import MockUser
 from webkitpy.common.system.workspace_mock import MockWorkspace
-from webkitpy.common.net.web_mock import MockWeb
-from webkitpy.common.net.irc.irc_mock import MockIRC
-from webkitpy.common.checkout.checkout_mock import MockCheckout
-from webkitpy.common.checkout.scm.scm_mock import MockSCM
 from webkitpy.common.watchlist.watchlist_mock import MockWatchList
 
-# FIXME: Old-style "Ports" need to die and be replaced by modern layout_tests.port which needs to move to common.
-from webkitpy.common.config.ports_mock import MockPort
+# New-style ports need to move down into webkitpy.common.
 from webkitpy.layout_tests.port.factory import PortFactory
 
 
@@ -64,13 +59,7 @@
         self.bugs = MockBugzilla()
         self.buildbot = MockBuildBot()
         self._chromium_buildbot = MockBuildBot()
-        self.status_server = MockStatusServer()
 
-        self._irc = None
-        self.irc_password = "MOCK irc password"
-        self.wakeup_event = threading.Event()
-
-        self._port = MockPort()
         # Note: We're using a real PortFactory here.  Tests which don't wish to depend
         # on the list of known ports should override this with a MockPortFactory.
         self.port_factory = PortFactory(self)
@@ -83,18 +72,9 @@
     def checkout(self):
         return self._checkout
 
-    def port(self):
-        return self._port
-
     def chromium_buildbot(self):
         return self._chromium_buildbot
 
     def watch_list(self):
         return self._watch_list
 
-    def ensure_irc_connected(self, delegate):
-        if not self._irc:
-            self._irc = MockIRC()
-
-    def irc(self):
-        return self._irc

Modified: trunk/Tools/Scripts/webkitpy/tool/commands/earlywarningsystem.py (99325 => 99326)


--- trunk/Tools/Scripts/webkitpy/tool/commands/earlywarningsystem.py	2011-11-04 22:01:07 UTC (rev 99325)
+++ trunk/Tools/Scripts/webkitpy/tool/commands/earlywarningsystem.py	2011-11-04 22:09:06 UTC (rev 99326)
@@ -51,7 +51,7 @@
 
     def begin_work_queue(self):
         # FIXME: This violates abstraction
-        self._tool._port = self.port
+        self._tool._deprecated_port = self.port
         AbstractReviewQueue.begin_work_queue(self)
         self._expected_failures = ExpectedFailures()
         self._layout_test_results_reader = LayoutTestResultsReader(self._tool, self._log_directory())

Modified: trunk/Tools/Scripts/webkitpy/tool/main.py (99325 => 99326)


--- trunk/Tools/Scripts/webkitpy/tool/main.py	2011-11-04 22:01:07 UTC (rev 99325)
+++ trunk/Tools/Scripts/webkitpy/tool/main.py	2011-11-04 22:09:06 UTC (rev 99326)
@@ -35,6 +35,8 @@
 
 from webkitpy.common.config.ports import WebKitPort
 from webkitpy.common.host import Host
+from webkitpy.common.net.irc import ircproxy
+from webkitpy.common.net.statusserver import StatusServer
 from webkitpy.tool.multicommandtool import MultiCommandTool
 from webkitpy.tool import commands
 
@@ -53,13 +55,33 @@
     def __init__(self, path):
         MultiCommandTool.__init__(self)
         Host.__init__(self)
+        self._path = path
+        self.status_server = StatusServer()
 
-        self._path = path
         self.wakeup_event = threading.Event()
+        self._irc = None
+        self._deprecated_port = None
 
+    def port(self):
+        return self._deprecated_port
+
     def path(self):
         return self._path
 
+    def ensure_irc_connected(self, irc_delegate):
+        if not self._irc:
+            self._irc = ircproxy.IRCProxy(irc_delegate)
+
+    def irc(self):
+        # We don't automatically construct IRCProxy here because constructing
+        # IRCProxy actually connects to IRC.  We want clients to explicitly
+        # connect to IRC.
+        return self._irc
+
+    def command_completed(self):
+        if self._irc:
+            self._irc.disconnect()
+
     def should_show_in_main_help(self, command):
         if not command.show_in_main_help:
             return False
@@ -80,7 +102,7 @@
         if options.irc_password:
             self.irc_password = options.irc_password
         # If options.port is None, we'll get the default port for this platform.
-        self._port = WebKitPort.port(options.port)
+        self._deprecated_port = WebKitPort.port(options.port)
 
     def should_execute_command(self, command):
         if command.requires_local_commits and not self.scm().supports_local_commits():

Modified: trunk/Tools/Scripts/webkitpy/tool/mocktool.py (99325 => 99326)


--- trunk/Tools/Scripts/webkitpy/tool/mocktool.py	2011-11-04 22:01:07 UTC (rev 99325)
+++ trunk/Tools/Scripts/webkitpy/tool/mocktool.py	2011-11-04 22:09:06 UTC (rev 99326)
@@ -26,10 +26,18 @@
 # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
+import threading
 
 from webkitpy.common.host_mock import MockHost
+from webkitpy.common.net.statusserver_mock import MockStatusServer
+from webkitpy.common.net.irc.irc_mock import MockIRC
 
+# FIXME: Old-style "Ports" need to die and be replaced by modern layout_tests.port which needs to move to common.
+from webkitpy.common.config.ports_mock import MockPort
 
+
+# FIXME: This should be moved somewhere in common and renamed
+# something without Mock in the name.
 class MockOptions(object):
     """Mock implementation of optparse.Values."""
 
@@ -43,6 +51,27 @@
             self.__dict__[key] = value
 
 
+# FIXME: This should be renamed MockWebKitPatch.
 class MockTool(MockHost):
+    def __init__(self, *args, **kwargs):
+        MockHost.__init__(self, *args, **kwargs)
+
+        self._deprecated_port = MockPort()
+        self.status_server = MockStatusServer()
+
+        self._irc = None
+        self.irc_password = "MOCK irc password"
+        self.wakeup_event = threading.Event()
+
+    def port(self):
+        return self._deprecated_port
+
     def path(self):
         return "echo"
+
+    def ensure_irc_connected(self, delegate):
+        if not self._irc:
+            self._irc = MockIRC()
+
+    def irc(self):
+        return self._irc

Modified: trunk/Tools/Scripts/webkitpy/tool/steps/runtests_unittest.py (99325 => 99326)


--- trunk/Tools/Scripts/webkitpy/tool/steps/runtests_unittest.py	2011-11-04 22:01:07 UTC (rev 99325)
+++ trunk/Tools/Scripts/webkitpy/tool/steps/runtests_unittest.py	2011-11-04 22:09:06 UTC (rev 99326)
@@ -35,8 +35,8 @@
 class RunTestsTest(unittest.TestCase):
     def test_no_unit_tests(self):
         tool = MockTool()
-        tool._port.run_python_unittests_command = lambda: None
-        tool._port.run_perl_unittests_command = lambda: None
+        tool._deprecated_port.run_python_unittests_command = lambda: None
+        tool._deprecated_port.run_perl_unittests_command = lambda: None
         step = RunTests(tool, MockOptions(test=True, non_interactive=True, quiet=False))
         expected_stderr = """Running _javascript_Core tests
 Running run-webkit-tests
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to