| OLD | NEW |
| 1 # | 1 # |
| 2 # Copyright 2015 Google Inc. | 2 # Copyright 2015 Google Inc. |
| 3 # | 3 # |
| 4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
| 5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
| 6 # | 6 # |
| 7 | 7 |
| 8 #!/usr/bin/env python | 8 #!/usr/bin/env python |
| 9 | 9 |
| 10 usage = ''' | 10 usage = ''' |
| (...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 159 blacklist.extend([ '2ndpic-8888', 'gm', '_', test]) | 159 blacklist.extend([ '2ndpic-8888', 'gm', '_', test]) |
| 160 blacklist.extend(['serialize-8888', 'gm', '_', test]) | 160 blacklist.extend(['serialize-8888', 'gm', '_', test]) |
| 161 | 161 |
| 162 # NexusPlayer runs out of memory running RAW codec tests | 162 # NexusPlayer runs out of memory running RAW codec tests |
| 163 if 'NexusPlayer' in bot: | 163 if 'NexusPlayer' in bot: |
| 164 r = ["arw", "cr2", "dng", "nef", "nrw", "orf", "raf", "rw2", "pef", "srw", | 164 r = ["arw", "cr2", "dng", "nef", "nrw", "orf", "raf", "rw2", "pef", "srw", |
| 165 "ARW", "CR2", "DNG", "NEF", "NRW", "ORF", "RAF", "RW2", "PEF", "SRW"] | 165 "ARW", "CR2", "DNG", "NEF", "NRW", "ORF", "RAF", "RW2", "PEF", "SRW"] |
| 166 for raw_ext in r: | 166 for raw_ext in r: |
| 167 blacklist.extend(('_ image _ .%s' % raw_ext).split(' ')) | 167 blacklist.extend(('_ image _ .%s' % raw_ext).split(' ')) |
| 168 | 168 |
| 169 if blacklist: | |
| 170 args.append('--blacklist') | |
| 171 args.extend(blacklist) | |
| 172 | |
| 173 match = [] | 169 match = [] |
| 174 if 'Valgrind' in bot: # skia:3021 | 170 if 'Valgrind' in bot: # skia:3021 |
| 175 match.append('~Threaded') | 171 match.append('~Threaded') |
| 176 | 172 |
| 177 if 'GalaxyS3' in bot: # skia:1699 | 173 if 'GalaxyS3' in bot: # skia:1699 |
| 178 match.append('~WritePixels') | 174 match.append('~WritePixels') |
| 179 | 175 |
| 180 if 'AndroidOne' in bot: # skia:4711 | 176 if 'AndroidOne' in bot: # skia:4711 |
| 181 match.append('~WritePixels') | 177 match.append('~WritePixels') |
| 182 | 178 |
| 183 if 'NexusPlayer' in bot: | 179 if 'NexusPlayer' in bot: |
| 184 match.append('~ResourceCache') | 180 match.append('~ResourceCache') |
| 185 | 181 |
| 186 if 'GalaxyS4' in bot: # skia:4079 | 182 if 'GalaxyS4' in bot: # skia:4079 |
| 187 match.append('~imagefiltersclipped') | 183 match.append('~imagefiltersclipped') |
| 188 match.append('~imagefilterscropexpand') | 184 match.append('~imagefilterscropexpand') |
| 189 match.append('~scaled_tilemodes_npot') | 185 match.append('~scaled_tilemodes_npot') |
| 190 match.append('~bleed_image') # skia:4367 | 186 match.append('~bleed_image') # skia:4367 |
| 191 match.append('~ReadPixels') # skia:4368 | 187 match.append('~ReadPixels') # skia:4368 |
| 192 | 188 |
| 193 if 'ANGLE' in bot and 'Debug' in bot: | 189 if 'ANGLE' in bot and 'Debug' in bot: |
| 194 match.append('~GLPrograms') # skia:4717 | 190 match.append('~GLPrograms') # skia:4717 |
| 195 | 191 |
| 192 # Hacking around trying to get the MSAN bot green. |
| 193 if 'MSAN' in bot: |
| 194 # S32A_Opaque_BlitRow32_SSE4's sk_msan_assert_initialized failing on .SRW. |
| 195 r = ["arw", "cr2", "dng", "nef", "nrw", "orf", "raf", "rw2", "pef", "srw", |
| 196 "ARW", "CR2", "DNG", "NEF", "NRW", "ORF", "RAF", "RW2", "PEF", "SRW"] |
| 197 for raw_ext in r: |
| 198 blacklist.extend(('_ image _ .%s' % raw_ext).split(' ')) |
| 199 |
| 200 blacklist.extend(('_ image _ .wbmp').split(' ')) # skia:4900 |
| 201 blacklist.extend(('_ image _ .png').split(' ')) # I8 .png color tables |
| 202 blacklist.extend(('_ image _ .bmp').split(' ')) # I8 .bmp color tables |
| 203 |
| 204 match.append('~Codec') # Uninitialzied memory used in PIEX. |
| 205 match.append('~BlurLargeImage') # Bug in the GM? |
| 206 match.append('~FontMgrAndroidParser') # expat currently uninstrumented. |
| 207 |
| 208 if blacklist: |
| 209 args.append('--blacklist') |
| 210 args.extend(blacklist) |
| 211 |
| 196 if match: | 212 if match: |
| 197 args.append('--match') | 213 args.append('--match') |
| 198 args.extend(match) | 214 args.extend(match) |
| 199 | 215 |
| 200 return args | 216 return args |
| 201 cov_end = lineno() # Don't care about code coverage past here. | 217 cov_end = lineno() # Don't care about code coverage past here. |
| 202 | 218 |
| 203 | 219 |
| 204 def self_test(): | 220 def self_test(): |
| 205 import coverage # This way the bots don't need coverage.py to be installed. | 221 import coverage # This way the bots don't need coverage.py to be installed. |
| 206 args = {} | 222 args = {} |
| 207 cases = [ | 223 cases = [ |
| 208 'Pretend-iOS-Bot', | 224 'Pretend-iOS-Bot', |
| 209 'Test-Android-GCC-AndroidOne-GPU-Mali400MP2-Arm7-Release', | 225 'Test-Android-GCC-AndroidOne-GPU-Mali400MP2-Arm7-Release', |
| 210 'Test-Android-GCC-Nexus9-GPU-TegraK1-Arm64-Debug', | 226 'Test-Android-GCC-Nexus9-GPU-TegraK1-Arm64-Debug', |
| 211 'Test-Android-GCC-GalaxyS3-GPU-Mali400-Arm7-Debug', | 227 'Test-Android-GCC-GalaxyS3-GPU-Mali400-Arm7-Debug', |
| 212 'Test-Android-GCC-GalaxyS4-GPU-SGX544-Arm7-Release', | 228 'Test-Android-GCC-GalaxyS4-GPU-SGX544-Arm7-Release', |
| 213 'Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release', | 229 'Test-Android-GCC-Nexus7-GPU-Tegra3-Arm7-Release', |
| 214 'Test-Android-GCC-NexusPlayer-CPU-SSSE3-x86-Release', | 230 'Test-Android-GCC-NexusPlayer-CPU-SSSE3-x86-Release', |
| 215 'Test-Ubuntu-GCC-ShuttleA-GPU-GTX550Ti-x86_64-Release-Valgrind', | 231 'Test-Ubuntu-GCC-ShuttleA-GPU-GTX550Ti-x86_64-Release-Valgrind', |
| 232 'Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Debug-MSAN', |
| 216 'Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN', | 233 'Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-TSAN', |
| 217 'Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Valgrind', | 234 'Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-Valgrind', |
| 218 'Test-Win7-MSVC-ShuttleA-GPU-HD2000-x86-Debug-ANGLE', | 235 'Test-Win7-MSVC-ShuttleA-GPU-HD2000-x86-Debug-ANGLE', |
| 219 'Test-Mac10.8-Clang-MacMini4.1-CPU-SSE4-x86_64-Release', | 236 'Test-Mac10.8-Clang-MacMini4.1-CPU-SSE4-x86_64-Release', |
| 220 ] | 237 ] |
| 221 | 238 |
| 222 cov = coverage.coverage() | 239 cov = coverage.coverage() |
| 223 cov.start() | 240 cov.start() |
| 224 for case in cases: | 241 for case in cases: |
| 225 args[case] = get_args(case) | 242 args[case] = get_args(case) |
| (...skipping 15 matching lines...) Expand all Loading... |
| 241 if len(sys.argv) == 2 and sys.argv[1] == 'test': | 258 if len(sys.argv) == 2 and sys.argv[1] == 'test': |
| 242 self_test() | 259 self_test() |
| 243 sys.exit(0) | 260 sys.exit(0) |
| 244 | 261 |
| 245 if len(sys.argv) != 3: | 262 if len(sys.argv) != 3: |
| 246 print usage | 263 print usage |
| 247 sys.exit(1) | 264 sys.exit(1) |
| 248 | 265 |
| 249 with open(sys.argv[1], 'w') as out: | 266 with open(sys.argv[1], 'w') as out: |
| 250 json.dump(get_args(sys.argv[2]), out) | 267 json.dump(get_args(sys.argv[2]), out) |
| OLD | NEW |