Index: build/android/pylib/chrome_test_server_spawner.py |
diff --git a/build/android/pylib/chrome_test_server_spawner.py b/build/android/pylib/chrome_test_server_spawner.py |
index e1fe7b18b61fec26bb0ac32d882c0b9930f5773e..052c2fde78ea6516ab15d759a492bf957a28e0d1 100644 |
--- a/build/android/pylib/chrome_test_server_spawner.py |
+++ b/build/android/pylib/chrome_test_server_spawner.py |
@@ -64,17 +64,14 @@ def _WaitUntil(predicate, max_attempts=5): |
return False |
-def _CheckPortStatus(port, expected_status): |
- """Returns True if port has expected_status. |
+def _CheckPortAvailable(port): |
+ """Returns True if |port| is available.""" |
+ return _WaitUntil(lambda: ports.IsHostPortAvailable(port)) |
- Args: |
- port: the port number. |
- expected_status: boolean of expected status. |
- Returns: |
- Returns True if the status is expected. Otherwise returns False. |
- """ |
- return _WaitUntil(lambda: ports.IsHostPortUsed(port) == expected_status) |
+def _CheckPortNotAvailable(port): |
+ """Returns True if |port| is not available.""" |
+ return _WaitUntil(lambda: not ports.IsHostPortAvailable(port)) |
def _CheckDevicePortStatus(device, port): |
@@ -167,7 +164,7 @@ class TestServerThread(threading.Thread): |
port_json = json.loads(port_json) |
if port_json.has_key('port') and isinstance(port_json['port'], int): |
self.host_port = port_json['port'] |
- return _CheckPortStatus(self.host_port, True) |
+ return _CheckPortNotAvailable(self.host_port) |
logging.error('Failed to get port information from the server data.') |
return False |
@@ -236,7 +233,7 @@ class TestServerThread(threading.Thread): |
if self.pipe_out: |
self.is_ready = self._WaitToStartAndGetPortFromTestServer() |
else: |
- self.is_ready = _CheckPortStatus(self.host_port, True) |
+ self.is_ready = _CheckPortNotAvailable(self.host_port) |
if self.is_ready: |
Forwarder.Map([(0, self.host_port)], self.device, self.tool) |
# Check whether the forwarder is ready on the device. |
@@ -346,7 +343,7 @@ class SpawningServerRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler): |
logging.info('Handling request to kill a test server on port: %d.', port) |
self.server.test_server_instance.Stop() |
# Make sure the status of test server is correct before sending response. |
- if _CheckPortStatus(port, False): |
+ if _CheckPortAvailable(port): |
self._SendResponse(200, 'OK', {}, 'killed') |
logging.info('Test server on port %d is killed', port) |
else: |