Chromium Code Reviews| Index: testing/buildbot/manage.py |
| diff --git a/testing/buildbot/manage.py b/testing/buildbot/manage.py |
| index a840e18a8e053e828f28f1b9ff77abaa4674505d..e230816abdb075503a720ac00c52bd159a735340 100755 |
| --- a/testing/buildbot/manage.py |
| +++ b/testing/buildbot/manage.py |
| @@ -132,28 +132,14 @@ SKIP = { |
| SKIP_GN_ISOLATE_MAP_TARGETS = { |
| - # TODO(GYP): These targets have not been ported to GN yet. |
| - 'android_webview_unittests', |
| - 'angle_deqp_gles2_tests', |
| - 'angle_deqp_gles3_tests', |
| - 'cast_media_unittests', |
| - 'cast_shell_browser_test', |
| - 'chromevox_tests', |
| - 'nacl_helper_nonsfi_unittests', |
| - |
| - # TODO(kbr): teach this script about isolated_scripts tests. |
| - # crbug.com/620531 |
| - 'telemetry_gpu_integration_test', |
| - 'telemetry_gpu_test', |
| - 'telemetry_gpu_unittests', |
| - 'telemetry_perf_tests', |
| - 'telemetry_perf_unittests', |
| - 'telemetry_unittests', |
| + 'all', |
| + 'chromium_swarm_tests', |
| # These tests are only run on WebRTC CI. |
| 'audio_decoder_unittests', |
| 'common_audio_unittests', |
| 'common_video_unittests', |
| + 'frame_analyzer', |
| 'modules_tests', |
| 'modules_unittests', |
| 'peerconnection_unittests', |
| @@ -233,23 +219,36 @@ def process_file(mode, test_name, tests_location, filepath, ninja_targets, |
| continue |
| if not isinstance(data, dict): |
| raise Error('%s: %s is broken: %s' % (filename, builder, data)) |
| - if 'gtest_tests' not in data: |
| + if ('gtest_tests' not in data and |
| + 'isolated_scripts' not in data and |
| + 'additional_compile_targets' not in data): |
| continue |
| - if not isinstance(data['gtest_tests'], list): |
| + |
| + for target in data.get('additional_compile_targets', []): |
| + if (target not in ninja_targets and |
| + target not in SKIP_GN_ISOLATE_MAP_TARGETS): |
| + raise Error('%s: %s / %s is not listed in gn_isolate_map.pyl' % |
| + (filename, builder, target)) |
| + elif target in ninja_targets: |
| + ninja_targets_seen.add(target) |
| + |
| + gtest_tests = data.get('gtest_tests', []) |
| + if not isinstance(gtest_tests, list): |
| raise Error( |
| - '%s: %s is broken: %s' % (filename, builder, data['gtest_tests'])) |
| - if not all(isinstance(g, dict) for g in data['gtest_tests']): |
| + '%s: %s is broken: %s' % (filename, builder, gtest_tests)) |
| + if not all(isinstance(g, dict) for g in gtest_tests): |
| raise Error( |
| - '%s: %s is broken: %s' % (filename, builder, data['gtest_tests'])) |
| + '%s: %s is broken: %s' % (filename, builder, gtest_tests)) |
| seen = set() |
| - for d in data['gtest_tests']: |
| - if (d['test'] not in ninja_targets and |
| - d['test'] not in SKIP_GN_ISOLATE_MAP_TARGETS): |
| + for d in gtest_tests: |
| + test = d['test'] |
| + if (test not in ninja_targets and |
| + test not in SKIP_GN_ISOLATE_MAP_TARGETS): |
| raise Error('%s: %s / %s is not listed in gn_isolate_map.pyl.' % |
| - (filename, builder, d['test'])) |
| - elif d['test'] in ninja_targets: |
| - ninja_targets_seen.add(d['test']) |
| + (filename, builder, test)) |
| + elif test in ninja_targets: |
| + ninja_targets_seen.add(test) |
| name = d.get('name', d['test']) |
| if name in seen: |
| @@ -259,8 +258,18 @@ def process_file(mode, test_name, tests_location, filepath, ninja_targets, |
| d.setdefault('swarming', {}).setdefault( |
| 'can_use_on_swarming_builders', False) |
| - config[builder]['gtest_tests'] = sorted( |
| - data['gtest_tests'], key=lambda x: x['test']) |
| + if gtest_tests: |
| + config[builder]['gtest_tests'] = sorted( |
| + gtest_tests, key=lambda x: x['test']) |
| + |
| + for d in data.get('isolated_scripts', []): |
| + name = d['isolate_name'] |
|
Dirk Pranke
2016/09/16 01:36:44
@kbr - it seems like maybe for isolate_scripts I s
Ken Russell (switch to Gerrit)
2016/09/16 18:13:31
From examining src/testing/buildbot/chromium.gpu.j
|
| + if (name not in ninja_targets and |
| + name not in SKIP_GN_ISOLATE_MAP_TARGETS): |
| + raise Error('%s: %s / %s is not listed in gn_isolate_map.pyl.' % |
| + (filename, builder, name)) |
| + elif name in ninja_targets: |
| + ninja_targets_seen.add(name) |
| # The trick here is that process_builder_remaining() is called before |
| # process_builder_convert() so tests_location can be used to know how many |