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 | 6 |
7 DEPS = [ | 7 DEPS = [ |
8 'bot_update', | 8 'bot_update', |
9 'chromium', | 9 'chromium', |
10 'chromium_android', | 10 'chromium_android', |
(...skipping 815 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
826 ], | 826 ], |
827 }) | 827 }) |
828 ) + | 828 ) + |
829 suppress_analyze() | 829 suppress_analyze() |
830 ) | 830 ) |
831 | 831 |
832 yield ( | 832 yield ( |
833 api.test('no_compile_because_of_analyze') + | 833 api.test('no_compile_because_of_analyze') + |
834 props(buildername='linux_chromium_rel_ng') + | 834 props(buildername='linux_chromium_rel_ng') + |
835 api.platform.name('linux') + | 835 api.platform.name('linux') + |
836 api.override_step_data('read test spec', api.json.output({ | 836 api.override_step_data('read test spec', api.json.output({})) |
837 }) | |
838 ) | |
839 ) | 837 ) |
840 | 838 |
841 # Verifies analyze skips projects other than src. | 839 # Verifies analyze skips projects other than src. |
842 yield ( | 840 yield ( |
843 api.test('dont_analyze_for_non_src_project') + | 841 api.test('dont_analyze_for_non_src_project') + |
844 props(buildername='linux_chromium_rel_ng') + | 842 props(buildername='linux_chromium_rel_ng') + |
845 props(patch_project='blink') + | 843 props(patch_project='blink') + |
846 api.platform.name('linux') + | 844 api.platform.name('linux') + |
847 api.override_step_data('read test spec', api.json.output({ | 845 api.override_step_data('read test spec', api.json.output({})) |
848 }) | |
849 ) | |
850 ) | 846 ) |
851 | 847 |
852 # This should result in a compile. | 848 # This should result in a compile. |
853 yield ( | 849 yield ( |
854 api.test('compile_because_of_analyze_matching_exclusion') + | 850 api.test('compile_because_of_analyze_matching_exclusion') + |
855 props(buildername='linux_chromium_rel_ng') + | 851 props(buildername='linux_chromium_rel_ng') + |
856 api.platform.name('linux') + | 852 api.platform.name('linux') + |
857 api.override_step_data('read test spec', api.json.output({})) + | 853 api.override_step_data('read test spec', api.json.output({})) + |
858 suppress_analyze() | 854 suppress_analyze() |
859 ) | 855 ) |
860 | 856 |
861 # This should result in a compile. | 857 # This should result in a compile. |
862 yield ( | 858 yield ( |
863 api.test('compile_because_of_analyze') + | 859 api.test('compile_because_of_analyze') + |
864 props(buildername='linux_chromium_rel_ng') + | 860 props(buildername='linux_chromium_rel_ng') + |
865 api.platform.name('linux') + | 861 api.platform.name('linux') + |
866 api.override_step_data('read test spec', api.json.output({ | 862 api.override_step_data('read test spec', api.json.output({})) + |
867 }) | |
868 ) + | |
869 api.override_step_data( | 863 api.override_step_data( |
870 'analyze', | 864 'analyze', |
871 api.json.output({'status': 'Found dependency', 'targets': [], | 865 api.json.output({'status': 'Found dependency', 'targets': [], |
872 'build_targets': []})) | 866 'build_targets': []})) |
873 ) | 867 ) |
874 | 868 |
875 yield ( | 869 yield ( |
876 api.test('compile_because_of_analyze_with_filtered_tests_no_builder') + | 870 api.test('compile_because_of_analyze_with_filtered_tests_no_builder') + |
877 props(buildername='linux_chromium_rel_ng') + | 871 props(buildername='linux_chromium_rel_ng') + |
878 api.platform.name('linux') + | 872 api.platform.name('linux') + |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1030 ) | 1024 ) |
1031 | 1025 |
1032 yield ( | 1026 yield ( |
1033 api.test('use_v8_patch_on_chromium_trybot') + | 1027 api.test('use_v8_patch_on_chromium_trybot') + |
1034 props(buildername='win_chromium_rel_ng', | 1028 props(buildername='win_chromium_rel_ng', |
1035 mastername='tryserver.chromium.win', | 1029 mastername='tryserver.chromium.win', |
1036 patch_project='v8') + | 1030 patch_project='v8') + |
1037 api.platform.name('win') | 1031 api.platform.name('win') |
1038 ) | 1032 ) |
1039 | 1033 |
| 1034 # Tests that we only run the gpu_unittests isolate if that's all |
| 1035 # that analyze said to rebuild. |
| 1036 all_hashes = api.gpu.dummy_swarm_hashes |
| 1037 angle_unittests_hash = {x: all_hashes[x] for x in ['gpu_unittests']} |
| 1038 yield ( |
| 1039 api.test('analyze_runs_only_gpu_unittests') + |
| 1040 api.properties.tryserver( |
| 1041 mastername='tryserver.chromium.win', |
| 1042 buildername='win_chromium_rel_ng', |
| 1043 swarm_hashes=angle_unittests_hash |
| 1044 ) + |
| 1045 api.platform.name('win') + |
| 1046 api.override_step_data('analyze', api.gpu.analyze_builds_gpu_unittests) |
| 1047 ) |
| 1048 |
| 1049 # Tests that we run nothing if analyze said we didn't have to run anything. |
| 1050 yield ( |
| 1051 api.test('analyze_runs_nothing') + |
| 1052 api.properties.tryserver( |
| 1053 mastername='tryserver.chromium.win', |
| 1054 buildername='win_chromium_rel_ng', |
| 1055 swarm_hashes={} |
| 1056 ) + |
| 1057 api.platform.name('win') + |
| 1058 api.override_step_data('analyze', api.gpu.analyze_builds_nothing) |
| 1059 ) |
| 1060 |
1040 def step_failure(mastername, buildername, steps, tryserver=False): | 1061 def step_failure(mastername, buildername, steps, tryserver=False): |
1041 props = api.properties.tryserver if tryserver else api.properties.generic | 1062 props = api.properties.tryserver if tryserver else api.properties.generic |
1042 return ( | 1063 return ( |
1043 api.test('%s_%s_fail_%s' % ( | 1064 api.test('%s_%s_fail_%s' % ( |
1044 _sanitize_nonalpha(mastername), | 1065 _sanitize_nonalpha(mastername), |
1045 _sanitize_nonalpha(buildername), | 1066 _sanitize_nonalpha(buildername), |
1046 '_'.join(_sanitize_nonalpha(step) for step in steps))) + | 1067 '_'.join(_sanitize_nonalpha(step) for step in steps))) + |
1047 props(mastername=mastername, buildername=buildername) + | 1068 props(mastername=mastername, buildername=buildername) + |
1048 suppress_analyze() + | 1069 suppress_analyze() + |
1049 reduce(lambda a, b: a + b, | 1070 reduce(lambda a, b: a + b, |
(...skipping 19 matching lines...) Expand all Loading... |
1069 tryserver=True) | 1090 tryserver=True) |
1070 yield step_failure(mastername='tryserver.chromium.linux', | 1091 yield step_failure(mastername='tryserver.chromium.linux', |
1071 buildername='android_clang_dbg_recipe', | 1092 buildername='android_clang_dbg_recipe', |
1072 steps=['check licenses (with patch)'], | 1093 steps=['check licenses (with patch)'], |
1073 tryserver=True) | 1094 tryserver=True) |
1074 yield step_failure(mastername='tryserver.chromium.linux', | 1095 yield step_failure(mastername='tryserver.chromium.linux', |
1075 buildername='android_clang_dbg_recipe', | 1096 buildername='android_clang_dbg_recipe', |
1076 steps=['check licenses (with patch)', | 1097 steps=['check licenses (with patch)', |
1077 'check licenses (without patch)'], | 1098 'check licenses (without patch)'], |
1078 tryserver=True) | 1099 tryserver=True) |
OLD | NEW |