| OLD | NEW |
| 1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 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 from infra.libs.infra_types import freeze | 5 from infra.libs.infra_types import freeze |
| 6 from slave import recipe_api | 6 from slave import recipe_api |
| 7 from slave.recipe_modules.webrtc import builders | 7 from slave.recipe_modules.webrtc import builders |
| 8 | 8 |
| 9 | 9 |
| 10 class WebRTCApi(recipe_api.RecipeApi): | 10 class WebRTCApi(recipe_api.RecipeApi): |
| (...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 314 if parallel: | 314 if parallel: |
| 315 test_executable = self.m.chromium.c.build_dir.join( | 315 test_executable = self.m.chromium.c.build_dir.join( |
| 316 self.m.chromium.c.build_config_fs, test) | 316 self.m.chromium.c.build_config_fs, test) |
| 317 args = [test_executable, '--'] + args | 317 args = [test_executable, '--'] + args |
| 318 test = self.m.path['checkout'].join('third_party', 'gtest-parallel', | 318 test = self.m.path['checkout'].join('third_party', 'gtest-parallel', |
| 319 'gtest-parallel') | 319 'gtest-parallel') |
| 320 python_mode = True | 320 python_mode = True |
| 321 annotate = None # The parallel script doesn't output gtest format. | 321 annotate = None # The parallel script doesn't output gtest format. |
| 322 flakiness_dash = False | 322 flakiness_dash = False |
| 323 | 323 |
| 324 # TODO(kjellander): Disable deadlock detection for all TSan builders | |
| 325 # except the one in the client.webrtc.fyi waterfall. Remove when | |
| 326 # webrtc:4106 is fixed. | |
| 327 if ('with deadlock detection' not in self.m.properties.get('buildername') | |
| 328 and self.m.chromium.c.gyp_env.GYP_DEFINES.get('tsan') == 1): | |
| 329 env['TSAN_OPTIONS'] = 'detect_deadlocks=0' | |
| 330 | |
| 331 self.m.chromium.runtest( | 324 self.m.chromium.runtest( |
| 332 test=test, args=args, name=name, annotate=annotate, xvfb=True, | 325 test=test, args=args, name=name, annotate=annotate, xvfb=True, |
| 333 flakiness_dash=flakiness_dash, python_mode=python_mode, | 326 flakiness_dash=flakiness_dash, python_mode=python_mode, |
| 334 test_type=test_type, env=env) | 327 test_type=test_type, env=env) |
| 335 | 328 |
| 336 def _adb_install_apk(self, apk_name): | 329 def _adb_install_apk(self, apk_name): |
| 337 """Installs an APK on an Android device. | 330 """Installs an APK on an Android device. |
| 338 | 331 |
| 339 We cannot use chromium_android.adb_install_apk since it will fail due to | 332 We cannot use chromium_android.adb_install_apk since it will fail due to |
| 340 the automatic path creation becomes invalid due to WebRTC's usage of | 333 the automatic path creation becomes invalid due to WebRTC's usage of |
| (...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 446 def clean_test_output(self): | 439 def clean_test_output(self): |
| 447 """Remove all test output in out/, since we have tests leaking files.""" | 440 """Remove all test output in out/, since we have tests leaking files.""" |
| 448 out_dir = self.m.path['checkout'].join('out') | 441 out_dir = self.m.path['checkout'].join('out') |
| 449 self.m.python('clean test output files', | 442 self.m.python('clean test output files', |
| 450 script=self.resource('cleanup_files.py'), | 443 script=self.resource('cleanup_files.py'), |
| 451 args=[out_dir], | 444 args=[out_dir], |
| 452 infra_step=True) | 445 infra_step=True) |
| 453 | 446 |
| 454 def virtual_webcam_check(self): | 447 def virtual_webcam_check(self): |
| 455 self.m.python('webcam_check', self.resource('ensure_webcam_is_running.py')) | 448 self.m.python('webcam_check', self.resource('ensure_webcam_is_running.py')) |
| OLD | NEW |