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

Side by Side Diff: build/android/pylib/local/machine/local_machine_junit_test_run.py

Issue 2788733002: Add a way to get the test data folder from junit. (Closed)
Patch Set: Fix python autoformat weirdness. Created 3 years, 8 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 | « no previous file | testing/android/junit/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 10 matching lines...) Expand all
21 def TestPackage(self): 21 def TestPackage(self):
22 return self._test_instance.suite 22 return self._test_instance.suite
23 23
24 #override 24 #override
25 def SetUp(self): 25 def SetUp(self):
26 pass 26 pass
27 27
28 #override 28 #override
29 def RunTests(self): 29 def RunTests(self):
30 with tempfile.NamedTemporaryFile() as json_file: 30 with tempfile.NamedTemporaryFile() as json_file:
31 java_script = os.path.join( 31 java_script = os.path.join(constants.GetOutDirectory(), 'bin', 'helper',
32 constants.GetOutDirectory(), 'bin', 'helper', 32 self._test_instance.suite)
33 self._test_instance.suite)
34 command = [java_script] 33 command = [java_script]
35 34
36 # Add Jar arguments. 35 # Add Jar arguments.
37 jar_args = ['-test-jars', self._test_instance.suite + '.jar', 36 jar_args = ['-test-jars', self._test_instance.suite + '.jar',
38 '-json-results-file', json_file.name] 37 '-json-results-file', json_file.name]
39 if self._test_instance.test_filter: 38 if self._test_instance.test_filter:
40 jar_args.extend(['-gtest-filter', self._test_instance.test_filter]) 39 jar_args.extend(['-gtest-filter', self._test_instance.test_filter])
41 if self._test_instance.package_filter: 40 if self._test_instance.package_filter:
42 jar_args.extend(['-package-filter', 41 jar_args.extend(['-package-filter',
43 self._test_instance.package_filter]) 42 self._test_instance.package_filter])
44 if self._test_instance.runner_filter: 43 if self._test_instance.runner_filter:
45 jar_args.extend(['-runner-filter', self._test_instance.runner_filter]) 44 jar_args.extend(['-runner-filter', self._test_instance.runner_filter])
46 command.extend(['--jar-args', '"%s"' % ' '.join(jar_args)]) 45 command.extend(['--jar-args', '"%s"' % ' '.join(jar_args)])
47 46
48 # Add JVM arguments. 47 # Add JVM arguments.
49 jvm_args = [] 48 jvm_args = []
50 # TODO(mikecase): Add a --robolectric-dep-dir arg to test runner. 49 # TODO(mikecase): Add a --robolectric-dep-dir arg to test runner.
51 # Have this arg set by GN in the generated test runner scripts. 50 # Have this arg set by GN in the generated test runner scripts.
52 jvm_args += [ 51 jvm_args += [
53 '-Drobolectric.dependency.dir=%s' % 52 '-Drobolectric.dependency.dir=%s' % os.path.join(
54 os.path.join(constants.GetOutDirectory(), 53 constants.GetOutDirectory(), 'lib.java', 'third_party',
55 'lib.java', 'third_party', 'robolectric')] 54 'robolectric'),
55 '-Ddir.source.root=%s' % constants.DIR_SOURCE_ROOT,
56 ]
56 if self._test_instance.coverage_dir: 57 if self._test_instance.coverage_dir:
57 if not os.path.exists(self._test_instance.coverage_dir): 58 if not os.path.exists(self._test_instance.coverage_dir):
58 os.makedirs(self._test_instance.coverage_dir) 59 os.makedirs(self._test_instance.coverage_dir)
59 elif not os.path.isdir(self._test_instance.coverage_dir): 60 elif not os.path.isdir(self._test_instance.coverage_dir):
60 raise Exception('--coverage-dir takes a directory, not file path.') 61 raise Exception('--coverage-dir takes a directory, not file path.')
61 jvm_args.append('-Demma.coverage.out.file=%s' % os.path.join( 62 jvm_args.append('-Demma.coverage.out.file=%s' % os.path.join(
62 self._test_instance.coverage_dir, 63 self._test_instance.coverage_dir,
63 '%s.ec' % self._test_instance.suite)) 64 '%s.ec' % self._test_instance.suite))
64 if jvm_args: 65 if jvm_args:
65 command.extend(['--jvm-args', '"%s"' % ' '.join(jvm_args)]) 66 command.extend(['--jvm-args', '"%s"' % ' '.join(jvm_args)])
66 67
67 cmd_helper.RunCmd(command) 68 cmd_helper.RunCmd(command)
68 results_list = json_results.ParseResultsFromJson( 69 results_list = json_results.ParseResultsFromJson(
69 json.loads(json_file.read())) 70 json.loads(json_file.read()))
70 71
71 test_run_results = base_test_result.TestRunResults() 72 test_run_results = base_test_result.TestRunResults()
72 test_run_results.AddResults(results_list) 73 test_run_results.AddResults(results_list)
73 74
74 return [test_run_results] 75 return [test_run_results]
75 76
76 #override 77 #override
77 def TearDown(self): 78 def TearDown(self):
78 pass 79 pass
OLDNEW
« no previous file with comments | « no previous file | testing/android/junit/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698