1/*
2 * Copyright (c) 2022 Shenzhen Kaihong Digital Industry Development Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16#include <climits>
17#include <gtest/gtest.h>
18#include "../Deqpgles3BaseFunc.h"
19#include "../ActsDeqpgles30040TestSuite.h"
20#include "shrinkdefine.h"
21
22using namespace std;
23using namespace testing::ext;
24using namespace OHOS;
25
26static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039332,
27        "dEQP-GLES3.functional.fragment",
28        "_out.array.int.rgba32i_lowp_int");
29
30static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039333,
31        "dEQP-GLES3.functional.fragment_",
32        "out.array.int.rgba32i_lowp_ivec2");
33
34static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039334,
35        "dEQP-GLES3.functional.fragment_",
36        "out.array.int.rgba32i_lowp_ivec3");
37
38static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039335,
39        "dEQP-GLES3.functional.fragment_",
40        "out.array.int.rgba32i_lowp_ivec4");
41
42static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039336,
43        "dEQP-GLES3.functional.fragment_o",
44        "ut.array.int.rgba32i_mediump_int");
45
46static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039337,
47        "dEQP-GLES3.functional.fragment_ou",
48        "t.array.int.rgba32i_mediump_ivec2");
49
50static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039338,
51        "dEQP-GLES3.functional.fragment_ou",
52        "t.array.int.rgba32i_mediump_ivec3");
53
54static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039339,
55        "dEQP-GLES3.functional.fragment_ou",
56        "t.array.int.rgba32i_mediump_ivec4");
57
58static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039340,
59        "dEQP-GLES3.functional.fragment_",
60        "out.array.int.rgba32i_highp_int");
61
62static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039341,
63        "dEQP-GLES3.functional.fragment_o",
64        "ut.array.int.rgba32i_highp_ivec2");
65
66static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039342,
67        "dEQP-GLES3.functional.fragment_o",
68        "ut.array.int.rgba32i_highp_ivec3");
69
70static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039343,
71        "dEQP-GLES3.functional.fragment_o",
72        "ut.array.int.rgba32i_highp_ivec4");
73
74static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039344,
75        "dEQP-GLES3.functional.fragment",
76        "_out.array.int.rgba16i_lowp_int");
77
78static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039345,
79        "dEQP-GLES3.functional.fragment_",
80        "out.array.int.rgba16i_lowp_ivec2");
81
82static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039346,
83        "dEQP-GLES3.functional.fragment_",
84        "out.array.int.rgba16i_lowp_ivec3");
85
86static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039347,
87        "dEQP-GLES3.functional.fragment_",
88        "out.array.int.rgba16i_lowp_ivec4");
89
90static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039348,
91        "dEQP-GLES3.functional.fragment_o",
92        "ut.array.int.rgba16i_mediump_int");
93
94static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039349,
95        "dEQP-GLES3.functional.fragment_ou",
96        "t.array.int.rgba16i_mediump_ivec2");
97
98static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039350,
99        "dEQP-GLES3.functional.fragment_ou",
100        "t.array.int.rgba16i_mediump_ivec3");
101
102static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039351,
103        "dEQP-GLES3.functional.fragment_ou",
104        "t.array.int.rgba16i_mediump_ivec4");
105
106static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039352,
107        "dEQP-GLES3.functional.fragment_",
108        "out.array.int.rgba16i_highp_int");
109
110static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039353,
111        "dEQP-GLES3.functional.fragment_o",
112        "ut.array.int.rgba16i_highp_ivec2");
113
114static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039354,
115        "dEQP-GLES3.functional.fragment_o",
116        "ut.array.int.rgba16i_highp_ivec3");
117
118static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039355,
119        "dEQP-GLES3.functional.fragment_o",
120        "ut.array.int.rgba16i_highp_ivec4");
121
122static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039356,
123        "dEQP-GLES3.functional.fragment",
124        "_out.array.int.rgba8i_lowp_int");
125
126static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039357,
127        "dEQP-GLES3.functional.fragment_",
128        "out.array.int.rgba8i_lowp_ivec2");
129
130static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039358,
131        "dEQP-GLES3.functional.fragment_",
132        "out.array.int.rgba8i_lowp_ivec3");
133
134static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039359,
135        "dEQP-GLES3.functional.fragment_",
136        "out.array.int.rgba8i_lowp_ivec4");
137
138static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039360,
139        "dEQP-GLES3.functional.fragment_",
140        "out.array.int.rgba8i_mediump_int");
141
142static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039361,
143        "dEQP-GLES3.functional.fragment_o",
144        "ut.array.int.rgba8i_mediump_ivec2");
145
146static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039362,
147        "dEQP-GLES3.functional.fragment_o",
148        "ut.array.int.rgba8i_mediump_ivec3");
149
150static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039363,
151        "dEQP-GLES3.functional.fragment_o",
152        "ut.array.int.rgba8i_mediump_ivec4");
153
154static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039364,
155        "dEQP-GLES3.functional.fragment",
156        "_out.array.int.rgba8i_highp_int");
157
158static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039365,
159        "dEQP-GLES3.functional.fragment_",
160        "out.array.int.rgba8i_highp_ivec2");
161
162static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039366,
163        "dEQP-GLES3.functional.fragment_",
164        "out.array.int.rgba8i_highp_ivec3");
165
166static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039367,
167        "dEQP-GLES3.functional.fragment_",
168        "out.array.int.rgba8i_highp_ivec4");
169
170static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039368,
171        "dEQP-GLES3.functional.fragmen",
172        "t_out.array.int.rg32i_lowp_int");
173
174static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039369,
175        "dEQP-GLES3.functional.fragment",
176        "_out.array.int.rg32i_lowp_ivec2");
177
178static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039370,
179        "dEQP-GLES3.functional.fragment",
180        "_out.array.int.rg32i_lowp_ivec3");
181
182static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039371,
183        "dEQP-GLES3.functional.fragment",
184        "_out.array.int.rg32i_lowp_ivec4");
185
186static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039372,
187        "dEQP-GLES3.functional.fragment_",
188        "out.array.int.rg32i_mediump_int");
189
190static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039373,
191        "dEQP-GLES3.functional.fragment_o",
192        "ut.array.int.rg32i_mediump_ivec2");
193
194static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039374,
195        "dEQP-GLES3.functional.fragment_o",
196        "ut.array.int.rg32i_mediump_ivec3");
197
198static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039375,
199        "dEQP-GLES3.functional.fragment_o",
200        "ut.array.int.rg32i_mediump_ivec4");
201
202static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039376,
203        "dEQP-GLES3.functional.fragment",
204        "_out.array.int.rg32i_highp_int");
205
206static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039377,
207        "dEQP-GLES3.functional.fragment_",
208        "out.array.int.rg32i_highp_ivec2");
209
210static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039378,
211        "dEQP-GLES3.functional.fragment_",
212        "out.array.int.rg32i_highp_ivec3");
213
214static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039379,
215        "dEQP-GLES3.functional.fragment_",
216        "out.array.int.rg32i_highp_ivec4");
217
218static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039380,
219        "dEQP-GLES3.functional.fragmen",
220        "t_out.array.int.rg16i_lowp_int");
221
222static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039381,
223        "dEQP-GLES3.functional.fragment",
224        "_out.array.int.rg16i_lowp_ivec2");
225
226static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039382,
227        "dEQP-GLES3.functional.fragment",
228        "_out.array.int.rg16i_lowp_ivec3");
229
230static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039383,
231        "dEQP-GLES3.functional.fragment",
232        "_out.array.int.rg16i_lowp_ivec4");
233
234static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039384,
235        "dEQP-GLES3.functional.fragment_",
236        "out.array.int.rg16i_mediump_int");
237
238static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039385,
239        "dEQP-GLES3.functional.fragment_o",
240        "ut.array.int.rg16i_mediump_ivec2");
241
242static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039386,
243        "dEQP-GLES3.functional.fragment_o",
244        "ut.array.int.rg16i_mediump_ivec3");
245
246static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039387,
247        "dEQP-GLES3.functional.fragment_o",
248        "ut.array.int.rg16i_mediump_ivec4");
249
250static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039388,
251        "dEQP-GLES3.functional.fragment",
252        "_out.array.int.rg16i_highp_int");
253
254static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039389,
255        "dEQP-GLES3.functional.fragment_",
256        "out.array.int.rg16i_highp_ivec2");
257
258static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039390,
259        "dEQP-GLES3.functional.fragment_",
260        "out.array.int.rg16i_highp_ivec3");
261
262static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039391,
263        "dEQP-GLES3.functional.fragment_",
264        "out.array.int.rg16i_highp_ivec4");
265
266static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039392,
267        "dEQP-GLES3.functional.fragmen",
268        "t_out.array.int.rg8i_lowp_int");
269
270static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039393,
271        "dEQP-GLES3.functional.fragment",
272        "_out.array.int.rg8i_lowp_ivec2");
273
274static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039394,
275        "dEQP-GLES3.functional.fragment",
276        "_out.array.int.rg8i_lowp_ivec3");
277
278static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039395,
279        "dEQP-GLES3.functional.fragment",
280        "_out.array.int.rg8i_lowp_ivec4");
281
282static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039396,
283        "dEQP-GLES3.functional.fragment",
284        "_out.array.int.rg8i_mediump_int");
285
286static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039397,
287        "dEQP-GLES3.functional.fragment_",
288        "out.array.int.rg8i_mediump_ivec2");
289
290static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039398,
291        "dEQP-GLES3.functional.fragment_",
292        "out.array.int.rg8i_mediump_ivec3");
293
294static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039399,
295        "dEQP-GLES3.functional.fragment_",
296        "out.array.int.rg8i_mediump_ivec4");
297
298static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039400,
299        "dEQP-GLES3.functional.fragmen",
300        "t_out.array.int.rg8i_highp_int");
301
302static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039401,
303        "dEQP-GLES3.functional.fragment",
304        "_out.array.int.rg8i_highp_ivec2");
305
306static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039402,
307        "dEQP-GLES3.functional.fragment",
308        "_out.array.int.rg8i_highp_ivec3");
309
310static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039403,
311        "dEQP-GLES3.functional.fragment",
312        "_out.array.int.rg8i_highp_ivec4");
313
314static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039404,
315        "dEQP-GLES3.functional.fragmen",
316        "t_out.array.int.r32i_lowp_int");
317
318static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039405,
319        "dEQP-GLES3.functional.fragment",
320        "_out.array.int.r32i_lowp_ivec2");
321
322static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039406,
323        "dEQP-GLES3.functional.fragment",
324        "_out.array.int.r32i_lowp_ivec3");
325
326static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039407,
327        "dEQP-GLES3.functional.fragment",
328        "_out.array.int.r32i_lowp_ivec4");
329
330static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039408,
331        "dEQP-GLES3.functional.fragment",
332        "_out.array.int.r32i_mediump_int");
333
334static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039409,
335        "dEQP-GLES3.functional.fragment_",
336        "out.array.int.r32i_mediump_ivec2");
337
338static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039410,
339        "dEQP-GLES3.functional.fragment_",
340        "out.array.int.r32i_mediump_ivec3");
341
342static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039411,
343        "dEQP-GLES3.functional.fragment_",
344        "out.array.int.r32i_mediump_ivec4");
345
346static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039412,
347        "dEQP-GLES3.functional.fragmen",
348        "t_out.array.int.r32i_highp_int");
349
350static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039413,
351        "dEQP-GLES3.functional.fragment",
352        "_out.array.int.r32i_highp_ivec2");
353
354static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039414,
355        "dEQP-GLES3.functional.fragment",
356        "_out.array.int.r32i_highp_ivec3");
357
358static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039415,
359        "dEQP-GLES3.functional.fragment",
360        "_out.array.int.r32i_highp_ivec4");
361
362static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039416,
363        "dEQP-GLES3.functional.fragmen",
364        "t_out.array.int.r16i_lowp_int");
365
366static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039417,
367        "dEQP-GLES3.functional.fragment",
368        "_out.array.int.r16i_lowp_ivec2");
369
370static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039418,
371        "dEQP-GLES3.functional.fragment",
372        "_out.array.int.r16i_lowp_ivec3");
373
374static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039419,
375        "dEQP-GLES3.functional.fragment",
376        "_out.array.int.r16i_lowp_ivec4");
377
378static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039420,
379        "dEQP-GLES3.functional.fragment",
380        "_out.array.int.r16i_mediump_int");
381
382static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039421,
383        "dEQP-GLES3.functional.fragment_",
384        "out.array.int.r16i_mediump_ivec2");
385
386static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039422,
387        "dEQP-GLES3.functional.fragment_",
388        "out.array.int.r16i_mediump_ivec3");
389
390static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039423,
391        "dEQP-GLES3.functional.fragment_",
392        "out.array.int.r16i_mediump_ivec4");
393
394static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039424,
395        "dEQP-GLES3.functional.fragmen",
396        "t_out.array.int.r16i_highp_int");
397
398static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039425,
399        "dEQP-GLES3.functional.fragment",
400        "_out.array.int.r16i_highp_ivec2");
401
402static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039426,
403        "dEQP-GLES3.functional.fragment",
404        "_out.array.int.r16i_highp_ivec3");
405
406static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039427,
407        "dEQP-GLES3.functional.fragment",
408        "_out.array.int.r16i_highp_ivec4");
409
410static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039428,
411        "dEQP-GLES3.functional.fragme",
412        "nt_out.array.int.r8i_lowp_int");
413
414static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039429,
415        "dEQP-GLES3.functional.fragmen",
416        "t_out.array.int.r8i_lowp_ivec2");
417
418static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039430,
419        "dEQP-GLES3.functional.fragmen",
420        "t_out.array.int.r8i_lowp_ivec3");
421
422static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039431,
423        "dEQP-GLES3.functional.fragmen",
424        "t_out.array.int.r8i_lowp_ivec4");
425
426static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039432,
427        "dEQP-GLES3.functional.fragment",
428        "_out.array.int.r8i_mediump_int");
429
430static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039433,
431        "dEQP-GLES3.functional.fragment_",
432        "out.array.int.r8i_mediump_ivec2");
433
434static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039434,
435        "dEQP-GLES3.functional.fragment_",
436        "out.array.int.r8i_mediump_ivec3");
437
438static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039435,
439        "dEQP-GLES3.functional.fragment_",
440        "out.array.int.r8i_mediump_ivec4");
441
442static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039436,
443        "dEQP-GLES3.functional.fragmen",
444        "t_out.array.int.r8i_highp_int");
445
446static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039437,
447        "dEQP-GLES3.functional.fragment",
448        "_out.array.int.r8i_highp_ivec2");
449
450static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039438,
451        "dEQP-GLES3.functional.fragment",
452        "_out.array.int.r8i_highp_ivec3");
453
454static SHRINK_HWTEST_F(ActsDeqpgles30040TestSuite, TestCase_039439,
455        "dEQP-GLES3.functional.fragment",
456        "_out.array.int.r8i_highp_ivec4");
457