Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 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 """API for the bisect recipe module. | 5 """API for the bisect recipe module. |
| 6 | 6 |
| 7 This API is meant to enable the bisect recipe to bisect any chromium-supported | 7 This API is meant to enable the bisect recipe to bisect any chromium-supported |
| 8 platform for any test that can be run via buildbot, perf or otherwise. | 8 platform for any test that can be run via buildbot, perf or otherwise. |
| 9 """ | 9 """ |
| 10 | 10 |
| (...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 124 self.m.path['checkout'].join('tools', 'run-bisect-perf-regression.py'), | 124 self.m.path['checkout'].join('tools', 'run-bisect-perf-regression.py'), |
| 125 ['-w', self.m.path['slave_build']] + args, | 125 ['-w', self.m.path['slave_build']] + args, |
| 126 name='Running Bisection', | 126 name='Running Bisection', |
| 127 xvfb=True, **kwargs) | 127 xvfb=True, **kwargs) |
| 128 | 128 |
| 129 def run_local_test_run(self, api, test_config_params): # pragma: no cover | 129 def run_local_test_run(self, api, test_config_params): # pragma: no cover |
| 130 mastername = api.properties.get('mastername') | 130 mastername = api.properties.get('mastername') |
| 131 buildername = api.properties.get('buildername') | 131 buildername = api.properties.get('buildername') |
| 132 api.chromium_tests.configure_build(mastername, buildername) | 132 api.chromium_tests.configure_build(mastername, buildername) |
| 133 api.gclient.apply_config('perf') | 133 api.gclient.apply_config('perf') |
| 134 update_step, master_dict, _ = \ | 134 update_step, master_dicts, _ = \ |
| 135 api.chromium_tests.prepare_checkout( | 135 api.chromium_tests.prepare_checkout( |
| 136 mastername, buildername, | 136 mastername, buildername, |
| 137 root_solution_revision=test_config_params['revision']) | 137 root_solution_revision=test_config_params['revision']) |
| 138 self.start_test_run_for_bisect(api, update_step, master_dict, | 138 self.start_test_run_for_bisect(api, update_step, master_dicts[0], |
|
luqui
2016/01/05 23:02:35
This [0] is suspicious. Is it clear during constr
Ken Russell (switch to Gerrit)
2016/01/06 00:38:24
No, I didn't do a good job documenting the return
Sergey Berezin
2016/01/06 01:50:56
I suspect that bisect would only run waterfall bui
| |
| 139 test_config_params, run_locally=True) | 139 test_config_params, run_locally=True) |
| 140 | 140 |
| 141 def start_test_run_for_bisect(self, api, update_step, master_dict, | 141 def start_test_run_for_bisect(self, api, update_step, master_dict, |
| 142 test_config_params, run_locally=False): | 142 test_config_params, run_locally=False): |
| 143 mastername = api.properties.get('mastername') | 143 mastername = api.properties.get('mastername') |
| 144 buildername = api.properties.get('buildername') | 144 buildername = api.properties.get('buildername') |
| 145 bot_config = master_dict.get('builders', {}).get(buildername) | 145 bot_config = master_dict.get('builders', {}).get(buildername) |
| 146 if not run_locally: | 146 if not run_locally: |
| 147 api.bisect_tester.upload_job_url() | 147 api.bisect_tester.upload_job_url() |
| 148 if api.chromium.c.TARGET_PLATFORM == 'android': | 148 if api.chromium.c.TARGET_PLATFORM == 'android': |
| (...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 234 api.properties) | 234 api.properties) |
| 235 else: | 235 else: |
| 236 self.m.perf_try.start_perf_try_job( | 236 self.m.perf_try.start_perf_try_job( |
| 237 affected_files, update_step, master_dict) | 237 affected_files, update_step, master_dict) |
| 238 finally: | 238 finally: |
| 239 # Avoid duplication of device setup steps for bisect recipe tester, which | 239 # Avoid duplication of device setup steps for bisect recipe tester, which |
| 240 # are run while running tests in chromium_tests.wrap_chromium_tests. | 240 # are run while running tests in chromium_tests.wrap_chromium_tests. |
| 241 if (api.properties.get('bisect_config') is None and | 241 if (api.properties.get('bisect_config') is None and |
| 242 api.chromium.c.TARGET_PLATFORM == 'android'): | 242 api.chromium.c.TARGET_PLATFORM == 'android'): |
| 243 api.chromium_android.common_tests_final_steps() | 243 api.chromium_android.common_tests_final_steps() |
| OLD | NEW |