Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(11)

Side by Side Diff: build/android/pylib/ports.py

Issue 11187036: Android: start upstreaming some of our perf tests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: sami's comments Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 """Functions that deals with local and device ports.""" 5 """Functions that deals with local and device ports."""
6 6
7 import contextlib 7 import contextlib
8 import fcntl 8 import fcntl
9 import httplib 9 import httplib
10 import logging 10 import logging
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
44 Returns: 44 Returns:
45 Returns a valid port which should be in between TEST_SERVER_PORT_FIRST and 45 Returns a valid port which should be in between TEST_SERVER_PORT_FIRST and
46 TEST_SERVER_PORT_LAST. Returning 0 means no more valid port can be used. 46 TEST_SERVER_PORT_LAST. Returning 0 means no more valid port can be used.
47 """ 47 """
48 port = 0 48 port = 0
49 ports_tried = [] 49 ports_tried = []
50 try: 50 try:
51 fp_lock = open(constants.TEST_SERVER_PORT_LOCKFILE, 'w') 51 fp_lock = open(constants.TEST_SERVER_PORT_LOCKFILE, 'w')
52 fcntl.flock(fp_lock, fcntl.LOCK_EX) 52 fcntl.flock(fp_lock, fcntl.LOCK_EX)
53 # Get current valid port and calculate next valid port. 53 # Get current valid port and calculate next valid port.
54 assert os.path.exists(constants.TEST_SERVER_PORT_FILE) 54 if not os.path.exists(constants.TEST_SERVER_PORT_FILE):
55 ResetTestServerPortAllocation()
55 with open(constants.TEST_SERVER_PORT_FILE, 'r+') as fp: 56 with open(constants.TEST_SERVER_PORT_FILE, 'r+') as fp:
56 port = int(fp.read()) 57 port = int(fp.read())
57 ports_tried.append(port) 58 ports_tried.append(port)
58 while IsHostPortUsed(port): 59 while IsHostPortUsed(port):
59 port += 1 60 port += 1
60 ports_tried.append(port) 61 ports_tried.append(port)
61 if (port > constants.TEST_SERVER_PORT_LAST or 62 if (port > constants.TEST_SERVER_PORT_LAST or
62 port < constants.TEST_SERVER_PORT_FIRST): 63 port < constants.TEST_SERVER_PORT_FIRST):
63 port = 0 64 port = 0
64 else: 65 else:
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
158 client_error = ('Bad response: %s %s version %s\n ' % 159 client_error = ('Bad response: %s %s version %s\n ' %
159 (r.status, r.reason, r.version) + 160 (r.status, r.reason, r.version) +
160 '\n '.join([': '.join(h) for h in r.getheaders()])) 161 '\n '.join([': '.join(h) for h in r.getheaders()]))
161 except (httplib.HTTPException, socket.error) as e: 162 except (httplib.HTTPException, socket.error) as e:
162 # Probably too quick connecting: try again. 163 # Probably too quick connecting: try again.
163 exception_error_msgs = traceback.format_exception_only(type(e), e) 164 exception_error_msgs = traceback.format_exception_only(type(e), e)
164 if exception_error_msgs: 165 if exception_error_msgs:
165 client_error = ''.join(exception_error_msgs) 166 client_error = ''.join(exception_error_msgs)
166 # Only returns last client_error. 167 # Only returns last client_error.
167 return (False, client_error or 'Timeout') 168 return (False, client_error or 'Timeout')
OLDNEW
« no previous file with comments | « no previous file | build/android/pylib/surface_stats_collector.py » ('j') | build/android/pylib/surface_stats_collector.py » ('J')

Powered by Google App Engine
This is Rietveld 408576698