blob: 496d3c55b6f2a8a3db8716b7ad3778635592d81f [file] [log] [blame]
Jarkko Pöyryecfbb102015-04-03 11:14:49 -07001# -*- coding: utf-8 -*-
2
3#-------------------------------------------------------------------------
4# drawElements Quality Program utilities
5# --------------------------------------
6#
7# Copyright 2015 The Android Open Source Project
8#
9# Licensed under the Apache License, Version 2.0 (the "License");
10# you may not use this file except in compliance with the License.
11# You may obtain a copy of the License at
12#
13# http://www.apache.org/licenses/LICENSE-2.0
14#
15# Unless required by applicable law or agreed to in writing, software
16# distributed under the License is distributed on an "AS IS" BASIS,
17# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18# See the License for the specific language governing permissions and
19# limitations under the License.
20#
21#-------------------------------------------------------------------------
22
Pyry Haulos2bbb9d22016-01-14 13:48:08 -080023from build.common import DEQP_DIR
Jarkko Pöyryecfbb102015-04-03 11:14:49 -070024from build.config import ANY_GENERATOR
Pyry Haulos2bbb9d22016-01-14 13:48:08 -080025from build_caselists import Module, getModuleByName, getBuildConfig, DEFAULT_BUILD_DIR, DEFAULT_TARGET
Pyry Haulosadde8232017-01-26 16:36:18 -080026from mustpass import Project, Package, Mustpass, Configuration, include, exclude, genMustpassLists, parseBuildConfigFromCmdLineArgs
Jarkko Pöyryecfbb102015-04-03 11:14:49 -070027
Pyry Haulos2bbb9d22016-01-14 13:48:08 -080028import os
Kalle Raita64d9cc32015-10-12 16:18:15 -070029
30COPYRIGHT_DECLARATION = """
Mika Isojärvi56da1a62016-02-05 10:57:39 -080031 Copyright (C) 2016 The Android Open Source Project
Kalle Raita64d9cc32015-10-12 16:18:15 -070032
33 Licensed under the Apache License, Version 2.0 (the "License");
34 you may not use this file except in compliance with the License.
35 You may obtain a copy of the License at
36
37 http://www.apache.org/licenses/LICENSE-2.0
38
39 Unless required by applicable law or agreed to in writing, software
40 distributed under the License is distributed on an "AS IS" BASIS,
41 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
42 See the License for the specific language governing permissions and
43 limitations under the License.
44 """
45
Pyry Haulos2bbb9d22016-01-14 13:48:08 -080046CTS_DATA_DIR = os.path.join(DEQP_DIR, "android", "cts")
Jarkko Pöyryecfbb102015-04-03 11:14:49 -070047
Pyry Haulos2bbb9d22016-01-14 13:48:08 -080048CTS_PROJECT = Project(path = CTS_DATA_DIR, copyright = COPYRIGHT_DECLARATION)
Jarkko Pöyryecfbb102015-04-03 11:14:49 -070049
Pyry Haulos2bbb9d22016-01-14 13:48:08 -080050EGL_MODULE = getModuleByName("dEQP-EGL")
51GLES2_MODULE = getModuleByName("dEQP-GLES2")
52GLES3_MODULE = getModuleByName("dEQP-GLES3")
53GLES31_MODULE = getModuleByName("dEQP-GLES31")
54VULKAN_MODULE = getModuleByName("dEQP-VK")
Jarkko Pöyryecfbb102015-04-03 11:14:49 -070055
Pyry Haulosdcd1b912015-09-02 14:59:24 -070056# Lollipop
57
Pyry Haulos083b5992015-04-14 10:49:55 -070058LMP_GLES3_PKG = Package(module = GLES3_MODULE, configurations = [
Jarkko Pöyryecfbb102015-04-03 11:14:49 -070059 Configuration(name = "master",
60 glconfig = "rgba8888d24s8ms0",
61 rotation = "unspecified",
62 surfacetype = "window",
63 filters = [include("es30-lmp.txt")]),
64 ])
Pyry Haulos083b5992015-04-14 10:49:55 -070065LMP_GLES31_PKG = Package(module = GLES31_MODULE, configurations = [
Jarkko Pöyryecfbb102015-04-03 11:14:49 -070066 Configuration(name = "master",
67 glconfig = "rgba8888d24s8ms0",
68 rotation = "unspecified",
69 surfacetype = "window",
70 filters = [include("es31-lmp.txt")]),
71 ])
72
Pyry Haulosdcd1b912015-09-02 14:59:24 -070073# Lollipop MR1
74
Pyry Haulos083b5992015-04-14 10:49:55 -070075LMP_MR1_GLES3_PKG = Package(module = GLES3_MODULE, configurations = [
Jarkko Pöyryecfbb102015-04-03 11:14:49 -070076 Configuration(name = "master",
77 glconfig = "rgba8888d24s8ms0",
78 rotation = "unspecified",
79 surfacetype = "window",
80 filters = [include("es30-lmp-mr1.txt")]),
81 ])
Pyry Haulos083b5992015-04-14 10:49:55 -070082LMP_MR1_GLES31_PKG = Package(module = GLES31_MODULE, configurations = [
Jarkko Pöyryecfbb102015-04-03 11:14:49 -070083 Configuration(name = "master",
84 glconfig = "rgba8888d24s8ms0",
85 rotation = "unspecified",
86 surfacetype = "window",
87 filters = [include("es31-lmp-mr1.txt")]),
88 ])
89
Pyry Haulosdcd1b912015-09-02 14:59:24 -070090# Marshmallow
91
92MNC_EGL_PKG = Package(module = EGL_MODULE, configurations = [
93 # Master
94 Configuration(name = "master",
95 glconfig = "rgba8888d24s8ms0",
96 rotation = "unspecified",
97 surfacetype = "window",
98 filters = [include("egl-master.txt")]),
99 ])
100MNC_GLES2_PKG = Package(module = GLES2_MODULE, configurations = [
101 # Master
102 Configuration(name = "master",
103 glconfig = "rgba8888d24s8ms0",
104 rotation = "unspecified",
105 surfacetype = "window",
106 filters = [include("gles2-master.txt")]),
107 ])
108MNC_GLES3_PKG = Package(module = GLES3_MODULE, configurations = [
109 # Master
110 Configuration(name = "master",
111 glconfig = "rgba8888d24s8ms0",
112 rotation = "unspecified",
113 surfacetype = "window",
114 filters = [include("gles3-master.txt")]),
115 # Rotations
116 Configuration(name = "rotate-portrait",
117 glconfig = "rgba8888d24s8ms0",
118 rotation = "0",
119 surfacetype = "window",
120 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
121 Configuration(name = "rotate-landscape",
122 glconfig = "rgba8888d24s8ms0",
123 rotation = "90",
124 surfacetype = "window",
125 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
126 Configuration(name = "rotate-reverse-portrait",
127 glconfig = "rgba8888d24s8ms0",
128 rotation = "180",
129 surfacetype = "window",
130 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
131 Configuration(name = "rotate-reverse-landscape",
132 glconfig = "rgba8888d24s8ms0",
133 rotation = "270",
134 surfacetype = "window",
135 filters = [include("gles3-master.txt"), include("gles3-rotation.txt")]),
136
137 # MSAA
138 Configuration(name = "multisample",
139 glconfig = "rgba8888d24s8ms4",
140 rotation = "unspecified",
141 surfacetype = "window",
142 filters = [include("gles3-master.txt"),
143 include("gles3-multisample.txt"),
144 exclude("gles3-multisample-issues.txt")]),
145
146 # Pixel format
147 Configuration(name = "565-no-depth-no-stencil",
148 glconfig = "rgb565d0s0ms0",
149 rotation = "unspecified",
150 surfacetype = "window",
151 filters = [include("gles3-master.txt"),
152 include("gles3-pixelformat.txt"),
153 exclude("gles3-pixelformat-issues.txt")]),
154 ])
155MNC_GLES31_PKG = Package(module = GLES31_MODULE, configurations = [
156 # Master
157 Configuration(name = "master",
158 glconfig = "rgba8888d24s8ms0",
159 rotation = "unspecified",
160 surfacetype = "window",
161 filters = [include("gles31-master.txt")]),
162
163 # Rotations
164 Configuration(name = "rotate-portrait",
165 glconfig = "rgba8888d24s8ms0",
166 rotation = "0",
167 surfacetype = "window",
168 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
169 Configuration(name = "rotate-landscape",
170 glconfig = "rgba8888d24s8ms0",
171 rotation = "90",
172 surfacetype = "window",
173 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
174 Configuration(name = "rotate-reverse-portrait",
175 glconfig = "rgba8888d24s8ms0",
176 rotation = "180",
177 surfacetype = "window",
178 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
179 Configuration(name = "rotate-reverse-landscape",
180 glconfig = "rgba8888d24s8ms0",
181 rotation = "270",
182 surfacetype = "window",
183 filters = [include("gles31-master.txt"), include("gles31-rotation.txt")]),
184
185 # MSAA
186 Configuration(name = "multisample",
187 glconfig = "rgba8888d24s8ms4",
188 rotation = "unspecified",
189 surfacetype = "window",
190 filters = [include("gles31-master.txt"), include("gles31-multisample.txt")]),
191
192 # Pixel format
193 Configuration(name = "565-no-depth-no-stencil",
194 glconfig = "rgb565d0s0ms0",
195 rotation = "unspecified",
196 surfacetype = "window",
197 filters = [include("gles31-master.txt"), include("gles31-pixelformat.txt")]),
198 ])
199
Pyry Haulos9405fa62016-05-19 11:42:13 -0700200# NYC
201
202NYC_EGL_COMMON_FILTERS = [include("egl-master.txt")]
203NYC_EGL_PKG = Package(module = EGL_MODULE, configurations = [
204 # Master
205 Configuration(name = "master",
206 glconfig = "rgba8888d24s8ms0",
207 rotation = "unspecified",
208 surfacetype = "window",
209 filters = NYC_EGL_COMMON_FILTERS,
Kalle Raita37fdf462017-03-30 11:15:44 -0700210 runtime = "11m"),
Pyry Haulos9405fa62016-05-19 11:42:13 -0700211 ])
212
213NYC_GLES2_COMMON_FILTERS = [
214 include("gles2-master.txt")
215 ]
216NYC_GLES2_PKG = Package(module = GLES2_MODULE, configurations = [
217 # Master
218 Configuration(name = "master",
219 glconfig = "rgba8888d24s8ms0",
220 rotation = "unspecified",
221 surfacetype = "window",
222 filters = NYC_GLES2_COMMON_FILTERS,
Kalle Raita37fdf462017-03-30 11:15:44 -0700223 runtime = "30m"),
Pyry Haulos9405fa62016-05-19 11:42:13 -0700224 ])
225
226NYC_GLES3_COMMON_FILTERS = [
227 include("gles3-master.txt")
228 ]
229NYC_GLES3_PKG = Package(module = GLES3_MODULE, configurations = [
230 # Master
231 Configuration(name = "master",
232 glconfig = "rgba8888d24s8ms0",
233 rotation = "unspecified",
234 surfacetype = "window",
235 filters = NYC_GLES3_COMMON_FILTERS,
Kalle Raita37fdf462017-03-30 11:15:44 -0700236 runtime = "1h50min"),
Pyry Haulos9405fa62016-05-19 11:42:13 -0700237 # Rotations
238 Configuration(name = "rotate-portrait",
239 glconfig = "rgba8888d24s8ms0",
240 rotation = "0",
241 surfacetype = "window",
242 filters = NYC_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")],
Kalle Raita37fdf462017-03-30 11:15:44 -0700243 runtime = "5m"),
Pyry Haulos9405fa62016-05-19 11:42:13 -0700244 Configuration(name = "rotate-landscape",
245 glconfig = "rgba8888d24s8ms0",
246 rotation = "90",
247 surfacetype = "window",
248 filters = NYC_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")],
Kalle Raita37fdf462017-03-30 11:15:44 -0700249 runtime = "5m"),
Pyry Haulos9405fa62016-05-19 11:42:13 -0700250 Configuration(name = "rotate-reverse-portrait",
251 glconfig = "rgba8888d24s8ms0",
252 rotation = "180",
253 surfacetype = "window",
254 filters = NYC_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")],
Kalle Raita37fdf462017-03-30 11:15:44 -0700255 runtime = "5m"),
Pyry Haulos9405fa62016-05-19 11:42:13 -0700256 Configuration(name = "rotate-reverse-landscape",
257 glconfig = "rgba8888d24s8ms0",
258 rotation = "270",
259 surfacetype = "window",
260 filters = NYC_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")],
Kalle Raita37fdf462017-03-30 11:15:44 -0700261 runtime = "5m"),
Pyry Haulos9405fa62016-05-19 11:42:13 -0700262
263 # MSAA
264 Configuration(name = "multisample",
265 glconfig = "rgba8888d24s8ms4",
266 rotation = "unspecified",
267 surfacetype = "window",
268 filters = NYC_GLES3_COMMON_FILTERS + [include("gles3-multisample.txt")],
269 runtime = "10m"),
270
271 # Pixel format
272 Configuration(name = "565-no-depth-no-stencil",
273 glconfig = "rgb565d0s0ms0",
274 rotation = "unspecified",
275 surfacetype = "window",
276 filters = NYC_GLES3_COMMON_FILTERS + [include("gles3-pixelformat.txt")],
277 runtime = "10m"),
278 ])
279
280NYC_GLES31_COMMON_FILTERS = [
281 include("gles31-master.txt")
282 ]
283NYC_GLES31_PKG = Package(module = GLES31_MODULE, configurations = [
284 # Master
285 Configuration(name = "master",
286 glconfig = "rgba8888d24s8ms0",
287 rotation = "unspecified",
288 surfacetype = "window",
289 filters = NYC_GLES31_COMMON_FILTERS,
Kalle Raita37fdf462017-03-30 11:15:44 -0700290 runtime = "4h40m"),
Pyry Haulos9405fa62016-05-19 11:42:13 -0700291
292 # Rotations
293 Configuration(name = "rotate-portrait",
294 glconfig = "rgba8888d24s8ms0",
295 rotation = "0",
296 surfacetype = "window",
297 filters = NYC_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")],
298 runtime = "1m30s"),
299 Configuration(name = "rotate-landscape",
300 glconfig = "rgba8888d24s8ms0",
301 rotation = "90",
302 surfacetype = "window",
303 filters = NYC_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")],
304 runtime = "1m30s"),
305 Configuration(name = "rotate-reverse-portrait",
306 glconfig = "rgba8888d24s8ms0",
307 rotation = "180",
308 surfacetype = "window",
309 filters = NYC_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")],
310 runtime = "1m30s"),
311 Configuration(name = "rotate-reverse-landscape",
312 glconfig = "rgba8888d24s8ms0",
313 rotation = "270",
314 surfacetype = "window",
315 filters = NYC_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")],
316 runtime = "1m30s"),
317
318 # MSAA
319 Configuration(name = "multisample",
320 glconfig = "rgba8888d24s8ms4",
321 rotation = "unspecified",
322 surfacetype = "window",
323 filters = NYC_GLES31_COMMON_FILTERS + [include("gles31-multisample.txt")],
324 runtime = "2m"),
325
326 # Pixel format
327 Configuration(name = "565-no-depth-no-stencil",
328 glconfig = "rgb565d0s0ms0",
329 rotation = "unspecified",
330 surfacetype = "window",
331 filters = NYC_GLES31_COMMON_FILTERS + [include("gles31-pixelformat.txt")],
332 runtime = "1m"),
333 ])
334
335NYC_VULKAN_FILTERS = [
336 include("vk-master.txt")
337 ]
338NYC_VULKAN_PKG = Package(module = VULKAN_MODULE, configurations = [
339 Configuration(name = "master",
340 filters = NYC_VULKAN_FILTERS,
Kalle Raita37fdf462017-03-30 11:15:44 -0700341 runtime = "1h11m"),
Pyry Haulos9405fa62016-05-19 11:42:13 -0700342 ])
343
Pyry Haulosdcd1b912015-09-02 14:59:24 -0700344# Master
345
Mika Isojärvid767ee42016-02-03 10:43:20 -0800346MASTER_EGL_COMMON_FILTERS = [include("egl-master.txt"),
347 exclude("egl-test-issues.txt"),
John Richardson83c250d2017-02-01 15:00:53 +0000348 exclude("egl-internal-api-tests.txt"),
Pyry Haulos22eb25c2017-06-13 14:08:33 -0700349 exclude("egl-manual-robustness.txt"),
350 exclude("egl-driver-issues.txt")]
Pyry Haulos083b5992015-04-14 10:49:55 -0700351MASTER_EGL_PKG = Package(module = EGL_MODULE, configurations = [
352 # Master
353 Configuration(name = "master",
354 glconfig = "rgba8888d24s8ms0",
355 rotation = "unspecified",
356 surfacetype = "window",
Pyry Haulose232a6e2016-08-23 15:37:44 -0700357 required = True,
Kalle Raita25196612016-04-04 17:09:44 -0700358 filters = MASTER_EGL_COMMON_FILTERS,
Kalle Raita37fdf462017-03-30 11:15:44 -0700359 runtime = "23m"),
Pyry Haulos083b5992015-04-14 10:49:55 -0700360 ])
361
Jarkko Pöyryd1554a92015-06-08 12:25:35 -0700362MASTER_GLES2_COMMON_FILTERS = [
363 include("gles2-master.txt"),
364 exclude("gles2-test-issues.txt"),
Chris Forbesb188ac02018-02-27 11:49:03 -0800365 exclude("gles2-failures.txt"),
366 exclude("gles2-temp-excluded.txt"),
Jarkko Pöyryd1554a92015-06-08 12:25:35 -0700367 ]
Pyry Haulos083b5992015-04-14 10:49:55 -0700368MASTER_GLES2_PKG = Package(module = GLES2_MODULE, configurations = [
369 # Master
370 Configuration(name = "master",
371 glconfig = "rgba8888d24s8ms0",
372 rotation = "unspecified",
373 surfacetype = "window",
Pyry Haulose232a6e2016-08-23 15:37:44 -0700374 required = True,
Kalle Raita25196612016-04-04 17:09:44 -0700375 filters = MASTER_GLES2_COMMON_FILTERS,
Kalle Raita37fdf462017-03-30 11:15:44 -0700376 runtime = "46m"),
Chris Forbesbc1ea392018-03-13 16:59:45 -0700377 # Risky subset
378 Configuration(name = "master-risky",
379 glconfig = "rgba8888d24s8ms0",
380 rotation = "unspecified",
381 surfacetype = "window",
382 filters = [include("gles2-temp-excluded.txt")],
383 runtime = "10m"),
Pyry Haulos083b5992015-04-14 10:49:55 -0700384 ])
385
Pyry Haulos3d3ce452015-04-17 09:56:27 -0700386MASTER_GLES3_COMMON_FILTERS = [
387 include("gles3-master.txt"),
388 exclude("gles3-hw-issues.txt"),
Mika Isojärvi27f6f9f2015-06-01 12:49:49 -0700389 exclude("gles3-driver-issues.txt"),
Pyry Haulos3d3ce452015-04-17 09:56:27 -0700390 exclude("gles3-test-issues.txt"),
Chris Forbesb188ac02018-02-27 11:49:03 -0800391 exclude("gles3-spec-issues.txt"),
392 exclude("gles3-temp-excluded.txt"),
Pyry Haulos3d3ce452015-04-17 09:56:27 -0700393 ]
Pyry Haulos4223d192015-04-14 10:05:11 -0700394MASTER_GLES3_PKG = Package(module = GLES3_MODULE, configurations = [
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700395 # Master
396 Configuration(name = "master",
397 glconfig = "rgba8888d24s8ms0",
398 rotation = "unspecified",
399 surfacetype = "window",
Pyry Haulose232a6e2016-08-23 15:37:44 -0700400 required = True,
Kalle Raita25196612016-04-04 17:09:44 -0700401 filters = MASTER_GLES3_COMMON_FILTERS,
Kalle Raita37fdf462017-03-30 11:15:44 -0700402 runtime = "1h50m"),
Chris Forbesbc1ea392018-03-13 16:59:45 -0700403 # Risky subset
404 Configuration(name = "master-risky",
405 glconfig = "rgba8888d24s8ms0",
406 rotation = "unspecified",
407 surfacetype = "window",
408 filters = [include("gles3-temp-excluded.txt")],
409 runtime = "10m"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700410 # Rotations
411 Configuration(name = "rotate-portrait",
412 glconfig = "rgba8888d24s8ms0",
413 rotation = "0",
414 surfacetype = "window",
Kalle Raita25196612016-04-04 17:09:44 -0700415 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")],
Kalle Raita37fdf462017-03-30 11:15:44 -0700416 runtime = "1m"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700417 Configuration(name = "rotate-landscape",
418 glconfig = "rgba8888d24s8ms0",
419 rotation = "90",
420 surfacetype = "window",
Kalle Raita25196612016-04-04 17:09:44 -0700421 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")],
Kalle Raita37fdf462017-03-30 11:15:44 -0700422 runtime = "1m"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700423 Configuration(name = "rotate-reverse-portrait",
424 glconfig = "rgba8888d24s8ms0",
425 rotation = "180",
426 surfacetype = "window",
Kalle Raita25196612016-04-04 17:09:44 -0700427 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")],
Kalle Raita37fdf462017-03-30 11:15:44 -0700428 runtime = "1m"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700429 Configuration(name = "rotate-reverse-landscape",
430 glconfig = "rgba8888d24s8ms0",
431 rotation = "270",
432 surfacetype = "window",
Kalle Raita25196612016-04-04 17:09:44 -0700433 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-rotation.txt")],
Kalle Raita37fdf462017-03-30 11:15:44 -0700434 runtime = "1m"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700435
436 # MSAA
437 Configuration(name = "multisample",
438 glconfig = "rgba8888d24s8ms4",
439 rotation = "unspecified",
440 surfacetype = "window",
Kalle Raita48124f12015-08-07 14:17:40 -0700441 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-multisample.txt"),
Kalle Raita25196612016-04-04 17:09:44 -0700442 exclude("gles3-multisample-issues.txt")],
Kalle Raita37fdf462017-03-30 11:15:44 -0700443 runtime = "1m"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700444
445 # Pixel format
446 Configuration(name = "565-no-depth-no-stencil",
447 glconfig = "rgb565d0s0ms0",
448 rotation = "unspecified",
449 surfacetype = "window",
Mika Isojärvifcb31b82015-08-17 12:50:00 -0700450 filters = MASTER_GLES3_COMMON_FILTERS + [include("gles3-pixelformat.txt"),
Kalle Raita25196612016-04-04 17:09:44 -0700451 exclude("gles3-pixelformat-issues.txt")],
Kalle Raita37fdf462017-03-30 11:15:44 -0700452 runtime = "1m"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700453 ])
454
Pyry Haulos3d3ce452015-04-17 09:56:27 -0700455MASTER_GLES31_COMMON_FILTERS = [
456 include("gles31-master.txt"),
457 exclude("gles31-hw-issues.txt"),
Pyry Haulos4ce5f632015-07-22 15:41:56 -0700458 exclude("gles31-driver-issues.txt"),
Pyry Haulos3d3ce452015-04-17 09:56:27 -0700459 exclude("gles31-test-issues.txt"),
Pyry Haulos8d1ff9b2017-04-18 12:27:58 -0700460 exclude("gles31-spec-issues.txt"),
Chris Forbesb188ac02018-02-27 11:49:03 -0800461 exclude("gles31-temp-excluded.txt"),
Pyry Haulos3d3ce452015-04-17 09:56:27 -0700462 ]
Pyry Haulos4223d192015-04-14 10:05:11 -0700463MASTER_GLES31_PKG = Package(module = GLES31_MODULE, configurations = [
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700464 # Master
465 Configuration(name = "master",
466 glconfig = "rgba8888d24s8ms0",
467 rotation = "unspecified",
468 surfacetype = "window",
Pyry Haulose232a6e2016-08-23 15:37:44 -0700469 required = True,
Kalle Raita25196612016-04-04 17:09:44 -0700470 filters = MASTER_GLES31_COMMON_FILTERS,
Kalle Raita37fdf462017-03-30 11:15:44 -0700471 runtime = "1h40m"),
Chris Forbesbc1ea392018-03-13 16:59:45 -0700472 # Risky subset
473 Configuration(name = "master-risky",
474 glconfig = "rgba8888d24s8ms0",
475 rotation = "unspecified",
476 surfacetype = "window",
477 filters = [include("gles31-temp-excluded.txt")],
478 runtime = "10m"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700479
480 # Rotations
481 Configuration(name = "rotate-portrait",
482 glconfig = "rgba8888d24s8ms0",
483 rotation = "0",
484 surfacetype = "window",
Kalle Raita25196612016-04-04 17:09:44 -0700485 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")],
486 runtime = "1m30s"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700487 Configuration(name = "rotate-landscape",
488 glconfig = "rgba8888d24s8ms0",
489 rotation = "90",
490 surfacetype = "window",
Kalle Raita25196612016-04-04 17:09:44 -0700491 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")],
492 runtime = "1m30s"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700493 Configuration(name = "rotate-reverse-portrait",
494 glconfig = "rgba8888d24s8ms0",
495 rotation = "180",
496 surfacetype = "window",
Kalle Raita25196612016-04-04 17:09:44 -0700497 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")],
498 runtime = "1m30s"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700499 Configuration(name = "rotate-reverse-landscape",
500 glconfig = "rgba8888d24s8ms0",
501 rotation = "270",
502 surfacetype = "window",
Kalle Raita25196612016-04-04 17:09:44 -0700503 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-rotation.txt")],
504 runtime = "1m30s"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700505
506 # MSAA
507 Configuration(name = "multisample",
508 glconfig = "rgba8888d24s8ms4",
509 rotation = "unspecified",
510 surfacetype = "window",
Kalle Raita25196612016-04-04 17:09:44 -0700511 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-multisample.txt")],
512 runtime = "2m"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700513
514 # Pixel format
515 Configuration(name = "565-no-depth-no-stencil",
516 glconfig = "rgb565d0s0ms0",
517 rotation = "unspecified",
518 surfacetype = "window",
Kalle Raita25196612016-04-04 17:09:44 -0700519 filters = MASTER_GLES31_COMMON_FILTERS + [include("gles31-pixelformat.txt")],
520 runtime = "1m"),
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700521 ])
522
Mika Isojärvifb2d85c2016-02-04 15:35:09 -0800523MASTER_VULKAN_FILTERS = [
Pyry Haulos9405fa62016-05-19 11:42:13 -0700524 include("vk-master.txt"),
525 exclude("vk-not-applicable.txt"),
Pyry Haulos15f34222017-01-30 16:02:32 -0800526 exclude("vk-excluded-tests.txt"),
Pyry Haulos9405fa62016-05-19 11:42:13 -0700527 exclude("vk-test-issues.txt"),
Pyry Haulos96cb7022017-04-20 15:36:04 -0700528 exclude("vk-waivers.txt"),
Chris Forbesb188ac02018-02-27 11:49:03 -0800529 exclude("vk-temp-excluded.txt"),
Mika Isojärvifb2d85c2016-02-04 15:35:09 -0800530 ]
531MASTER_VULKAN_PKG = Package(module = VULKAN_MODULE, configurations = [
532 Configuration(name = "master",
Kalle Raita25196612016-04-04 17:09:44 -0700533 filters = MASTER_VULKAN_FILTERS,
Kalle Raita37fdf462017-03-30 11:15:44 -0700534 runtime = "2h29m"),
Chris Forbesbc1ea392018-03-13 16:59:45 -0700535 Configuration(name = "master-risky",
536 filters = [include("vk-temp-excluded.txt")],
537 runtime = "10m"),
Mika Isojärvifb2d85c2016-02-04 15:35:09 -0800538 ])
539
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700540MUSTPASS_LISTS = [
Pyry Haulos2bbb9d22016-01-14 13:48:08 -0800541 Mustpass(project = CTS_PROJECT, version = "lmp", packages = [LMP_GLES3_PKG, LMP_GLES31_PKG]),
542 Mustpass(project = CTS_PROJECT, version = "lmp-mr1", packages = [LMP_MR1_GLES3_PKG, LMP_MR1_GLES31_PKG]),
543 Mustpass(project = CTS_PROJECT, version = "mnc", packages = [MNC_EGL_PKG, MNC_GLES2_PKG, MNC_GLES3_PKG, MNC_GLES31_PKG]),
Pyry Haulos9405fa62016-05-19 11:42:13 -0700544 Mustpass(project = CTS_PROJECT, version = "nyc", packages = [NYC_EGL_PKG, NYC_GLES2_PKG, NYC_GLES3_PKG, NYC_GLES31_PKG, NYC_VULKAN_PKG]),
Mika Isojärvifb2d85c2016-02-04 15:35:09 -0800545 Mustpass(project = CTS_PROJECT, version = "master", packages = [MASTER_EGL_PKG, MASTER_GLES2_PKG, MASTER_GLES3_PKG, MASTER_GLES31_PKG, MASTER_VULKAN_PKG])
Jarkko Pöyryecfbb102015-04-03 11:14:49 -0700546 ]
547
548if __name__ == "__main__":
Pyry Haulosadde8232017-01-26 16:36:18 -0800549 genMustpassLists(MUSTPASS_LISTS, ANY_GENERATOR, parseBuildConfigFromCmdLineArgs())