WebDriver: fix some nits that prevent running W3C tests on Mac
authorbburg@apple.com <bburg@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 20 Jan 2018 08:42:08 +0000 (08:42 +0000)
committerbburg@apple.com <bburg@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 20 Jan 2018 08:42:08 +0000 (08:42 +0000)
https://bugs.webkit.org/show_bug.cgi?id=181864

Reviewed by Carlos Garcia Campos.

* Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
(WebDriverW3CWebServer.__init__): _wsout needs to always be defined,
as we assume that the property exists later.

(WebDriverW3CWebServer.stop): If the temporary file doesn't
exist for some reason, the remove call will raise and exception.
Gracefully handle the case where the file isn't created due to
a problem/exception that happened elsewhere.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@227268 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Tools/ChangeLog
Tools/Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py

index 9463897..a2339f5 100644 (file)
@@ -1,3 +1,19 @@
+2018-01-20  Brian Burg  <bburg@apple.com>
+
+        WebDriver: fix some nits that prevent running W3C tests on Mac
+        https://bugs.webkit.org/show_bug.cgi?id=181864
+
+        Reviewed by Carlos Garcia Campos.
+
+        * Scripts/webkitpy/webdriver_tests/webdriver_w3c_web_server.py:
+        (WebDriverW3CWebServer.__init__): _wsout needs to always be defined,
+        as we assume that the property exists later.
+
+        (WebDriverW3CWebServer.stop): If the temporary file doesn't
+        exist for some reason, the remove call will raise and exception.
+        Gracefully handle the case where the file isn't created due to
+        a problem/exception that happened elsewhere.
+
 2018-01-19  Ling Ho  <lingcherd_ho@apple.com>
 
         Move Bingdings EWS and Webkitpy EWS queues to High Sierra on buildbot dashboard.
index c97ea67..27d50be 100644 (file)
@@ -43,6 +43,7 @@ class WebDriverW3CWebServer(object):
         self._layout_doc_root = os.path.join(layout_root, 'imported', 'w3c', 'web-platform-tests')
         self._process = None
         self._pid = None
+        self._wsout = None
 
         tmpdir = tempfile.gettempdir()
         if self._port.host.platform.is_mac():
@@ -114,7 +115,9 @@ class WebDriverW3CWebServer(object):
 
     def stop(self):
         _log.debug('Cleaning WebDriver WPT server config.json')
-        self._port.host.filesystem.remove(os.path.join(self._layout_doc_root, 'config.json'))
+        temporary_config_file = os.path.join(self._layout_doc_root, 'config.json')
+        if self._port.host.filesystem.exists(temporary_config_file):
+            self._port.host.filesystem.remove(temporary_config_file)
         if self._process:
             self._process.communicate(input='\n')
         if self._wsout: