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

Side by Side Diff: build/android/test_runner.py

Issue 1316413003: [Android] Add a configurable environment for devil/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 3 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
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # 2 #
3 # Copyright 2013 The Chromium Authors. All rights reserved. 3 # Copyright 2013 The Chromium Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style license that can be 4 # Use of this source code is governed by a BSD-style license that can be
5 # found in the LICENSE file. 5 # found in the LICENSE file.
6 6
7 """Runs all types of tests from one unified interface.""" 7 """Runs all types of tests from one unified interface."""
8 8
9 import argparse 9 import argparse
10 import collections 10 import collections
11 import logging 11 import logging
12 import os 12 import os
13 import signal 13 import signal
14 import sys 14 import sys
15 import threading 15 import threading
16 import unittest 16 import unittest
17 17
18 from devil import base_error 18 from devil import base_error
19 from devil.android import apk_helper 19 from devil.android import apk_helper
20 from devil.android import device_blacklist 20 from devil.android import device_blacklist
21 from devil.android import device_errors 21 from devil.android import device_errors
22 from devil.android import device_utils 22 from devil.android import device_utils
23 from devil.android import ports 23 from devil.android import ports
24 import devil.env
24 from devil.utils import reraiser_thread 25 from devil.utils import reraiser_thread
25 from devil.utils import run_tests_helper 26 from devil.utils import run_tests_helper
26 27
27 from pylib import constants 28 from pylib import constants
28 from pylib import forwarder 29 from pylib import forwarder
29 from pylib.base import base_test_result 30 from pylib.base import base_test_result
30 from pylib.base import environment_factory 31 from pylib.base import environment_factory
31 from pylib.base import test_dispatcher 32 from pylib.base import test_dispatcher
32 from pylib.base import test_instance_factory 33 from pylib.base import test_instance_factory
33 from pylib.base import test_run_factory 34 from pylib.base import test_run_factory
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 def ProcessCommonOptions(args): 111 def ProcessCommonOptions(args):
111 """Processes and handles all common options.""" 112 """Processes and handles all common options."""
112 run_tests_helper.SetLogLevel(args.verbose_count) 113 run_tests_helper.SetLogLevel(args.verbose_count)
113 constants.SetBuildType(args.build_type) 114 constants.SetBuildType(args.build_type)
114 if args.build_directory: 115 if args.build_directory:
115 constants.SetBuildDirectory(args.build_directory) 116 constants.SetBuildDirectory(args.build_directory)
116 if args.output_directory: 117 if args.output_directory:
117 constants.SetOutputDirectory(args.output_directory) 118 constants.SetOutputDirectory(args.output_directory)
118 if args.adb_path: 119 if args.adb_path:
119 constants.SetAdbPath(args.adb_path) 120 constants.SetAdbPath(args.adb_path)
121
122 devil.env.android_sdk = devil.env.android_sdk_config.AndroidSdkConfig(
jbudorick 2015/09/09 23:47:07 Configuring devil's environment is intentionally u
perezju 2015/09/10 09:45:48 Throwing some ideas: If the intention is that conf
123 root_path=constants.ANDROID_SDK_ROOT,
124 adb_path=args.adb_path)
125 devil.env.binaries = devil.env.binary_config.BinaryConfig(
126 binary_dir=constants.GetOutDirectory())
127
120 # Some things such as Forwarder require ADB to be in the environment path. 128 # Some things such as Forwarder require ADB to be in the environment path.
121 adb_dir = os.path.dirname(constants.GetAdbPath()) 129 adb_dir = os.path.dirname(constants.GetAdbPath())
122 if adb_dir and adb_dir not in os.environ['PATH'].split(os.pathsep): 130 if adb_dir and adb_dir not in os.environ['PATH'].split(os.pathsep):
123 os.environ['PATH'] = adb_dir + os.pathsep + os.environ['PATH'] 131 os.environ['PATH'] = adb_dir + os.pathsep + os.environ['PATH']
124 132
125 133
126 def AddRemoteDeviceOptions(parser): 134 def AddRemoteDeviceOptions(parser):
127 group = parser.add_argument_group('Remote Device Options') 135 group = parser.add_argument_group('Remote Device Options')
128 136
129 group.add_argument('--trigger', 137 group.add_argument('--trigger',
(...skipping 935 matching lines...) Expand 10 before | Expand all | Expand 10 after
1065 if e.is_infra_error: 1073 if e.is_infra_error:
1066 return constants.INFRA_EXIT_CODE 1074 return constants.INFRA_EXIT_CODE
1067 return constants.ERROR_EXIT_CODE 1075 return constants.ERROR_EXIT_CODE
1068 except: # pylint: disable=W0702 1076 except: # pylint: disable=W0702
1069 logging.exception('Unrecognized error occurred.') 1077 logging.exception('Unrecognized error occurred.')
1070 return constants.ERROR_EXIT_CODE 1078 return constants.ERROR_EXIT_CODE
1071 1079
1072 1080
1073 if __name__ == '__main__': 1081 if __name__ == '__main__':
1074 sys.exit(main()) 1082 sys.exit(main())
OLDNEW
« build/android/devil/env/android_sdk_config.py ('K') | « build/android/pylib/forwarder.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698