Index: Tools/Scripts/webkitpy/layout_tests/controllers/manager.py |
diff --git a/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py b/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py |
index 41100e70c5a8da2566c4ebec7da28e03868760fa..1456326c76e5b523d772b453a253950ad35bcd19 100644 |
--- a/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py |
+++ b/Tools/Scripts/webkitpy/layout_tests/controllers/manager.py |
@@ -83,8 +83,10 @@ class Manager(object): |
self.PERF_SUBDIR = 'perf' |
self.WEBSOCKET_SUBDIR = 'websocket' + port.TEST_PATH_SEPARATOR |
self.LAYOUT_TESTS_DIRECTORY = 'LayoutTests' |
+ self.WPT_SUBDIR = "web-platform-tests" |
self.ARCHIVED_RESULTS_LIMIT = 25 |
self._http_server_started = False |
+ self._wptserve_started = False |
self._websockets_server_started = False |
self._results_directory = self._port.results_directory() |
@@ -97,6 +99,10 @@ class Manager(object): |
def _is_http_test(self, test): |
return self.HTTP_SUBDIR in test or self._is_websocket_test(test) |
+ def _is_wpt_test(self, test): |
+ """Wheter this test is part of a web-platform-tests which require wptserve servers.""" |
jsbell
2015/06/04 17:43:25
typo: "whether"
burnik
2015/06/05 12:59:28
Done.
|
+ return self.WPT_SUBDIR in test |
+ |
def _is_inspector_test(self, test): |
return self.INSPECTOR_SUBDIR in test |
@@ -332,6 +338,11 @@ class Manager(object): |
return self._runner.run_tests(self._expectations, test_inputs, tests_to_skip, num_workers, retrying) |
def _start_servers(self, tests_to_run): |
+ if self._port.is_wpt_enabled() and any(self._is_wpt_test(test) for test in tests_to_run): |
+ self._printer.write_update('Starting WPTserve ...') |
+ self._port.start_wptserve() |
+ self._wptserve_started = True |
+ |
if self._port.requires_http_server() or any((self._is_http_test(test) or self._is_inspector_test(test)) for test in tests_to_run): |
self._printer.write_update('Starting HTTP server ...') |
self._port.start_http_server(additional_dirs={}, number_of_drivers=self._options.max_locked_shards) |
@@ -351,6 +362,10 @@ class Manager(object): |
self._printer.write_update('Stopping WebSocket server ...') |
self._websockets_server_started = False |
self._port.stop_websocket_server() |
+ if self._wptserve_started: |
+ self._printer.write_update('Stopping WPTServe servers ...') |
jsbell
2015/06/04 17:43:25
Nit: make string symmetric with 'Starting WPTserve
burnik
2015/06/05 12:59:28
Done.
|
+ self._wptserve_started = False |
+ self._port.stop_wptserve() |
def _clean_up_run(self): |
_log.debug("Flushing stdout") |