Pin Chrome's shortcut to the Win10 Start menu on install and OS upgrade.
[chromium-blink-merge.git] / build / android / pylib / junit / test_runner.py
bloba6d3bf9c92e9175df4512d98e33ac7a6142ca706
1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5 import json
6 import os
7 import tempfile
9 from pylib import cmd_helper
10 from pylib import constants
11 from pylib.base import base_test_result
12 from pylib.results import json_results
14 class JavaTestRunner(object):
15 """Runs java tests on the host."""
17 def __init__(self, args):
18 self._package_filter = args.package_filter
19 self._runner_filter = args.runner_filter
20 self._sdk_version = args.sdk_version
21 self._test_filter = args.test_filter
22 self._test_suite = args.test_suite
24 def SetUp(self):
25 pass
27 def RunTest(self, _test):
28 """Runs junit tests from |self._test_suite|."""
29 with tempfile.NamedTemporaryFile() as json_file:
30 java_script = os.path.join(
31 constants.GetOutDirectory(), 'bin', self._test_suite)
32 command = [java_script,
33 '-test-jars', self._test_suite + '.jar',
34 '-json-results-file', json_file.name]
35 if self._test_filter:
36 command.extend(['-gtest-filter', self._test_filter])
37 if self._package_filter:
38 command.extend(['-package-filter', self._package_filter])
39 if self._runner_filter:
40 command.extend(['-runner-filter', self._runner_filter])
41 if self._sdk_version:
42 command.extend(['-sdk-version', self._sdk_version])
43 return_code = cmd_helper.RunCmd(command)
44 results_list = json_results.ParseResultsFromJson(
45 json.loads(json_file.read()))
46 return (results_list, return_code)
48 def TearDown(self):
49 pass