1f6603c60Sopenharmony_ci/*
2f6603c60Sopenharmony_ci * Copyright (c) 2022 Shenzhen Kaihong Digital Industry Development Co., Ltd.
3f6603c60Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
4f6603c60Sopenharmony_ci * you may not use this file except in compliance with the License.
5f6603c60Sopenharmony_ci * You may obtain a copy of the License at
6f6603c60Sopenharmony_ci *
7f6603c60Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
8f6603c60Sopenharmony_ci *
9f6603c60Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
10f6603c60Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
11f6603c60Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12f6603c60Sopenharmony_ci * See the License for the specific language governing permissions and
13f6603c60Sopenharmony_ci * limitations under the License.
14f6603c60Sopenharmony_ci */
15f6603c60Sopenharmony_ci
16f6603c60Sopenharmony_ci#include <climits>
17f6603c60Sopenharmony_ci#include <gtest/gtest.h>
18f6603c60Sopenharmony_ci#include "../EglBaseFunc.h"
19f6603c60Sopenharmony_ci#include "../ActsEgl0001TestSuite.h"
20f6603c60Sopenharmony_ci#include "shrinkdefine.h"
21f6603c60Sopenharmony_ci
22f6603c60Sopenharmony_ciusing namespace std;
23f6603c60Sopenharmony_ciusing namespace testing::ext;
24f6603c60Sopenharmony_ciusing namespace OHOS;
25f6603c60Sopenharmony_ci
26f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003655, "dEQP-EGL.functional.robustness.c",
27f6603c60Sopenharmony_ci    "reate_context.query_robust_access");
28f6603c60Sopenharmony_ci
29f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003656, "dEQP-EGL.functional.robustness.cr",
30f6603c60Sopenharmony_ci    "eate_context.no_reset_notification");
31f6603c60Sopenharmony_ci
32f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003657, "dEQP-EGL.functional.robustness.cr",
33f6603c60Sopenharmony_ci    "eate_context.lose_context_on_reset");
34f6603c60Sopenharmony_ci
35f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003658, "dEQP-EGL.functional.robustness.reset_context.shaders.",
36f6603c60Sopenharmony_ci    "out_of_bounds.reset_status.reads.uniform_block.vertex");
37f6603c60Sopenharmony_ci
38f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003659, "dEQP-EGL.functional.robustness.reset_context.shaders.o",
39f6603c60Sopenharmony_ci    "ut_of_bounds.reset_status.reads.uniform_block.fragment");
40f6603c60Sopenharmony_ci
41f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003660, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of",
42f6603c60Sopenharmony_ci    "_bounds.reset_status.reads.uniform_block.vertex_and_fragment");
43f6603c60Sopenharmony_ci
44f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003661, "dEQP-EGL.functional.robustness.reset_context.shaders.",
45f6603c60Sopenharmony_ci    "out_of_bounds.reset_status.reads.uniform_block.compute");
46f6603c60Sopenharmony_ci
47f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003662, "dEQP-EGL.functional.robustness.reset_context.shaders.out",
48f6603c60Sopenharmony_ci    "_of_bounds.reset_status.reads.shader_storage_block.vertex");
49f6603c60Sopenharmony_ci
50f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003663, "dEQP-EGL.functional.robustness.reset_context.shaders.out_",
51f6603c60Sopenharmony_ci    "of_bounds.reset_status.reads.shader_storage_block.fragment");
52f6603c60Sopenharmony_ci
53f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003664, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bou",
54f6603c60Sopenharmony_ci    "nds.reset_status.reads.shader_storage_block.vertex_and_fragment");
55f6603c60Sopenharmony_ci
56f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003665, "dEQP-EGL.functional.robustness.reset_context.shaders.out_",
57f6603c60Sopenharmony_ci    "of_bounds.reset_status.reads.shader_storage_block.compute");
58f6603c60Sopenharmony_ci
59f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003666, "dEQP-EGL.functional.robustness.reset_context.shaders",
60f6603c60Sopenharmony_ci    ".out_of_bounds.reset_status.reads.local_array.vertex");
61f6603c60Sopenharmony_ci
62f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003667, "dEQP-EGL.functional.robustness.reset_context.shaders.",
63f6603c60Sopenharmony_ci    "out_of_bounds.reset_status.reads.local_array.fragment");
64f6603c60Sopenharmony_ci
65f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003668, "dEQP-EGL.functional.robustness.reset_context.shaders.out_o",
66f6603c60Sopenharmony_ci    "f_bounds.reset_status.reads.local_array.vertex_and_fragment");
67f6603c60Sopenharmony_ci
68f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003669, "dEQP-EGL.functional.robustness.reset_context.shaders",
69f6603c60Sopenharmony_ci    ".out_of_bounds.reset_status.reads.local_array.compute");
70f6603c60Sopenharmony_ci
71f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003670, "dEQP-EGL.functional.robustness.reset_context.shaders.",
72f6603c60Sopenharmony_ci    "out_of_bounds.reset_status.writes.uniform_block.vertex");
73f6603c60Sopenharmony_ci
74f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003671, "dEQP-EGL.functional.robustness.reset_context.shaders.o",
75f6603c60Sopenharmony_ci    "ut_of_bounds.reset_status.writes.uniform_block.fragment");
76f6603c60Sopenharmony_ci
77f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003672, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_",
78f6603c60Sopenharmony_ci    "bounds.reset_status.writes.uniform_block.vertex_and_fragment");
79f6603c60Sopenharmony_ci
80f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003673, "dEQP-EGL.functional.robustness.reset_context.shaders.o",
81f6603c60Sopenharmony_ci    "ut_of_bounds.reset_status.writes.uniform_block.compute");
82f6603c60Sopenharmony_ci
83f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003674, "dEQP-EGL.functional.robustness.reset_context.shaders.out_",
84f6603c60Sopenharmony_ci    "of_bounds.reset_status.writes.shader_storage_block.vertex");
85f6603c60Sopenharmony_ci
86f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003675, "dEQP-EGL.functional.robustness.reset_context.shaders.out_o",
87f6603c60Sopenharmony_ci    "f_bounds.reset_status.writes.shader_storage_block.fragment");
88f6603c60Sopenharmony_ci
89f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003676, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bou",
90f6603c60Sopenharmony_ci    "nds.reset_status.writes.shader_storage_block.vertex_and_fragment");
91f6603c60Sopenharmony_ci
92f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003677, "dEQP-EGL.functional.robustness.reset_context.shaders.out_",
93f6603c60Sopenharmony_ci    "of_bounds.reset_status.writes.shader_storage_block.compute");
94f6603c60Sopenharmony_ci
95f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003678, "dEQP-EGL.functional.robustness.reset_context.shaders",
96f6603c60Sopenharmony_ci    ".out_of_bounds.reset_status.writes.local_array.vertex");
97f6603c60Sopenharmony_ci
98f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003679, "dEQP-EGL.functional.robustness.reset_context.shaders.",
99f6603c60Sopenharmony_ci    "out_of_bounds.reset_status.writes.local_array.fragment");
100f6603c60Sopenharmony_ci
101f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003680, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of",
102f6603c60Sopenharmony_ci    "_bounds.reset_status.writes.local_array.vertex_and_fragment");
103f6603c60Sopenharmony_ci
104f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003681, "dEQP-EGL.functional.robustness.reset_context.shaders.",
105f6603c60Sopenharmony_ci    "out_of_bounds.reset_status.writes.local_array.compute");
106f6603c60Sopenharmony_ci
107f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003682, "dEQP-EGL.functional.robustness.reset_context.shaders.out_o",
108f6603c60Sopenharmony_ci    "f_bounds_non_robust.reset_status.reads.uniform_block.vertex");
109f6603c60Sopenharmony_ci
110f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003683, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of",
111f6603c60Sopenharmony_ci    "_bounds_non_robust.reset_status.reads.uniform_block.fragment");
112f6603c60Sopenharmony_ci
113f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003684, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bound",
114f6603c60Sopenharmony_ci    "s_non_robust.reset_status.reads.uniform_block.vertex_and_fragment");
115f6603c60Sopenharmony_ci
116f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003685, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of",
117f6603c60Sopenharmony_ci    "_bounds_non_robust.reset_status.reads.uniform_block.compute");
118f6603c60Sopenharmony_ci
119f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003686, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bo",
120f6603c60Sopenharmony_ci    "unds_non_robust.reset_status.reads.shader_storage_block.vertex");
121f6603c60Sopenharmony_ci
122f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003687, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bou",
123f6603c60Sopenharmony_ci    "nds_non_robust.reset_status.reads.shader_storage_block.fragment");
124f6603c60Sopenharmony_ci
125f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003688, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bounds_n",
126f6603c60Sopenharmony_ci    "on_robust.reset_status.reads.shader_storage_block.vertex_and_fragment");
127f6603c60Sopenharmony_ci
128f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003689, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bo",
129f6603c60Sopenharmony_ci    "unds_non_robust.reset_status.reads.shader_storage_block.compute");
130f6603c60Sopenharmony_ci
131f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003690, "dEQP-EGL.functional.robustness.reset_context.shaders.out_",
132f6603c60Sopenharmony_ci    "of_bounds_non_robust.reset_status.reads.local_array.vertex");
133f6603c60Sopenharmony_ci
134f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003691, "dEQP-EGL.functional.robustness.reset_context.shaders.out_o",
135f6603c60Sopenharmony_ci    "f_bounds_non_robust.reset_status.reads.local_array.fragment");
136f6603c60Sopenharmony_ci
137f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003692, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_boun",
138f6603c60Sopenharmony_ci    "ds_non_robust.reset_status.reads.local_array.vertex_and_fragment");
139f6603c60Sopenharmony_ci
140f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003693, "dEQP-EGL.functional.robustness.reset_context.shaders.out_o",
141f6603c60Sopenharmony_ci    "f_bounds_non_robust.reset_status.reads.local_array.compute");
142f6603c60Sopenharmony_ci
143f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003694, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of",
144f6603c60Sopenharmony_ci    "_bounds_non_robust.reset_status.writes.uniform_block.vertex");
145f6603c60Sopenharmony_ci
146f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003695, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_",
147f6603c60Sopenharmony_ci    "bounds_non_robust.reset_status.writes.uniform_block.fragment");
148f6603c60Sopenharmony_ci
149f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003696, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bound",
150f6603c60Sopenharmony_ci    "s_non_robust.reset_status.writes.uniform_block.vertex_and_fragment");
151f6603c60Sopenharmony_ci
152f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003697, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of",
153f6603c60Sopenharmony_ci    "_bounds_non_robust.reset_status.writes.uniform_block.compute");
154f6603c60Sopenharmony_ci
155f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003698, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bo",
156f6603c60Sopenharmony_ci    "unds_non_robust.reset_status.writes.shader_storage_block.vertex");
157f6603c60Sopenharmony_ci
158f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003699, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bou",
159f6603c60Sopenharmony_ci    "nds_non_robust.reset_status.writes.shader_storage_block.fragment");
160f6603c60Sopenharmony_ci
161f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003700, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bounds_no",
162f6603c60Sopenharmony_ci    "n_robust.reset_status.writes.shader_storage_block.vertex_and_fragment");
163f6603c60Sopenharmony_ci
164f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003701, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_bou",
165f6603c60Sopenharmony_ci    "nds_non_robust.reset_status.writes.shader_storage_block.compute");
166f6603c60Sopenharmony_ci
167f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003702, "dEQP-EGL.functional.robustness.reset_context.shaders.out_o",
168f6603c60Sopenharmony_ci    "f_bounds_non_robust.reset_status.writes.local_array.vertex");
169f6603c60Sopenharmony_ci
170f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003703, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of",
171f6603c60Sopenharmony_ci    "_bounds_non_robust.reset_status.writes.local_array.fragment");
172f6603c60Sopenharmony_ci
173f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003704, "dEQP-EGL.functional.robustness.reset_context.shaders.out_of_boun",
174f6603c60Sopenharmony_ci    "ds_non_robust.reset_status.writes.local_array.vertex_and_fragment");
175f6603c60Sopenharmony_ci
176f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003705, "dEQP-EGL.functional.robustness.reset_context.shaders.out_o",
177f6603c60Sopenharmony_ci    "f_bounds_non_robust.reset_status.writes.local_array.compute");
178f6603c60Sopenharmony_ci
179f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003706, "dEQP-EGL.functional.robustness.reset_context.fixed_fun",
180f6603c60Sopenharmony_ci    "ction_pipeline.reset_status.index_buffer_out_of_bounds");
181f6603c60Sopenharmony_ci
182f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003707, "dEQP-EGL.functional.robustness.reset_context.fixed_fun",
183f6603c60Sopenharmony_ci    "ction_pipeline.reset_status.vertex_buffer_out_of_bounds");
184f6603c60Sopenharmony_ci
185f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003708, "dEQP-EGL.functional.robustness.reset_context.fixed_function",
186f6603c60Sopenharmony_ci    "_pipeline_non_robust.reset_status.index_buffer_out_of_bounds");
187f6603c60Sopenharmony_ci
188f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003709, "dEQP-EGL.functional.robustness.reset_context.fixed_function_",
189f6603c60Sopenharmony_ci    "pipeline_non_robust.reset_status.vertex_buffer_out_of_bounds");
190f6603c60Sopenharmony_ci
191f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003710, "dEQP-EGL.functional.robustness.negative",
192f6603c60Sopenharmony_ci    "_context.invalid_robust_context_creation");
193f6603c60Sopenharmony_ci
194f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003711, "dEQP-EGL.functional.robustness.negative_con",
195f6603c60Sopenharmony_ci    "text.invalid_robust_shared_context_creation");
196f6603c60Sopenharmony_ci
197f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsEgl0001TS, TC003712, "dEQP-EGL.functional.robustness.negative_c",
198f6603c60Sopenharmony_ci    "ontext.invalid_notification_strategy_enum");
199