Chromium Code Reviews| OLD | NEW |
|---|---|
| 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 """Defines a set of constants shared by test runners and other scripts.""" | 5 """Defines a set of constants shared by test runners and other scripts.""" |
| 6 | 6 |
| 7 # TODO(jbudorick): Split these constants into coherent modules. | 7 # TODO(jbudorick): Split these constants into coherent modules. |
| 8 | 8 |
| 9 # pylint: disable=W0212 | 9 # pylint: disable=W0212 |
| 10 | 10 |
| 11 import collections | 11 import collections |
| 12 import glob | |
| 12 import logging | 13 import logging |
| 13 import os | 14 import os |
| 14 import subprocess | 15 import subprocess |
| 15 | 16 |
| 16 import devil.android.sdk.keyevent | 17 import devil.android.sdk.keyevent |
| 17 from devil.android.sdk import version_codes | 18 from devil.android.sdk import version_codes |
| 18 from devil.constants import exit_codes | 19 from devil.constants import exit_codes |
| 19 | 20 |
| 20 | 21 |
| 21 keyevent = devil.android.sdk.keyevent | 22 keyevent = devil.android.sdk.keyevent |
| (...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 253 Raises: | 254 Raises: |
| 254 Exception: If no output directory is detected. | 255 Exception: If no output directory is detected. |
| 255 """ | 256 """ |
| 256 output_dir = os.environ.get('CHROMIUM_OUTPUT_DIR') | 257 output_dir = os.environ.get('CHROMIUM_OUTPUT_DIR') |
| 257 out_dir = os.environ.get('CHROMIUM_OUT_DIR') | 258 out_dir = os.environ.get('CHROMIUM_OUT_DIR') |
| 258 if not output_dir and not out_dir: | 259 if not output_dir and not out_dir: |
| 259 # If CWD is an output directory, then assume it's the desired one. | 260 # If CWD is an output directory, then assume it's the desired one. |
| 260 if os.path.exists('build.ninja'): | 261 if os.path.exists('build.ninja'): |
| 261 output_dir = os.getcwd() | 262 output_dir = os.getcwd() |
| 262 SetOutputDirectory(output_dir) | 263 SetOutputDirectory(output_dir) |
| 264 elif os.environ.get('CHROME_HEADLESS'): | |
| 265 # When running on bots, see if the output directory is obvious. | |
| 266 dirs = glob.glob(os.path.join(DIR_SOURCE_ROOT, 'out', '*', 'build.ninja')) | |
|
jbudorick
2016/03/14 17:41:35
I don't think this will work with gyp bots, which
| |
| 267 if len(dirs) == 1: | |
| 268 SetOutputDirectory(dirs[0]) | |
| 269 else: | |
| 270 raise Exception('Neither CHROMIUM_OUTPUT_DIR nor CHROMIUM_OUT_DIR ' | |
| 271 'has been set. CHROME_HEADLESS detected, but multiple ' | |
| 272 'out dirs exist: %r' % dirs) | |
| 263 else: | 273 else: |
| 264 raise Exception('Neither CHROMIUM_OUTPUT_DIR nor CHROMIUM_OUT_DIR ' | 274 raise Exception('Neither CHROMIUM_OUTPUT_DIR nor CHROMIUM_OUT_DIR ' |
| 265 'has been set') | 275 'has been set') |
| 266 | 276 |
| 267 | 277 |
| 268 # TODO(jbudorick): Convert existing callers to AdbWrapper.GetAdbPath() and | 278 # TODO(jbudorick): Convert existing callers to AdbWrapper.GetAdbPath() and |
| 269 # remove this. | 279 # remove this. |
| 270 def GetAdbPath(): | 280 def GetAdbPath(): |
| 271 from devil.android.sdk import adb_wrapper | 281 from devil.android.sdk import adb_wrapper |
| 272 return adb_wrapper.AdbWrapper.GetAdbPath() | 282 return adb_wrapper.AdbWrapper.GetAdbPath() |
| 273 | 283 |
| 274 | 284 |
| 275 # Exit codes | 285 # Exit codes |
| 276 ERROR_EXIT_CODE = exit_codes.ERROR | 286 ERROR_EXIT_CODE = exit_codes.ERROR |
| 277 INFRA_EXIT_CODE = exit_codes.INFRA | 287 INFRA_EXIT_CODE = exit_codes.INFRA |
| 278 WARNING_EXIT_CODE = exit_codes.WARNING | 288 WARNING_EXIT_CODE = exit_codes.WARNING |
| OLD | NEW |