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 "../Deqpgles2BaseFunc.h"
19f6603c60Sopenharmony_ci#include "../ActsDeqpgles20003TestSuite.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(ActsDeqpgles20003TestSuite, TestCase_002437,
27f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.i",
28f6603c60Sopenharmony_ci        "nvalid.redeclare_global_variable_vertex");
29f6603c60Sopenharmony_ci
30f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002438,
31f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.in",
32f6603c60Sopenharmony_ci        "valid.redeclare_global_variable_fragment");
33f6603c60Sopenharmony_ci
34f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002439,
35f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.",
36f6603c60Sopenharmony_ci        "invalid.redeclare_local_variable_vertex");
37f6603c60Sopenharmony_ci
38f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002440,
39f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.i",
40f6603c60Sopenharmony_ci        "nvalid.redeclare_local_variable_fragment");
41f6603c60Sopenharmony_ci
42f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002441,
43f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid",
44f6603c60Sopenharmony_ci        ".redeclare_for_init_statement_variable_vertex");
45f6603c60Sopenharmony_ci
46f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002442,
47f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.",
48f6603c60Sopenharmony_ci        "redeclare_for_init_statement_variable_fragment");
49f6603c60Sopenharmony_ci
50f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002443,
51f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.inva",
52f6603c60Sopenharmony_ci        "lid.redeclare_for_condition_variable_vertex");
53f6603c60Sopenharmony_ci
54f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002444,
55f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.inval",
56f6603c60Sopenharmony_ci        "id.redeclare_for_condition_variable_fragment");
57f6603c60Sopenharmony_ci
58f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002445,
59f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.redecla",
60f6603c60Sopenharmony_ci        "re_for_init_statement_variable_in_for_condition_vertex");
61f6603c60Sopenharmony_ci
62f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002446,
63f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.redeclar",
64f6603c60Sopenharmony_ci        "e_for_init_statement_variable_in_for_condition_fragment");
65f6603c60Sopenharmony_ci
66f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002447,
67f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.inval",
68f6603c60Sopenharmony_ci        "id.redeclare_while_condition_variable_vertex");
69f6603c60Sopenharmony_ci
70f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002448,
71f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invali",
72f6603c60Sopenharmony_ci        "d.redeclare_while_condition_variable_fragment");
73f6603c60Sopenharmony_ci
74f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002449,
75f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scopi",
76f6603c60Sopenharmony_ci        "ng.invalid.redefine_function_vertex");
77f6603c60Sopenharmony_ci
78f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002450,
79f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scopin",
80f6603c60Sopenharmony_ci        "g.invalid.redefine_function_fragment");
81f6603c60Sopenharmony_ci
82f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002451,
83f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scopi",
84f6603c60Sopenharmony_ci        "ng.invalid.redeclare_builtin_vertex");
85f6603c60Sopenharmony_ci
86f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002452,
87f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scopin",
88f6603c60Sopenharmony_ci        "g.invalid.redeclare_builtin_fragment");
89f6603c60Sopenharmony_ci
90f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002453,
91f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.",
92f6603c60Sopenharmony_ci        "invalid.conflict_function_struct_vertex");
93f6603c60Sopenharmony_ci
94f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002454,
95f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.i",
96f6603c60Sopenharmony_ci        "nvalid.conflict_function_struct_fragment");
97f6603c60Sopenharmony_ci
98f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002455,
99f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.i",
100f6603c60Sopenharmony_ci        "nvalid.conflict_function_variable_vertex");
101f6603c60Sopenharmony_ci
102f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002456,
103f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.in",
104f6603c60Sopenharmony_ci        "valid.conflict_function_variable_fragment");
105f6603c60Sopenharmony_ci
106f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002457,
107f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid",
108f6603c60Sopenharmony_ci        ".use_global_variable_before_declaration_vertex");
109f6603c60Sopenharmony_ci
110f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002458,
111f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.",
112f6603c60Sopenharmony_ci        "use_global_variable_before_declaration_fragment");
113f6603c60Sopenharmony_ci
114f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002459,
115f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid",
116f6603c60Sopenharmony_ci        ".use_local_variable_before_declaration_vertex");
117f6603c60Sopenharmony_ci
118f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002460,
119f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.",
120f6603c60Sopenharmony_ci        "use_local_variable_before_declaration_fragment");
121f6603c60Sopenharmony_ci
122f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002461,
123f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.inval",
124f6603c60Sopenharmony_ci        "id.use_struct_type_before_declaration_vertex");
125f6603c60Sopenharmony_ci
126f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002462,
127f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invali",
128f6603c60Sopenharmony_ci        "d.use_struct_type_before_declaration_fragment");
129f6603c60Sopenharmony_ci
130f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002463,
131f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.inva",
132f6603c60Sopenharmony_ci        "lid.use_function_before_declaration_vertex");
133f6603c60Sopenharmony_ci
134f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002464,
135f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.inval",
136f6603c60Sopenharmony_ci        "id.use_function_before_declaration_fragment");
137f6603c60Sopenharmony_ci
138f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002465,
139f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid",
140f6603c60Sopenharmony_ci        ".use_variable_from_block_in_outer_scope_vertex");
141f6603c60Sopenharmony_ci
142f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002466,
143f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.",
144f6603c60Sopenharmony_ci        "use_variable_from_block_in_outer_scope_fragment");
145f6603c60Sopenharmony_ci
146f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002467,
147f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invali",
148f6603c60Sopenharmony_ci        "d.use_variable_from_if_in_outer_scope_vertex");
149f6603c60Sopenharmony_ci
150f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002468,
151f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid",
152f6603c60Sopenharmony_ci        ".use_variable_from_if_in_outer_scope_fragment");
153f6603c60Sopenharmony_ci
154f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002469,
155f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid",
156f6603c60Sopenharmony_ci        ".use_variable_from_else_in_outer_scope_vertex");
157f6603c60Sopenharmony_ci
158f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002470,
159f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.",
160f6603c60Sopenharmony_ci        "use_variable_from_else_in_outer_scope_fragment");
161f6603c60Sopenharmony_ci
162f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002471,
163f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.in",
164f6603c60Sopenharmony_ci        "valid.use_variable_from_if_in_else_vertex");
165f6603c60Sopenharmony_ci
166f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002472,
167f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.inv",
168f6603c60Sopenharmony_ci        "alid.use_variable_from_if_in_else_fragment");
169f6603c60Sopenharmony_ci
170f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002473,
171f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.use_va",
172f6603c60Sopenharmony_ci        "riable_from_for_init_statement_in_outer_scope_vertex");
173f6603c60Sopenharmony_ci
174f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002474,
175f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.use_var",
176f6603c60Sopenharmony_ci        "iable_from_for_init_statement_in_outer_scope_fragment");
177f6603c60Sopenharmony_ci
178f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002475,
179f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.use_",
180f6603c60Sopenharmony_ci        "variable_from_while_condition_in_outer_scope_vertex");
181f6603c60Sopenharmony_ci
182f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002476,
183f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.use_v",
184f6603c60Sopenharmony_ci        "ariable_from_while_condition_in_outer_scope_fragment");
185f6603c60Sopenharmony_ci
186f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002477,
187f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.use",
188f6603c60Sopenharmony_ci        "_parameter_names_from_function_declaration_vertex");
189f6603c60Sopenharmony_ci
190f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002478,
191f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.use_",
192f6603c60Sopenharmony_ci        "parameter_names_from_function_declaration_fragment");
193f6603c60Sopenharmony_ci
194f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002479,
195f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.",
196f6603c60Sopenharmony_ci        "variable_not_visible_in_own_initializer_vertex");
197f6603c60Sopenharmony_ci
198f6603c60Sopenharmony_cistatic SHRINK_HWTEST_F(ActsDeqpgles20003TestSuite, TestCase_002480,
199f6603c60Sopenharmony_ci        "dEQP-GLES2.functional.shaders.scoping.invalid.v",
200f6603c60Sopenharmony_ci        "ariable_not_visible_in_own_initializer_fragment");
201