OLD | NEW |
---|---|
1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 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 import json | 5 import json |
6 import os | 6 import os |
7 import tempfile | 7 import tempfile |
8 | 8 |
9 from devil.utils import cmd_helper | 9 from devil.utils import cmd_helper |
10 from pylib import constants | 10 from pylib import constants |
(...skipping 28 matching lines...) Expand all Loading... | |
39 if self._test_instance.test_filter: | 39 if self._test_instance.test_filter: |
40 jar_args.extend(['-gtest-filter', self._test_instance.test_filter]) | 40 jar_args.extend(['-gtest-filter', self._test_instance.test_filter]) |
41 if self._test_instance.package_filter: | 41 if self._test_instance.package_filter: |
42 jar_args.extend(['-package-filter', | 42 jar_args.extend(['-package-filter', |
43 self._test_instance.package_filter]) | 43 self._test_instance.package_filter]) |
44 if self._test_instance.runner_filter: | 44 if self._test_instance.runner_filter: |
45 jar_args.extend(['-runner-filter', self._test_instance.runner_filter]) | 45 jar_args.extend(['-runner-filter', self._test_instance.runner_filter]) |
46 command.extend(['--jar-args', '"%s"' % ' '.join(jar_args)]) | 46 command.extend(['--jar-args', '"%s"' % ' '.join(jar_args)]) |
47 | 47 |
48 # Add JVM arguments. | 48 # Add JVM arguments. |
49 jvm_args = [] | 49 jvm_args = ['-Drobolectric.dependency.dir=%s' % |
50 # TODO(mikecase): Add a --robolectric-dep-dir arg to test runner. | 50 self._test_instance.robolectric_runtime_deps_dir] |
jbudorick
2017/03/30 19:11:44
Nice.
| |
51 # Have this arg set by GN in the generated test runner scripts. | 51 |
52 jvm_args += [ | 52 if self._test_instance.android_manifest_path: |
53 '-Drobolectric.dependency.dir=%s' % | 53 jvm_args += ['-Dchromium.robolectric.manifest=%s' % |
54 os.path.join(constants.GetOutDirectory(), | 54 self._test_instance.android_manifest_path] |
55 'lib.java', 'third_party', 'robolectric')] | 55 |
56 if self._test_instance.package_name: | |
57 jvm_args += ['-Dchromium.robolectric.package.name=%s' % | |
58 self._test_instance.package_name] | |
59 | |
60 if self._test_instance.resource_dirs: | |
61 jvm_args += ['-Dchromium.robolectric.resource.dirs=%s' % | |
62 ':'.join(self._test_instance.resource_dirs)] | |
63 | |
56 if self._test_instance.coverage_dir: | 64 if self._test_instance.coverage_dir: |
57 if not os.path.exists(self._test_instance.coverage_dir): | 65 if not os.path.exists(self._test_instance.coverage_dir): |
58 os.makedirs(self._test_instance.coverage_dir) | 66 os.makedirs(self._test_instance.coverage_dir) |
59 elif not os.path.isdir(self._test_instance.coverage_dir): | 67 elif not os.path.isdir(self._test_instance.coverage_dir): |
60 raise Exception('--coverage-dir takes a directory, not file path.') | 68 raise Exception('--coverage-dir takes a directory, not file path.') |
61 jvm_args.append('-Demma.coverage.out.file=%s' % os.path.join( | 69 jvm_args.append('-Demma.coverage.out.file=%s' % os.path.join( |
62 self._test_instance.coverage_dir, | 70 self._test_instance.coverage_dir, |
63 '%s.ec' % self._test_instance.suite)) | 71 '%s.ec' % self._test_instance.suite)) |
72 | |
64 if jvm_args: | 73 if jvm_args: |
65 command.extend(['--jvm-args', '"%s"' % ' '.join(jvm_args)]) | 74 command.extend(['--jvm-args', '"%s"' % ' '.join(jvm_args)]) |
66 | 75 |
67 cmd_helper.RunCmd(command) | 76 cmd_helper.RunCmd(command) |
68 results_list = json_results.ParseResultsFromJson( | 77 results_list = json_results.ParseResultsFromJson( |
69 json.loads(json_file.read())) | 78 json.loads(json_file.read())) |
70 | 79 |
71 test_run_results = base_test_result.TestRunResults() | 80 test_run_results = base_test_result.TestRunResults() |
72 test_run_results.AddResults(results_list) | 81 test_run_results.AddResults(results_list) |
73 | 82 |
74 return [test_run_results] | 83 return [test_run_results] |
75 | 84 |
76 #override | 85 #override |
77 def TearDown(self): | 86 def TearDown(self): |
78 pass | 87 pass |
OLD | NEW |