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

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

Issue 1399273002: [Android] Add a configurable environment for devil/. (RELAND) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: android_any -> android_host Created 5 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
« no previous file with comments | « build/android/setup.gyp ('k') | build/android/tombstones.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 itertools 11 import itertools
12 import logging 12 import logging
13 import os 13 import os
14 import signal 14 import signal
15 import sys 15 import sys
16 import threading 16 import threading
17 import unittest 17 import unittest
18 18
19 import devil_chromium
20
19 from devil import base_error 21 from devil import base_error
20 from devil.android import apk_helper 22 from devil.android import apk_helper
21 from devil.android import device_blacklist 23 from devil.android import device_blacklist
22 from devil.android import device_errors 24 from devil.android import device_errors
23 from devil.android import device_utils 25 from devil.android import device_utils
24 from devil.android import ports 26 from devil.android import ports
25 from devil.utils import reraiser_thread 27 from devil.utils import reraiser_thread
26 from devil.utils import run_tests_helper 28 from devil.utils import run_tests_helper
27 29
28 from pylib import constants 30 from pylib import constants
(...skipping 11 matching lines...) Expand all
40 from pylib.junit import test_dispatcher as junit_dispatcher 42 from pylib.junit import test_dispatcher as junit_dispatcher
41 from pylib.monkey import setup as monkey_setup 43 from pylib.monkey import setup as monkey_setup
42 from pylib.monkey import test_options as monkey_test_options 44 from pylib.monkey import test_options as monkey_test_options
43 from pylib.perf import setup as perf_setup 45 from pylib.perf import setup as perf_setup
44 from pylib.perf import test_options as perf_test_options 46 from pylib.perf import test_options as perf_test_options
45 from pylib.perf import test_runner as perf_test_runner 47 from pylib.perf import test_runner as perf_test_runner
46 from pylib.results import json_results 48 from pylib.results import json_results
47 from pylib.results import report_results 49 from pylib.results import report_results
48 50
49 51
52 _DEVIL_STATIC_CONFIG_FILE = os.path.abspath(os.path.join(
53 constants.DIR_SOURCE_ROOT, 'build', 'android', 'devil_config.json'))
54
55
50 def AddCommonOptions(parser): 56 def AddCommonOptions(parser):
51 """Adds all common options to |parser|.""" 57 """Adds all common options to |parser|."""
52 58
53 group = parser.add_argument_group('Common Options') 59 group = parser.add_argument_group('Common Options')
54 60
55 default_build_type = os.environ.get('BUILDTYPE', 'Debug') 61 default_build_type = os.environ.get('BUILDTYPE', 'Debug')
56 62
57 debug_or_release_group = group.add_mutually_exclusive_group() 63 debug_or_release_group = group.add_mutually_exclusive_group()
58 debug_or_release_group.add_argument( 64 debug_or_release_group.add_argument(
59 '--debug', action='store_const', const='Debug', dest='build_type', 65 '--debug', action='store_const', const='Debug', dest='build_type',
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
104 def ProcessCommonOptions(args): 110 def ProcessCommonOptions(args):
105 """Processes and handles all common options.""" 111 """Processes and handles all common options."""
106 run_tests_helper.SetLogLevel(args.verbose_count) 112 run_tests_helper.SetLogLevel(args.verbose_count)
107 constants.SetBuildType(args.build_type) 113 constants.SetBuildType(args.build_type)
108 if args.build_directory: 114 if args.build_directory:
109 constants.SetBuildDirectory(args.build_directory) 115 constants.SetBuildDirectory(args.build_directory)
110 if args.output_directory: 116 if args.output_directory:
111 constants.SetOutputDirectory(args.output_directory) 117 constants.SetOutputDirectory(args.output_directory)
112 if args.adb_path: 118 if args.adb_path:
113 constants.SetAdbPath(args.adb_path) 119 constants.SetAdbPath(args.adb_path)
120
121 devil_chromium.Initialize(output_directory=constants.GetOutDirectory())
122
114 # Some things such as Forwarder require ADB to be in the environment path. 123 # Some things such as Forwarder require ADB to be in the environment path.
115 adb_dir = os.path.dirname(constants.GetAdbPath()) 124 adb_dir = os.path.dirname(constants.GetAdbPath())
116 if adb_dir and adb_dir not in os.environ['PATH'].split(os.pathsep): 125 if adb_dir and adb_dir not in os.environ['PATH'].split(os.pathsep):
117 os.environ['PATH'] = adb_dir + os.pathsep + os.environ['PATH'] 126 os.environ['PATH'] = adb_dir + os.pathsep + os.environ['PATH']
118 127
119 128
120 def AddRemoteDeviceOptions(parser): 129 def AddRemoteDeviceOptions(parser):
121 group = parser.add_argument_group('Remote Device Options') 130 group = parser.add_argument_group('Remote Device Options')
122 131
123 group.add_argument('--trigger', 132 group.add_argument('--trigger',
(...skipping 874 matching lines...) Expand 10 before | Expand all | Expand 10 after
998 if e.is_infra_error: 1007 if e.is_infra_error:
999 return constants.INFRA_EXIT_CODE 1008 return constants.INFRA_EXIT_CODE
1000 return constants.ERROR_EXIT_CODE 1009 return constants.ERROR_EXIT_CODE
1001 except: # pylint: disable=W0702 1010 except: # pylint: disable=W0702
1002 logging.exception('Unrecognized error occurred.') 1011 logging.exception('Unrecognized error occurred.')
1003 return constants.ERROR_EXIT_CODE 1012 return constants.ERROR_EXIT_CODE
1004 1013
1005 1014
1006 if __name__ == '__main__': 1015 if __name__ == '__main__':
1007 sys.exit(main()) 1016 sys.exit(main())
OLDNEW
« no previous file with comments | « build/android/setup.gyp ('k') | build/android/tombstones.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698