Index: build/android/run_tests.py |
diff --git a/build/android/run_tests.py b/build/android/run_tests.py |
index cf0d3cbd58b84d3a87d947144b15002e366672d2..a6ffdb15a5ecfda30d837d7b1062daaff982aa68 100755 |
--- a/build/android/run_tests.py |
+++ b/build/android/run_tests.py |
@@ -82,16 +82,19 @@ _TEST_SUITES = ['base_unittests', |
] |
-def FullyQualifiedTestSuites(exe, option_test_suite): |
+def TestSuiteDir(build_type): |
+ """Return the base directory of test suites.""" |
+ return os.path.abspath(os.path.join(constants.CHROME_DIR, 'out', build_type)) |
+ |
+def FullyQualifiedTestSuites(exe, option_test_suite, build_type): |
"""Return a fully qualified list |
Args: |
exe: if True, use the executable-based test runner. |
option_test_suite: the test_suite specified as an option. |
+ build_type: 'Release' or 'Debug'. |
""" |
- # Assume the test suites are in out/Release. |
- test_suite_dir = os.path.abspath(os.path.join(constants.CHROME_DIR, |
- 'out', 'Release')) |
+ test_suite_dir = TestSuiteDir(build_type) |
if option_test_suite: |
all_test_suites = [option_test_suite] |
else: |
@@ -101,7 +104,7 @@ def FullyQualifiedTestSuites(exe, option_test_suite): |
qualified_test_suites = [os.path.join(test_suite_dir, t) |
for t in all_test_suites] |
else: |
- # out/Release/$SUITE_apk/$SUITE-debug.apk |
+ # out/(Debug|Release)/$SUITE_apk/$SUITE-debug.apk |
qualified_test_suites = [os.path.join(test_suite_dir, |
t + '_apk', |
t + '-debug.apk') |
@@ -195,7 +198,8 @@ class TestSharder(BaseTestSharder): |
def __init__(self, attached_devices, test_suite, gtest_filter, |
test_arguments, timeout, rebaseline, performance_test, |
- cleanup_test_files, tool, log_dump_name, fast_and_loose): |
+ cleanup_test_files, tool, log_dump_name, fast_and_loose, |
+ build_type): |
BaseTestSharder.__init__(self, attached_devices) |
self.test_suite = test_suite |
self.test_suite_basename = os.path.basename(test_suite) |
@@ -208,10 +212,12 @@ class TestSharder(BaseTestSharder): |
self.tool = tool |
self.log_dump_name = log_dump_name |
self.fast_and_loose = fast_and_loose |
+ self.build_type = build_type |
test = SingleTestRunner(self.attached_devices[0], test_suite, gtest_filter, |
test_arguments, timeout, rebaseline, |
performance_test, cleanup_test_files, tool, 0, |
- not not self.log_dump_name, fast_and_loose) |
+ not not self.log_dump_name, fast_and_loose, |
+ build_type) |
self.tests = [] |
if not self.gtest_filter: |
# No filter has been specified, let's add all tests then. |
@@ -245,7 +251,8 @@ class TestSharder(BaseTestSharder): |
test_filter, self.test_arguments, self.timeout, |
self.rebaseline, self.performance_test, |
self.cleanup_test_files, self.tool, index, |
- not not self.log_dump_name, self.fast_and_loose) |
+ not not self.log_dump_name, self.fast_and_loose, |
+ self.build_type) |
def OnTestsCompleted(self, test_runners, test_results): |
"""Notifies that we completed the tests.""" |
@@ -256,8 +263,7 @@ class TestSharder(BaseTestSharder): |
if self.log_dump_name: |
# Zip all debug info outputs into a file named by log_dump_name. |
debug_info.GTestDebugInfo.ZipAndCleanResults( |
- os.path.join(constants.CHROME_DIR, 'out', 'Release', |
- 'debug_info_dumps'), |
+ os.path.join(TestSuiteDir(self.build_type), 'debug_info_dumps'), |
self.log_dump_name) |
@@ -317,7 +323,8 @@ def _RunATestSuite(options): |
options.timeout, options.rebaseline, |
options.performance_test, |
options.cleanup_test_files, options.tool, |
- options.log_dump, options.fast_and_loose) |
+ options.log_dump, options.fast_and_loose, |
+ options.build_type) |
test_results = sharder.RunShardedTests() |
for buildbot_emulator in buildbot_emulators: |
@@ -355,7 +362,8 @@ def Dispatch(options): |
xvfb = Xvfb() |
xvfb.Start() |
- all_test_suites = FullyQualifiedTestSuites(options.exe, options.test_suite) |
+ all_test_suites = FullyQualifiedTestSuites(options.exe, options.test_suite, |
+ options.build_type) |
failures = 0 |
for suite in all_test_suites: |
options.test_suite = suite |
@@ -422,6 +430,7 @@ def main(argv): |
option_parser.add_option('--exe', action='store_true', |
help='If set, use the exe test runner instead of ' |
'the APK.') |
+ |
options, args = option_parser.parse_args(argv) |
if len(args) > 1: |
print 'Unknown argument:', args[1:] |