1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // This file is auto-generated from
6 // gpu/command_buffer/build_gles2_cmd_buffer.py
7 // It's formatted by clang-format using chromium coding style:
8 // clang-format -i -style=chromium filename
11 // It is included by gles2_cmd_decoder_unittest_3.cc
12 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_3_AUTOGEN_H_
13 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_3_AUTOGEN_H_
15 TEST_P(GLES2DecoderTest3
, VertexAttrib2fValidArgs
) {
16 EXPECT_CALL(*gl_
, VertexAttrib2f(1, 2, 3));
17 SpecializedSetup
<cmds::VertexAttrib2f
, 0>(true);
18 cmds::VertexAttrib2f cmd
;
20 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
21 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
24 TEST_P(GLES2DecoderTest3
, VertexAttrib2fvImmediateValidArgs
) {
25 cmds::VertexAttrib2fvImmediate
& cmd
=
26 *GetImmediateAs
<cmds::VertexAttrib2fvImmediate
>();
27 SpecializedSetup
<cmds::VertexAttrib2fvImmediate
, 0>(true);
31 cmd
.Init(1, &temp
[0]);
32 EXPECT_CALL(*gl_
, VertexAttrib2fv(1, reinterpret_cast<GLfloat
*>(
33 ImmediateDataAddress(&cmd
))));
34 EXPECT_EQ(error::kNoError
, ExecuteImmediateCmd(cmd
, sizeof(temp
)));
35 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
38 TEST_P(GLES2DecoderTest3
, VertexAttrib3fValidArgs
) {
39 EXPECT_CALL(*gl_
, VertexAttrib3f(1, 2, 3, 4));
40 SpecializedSetup
<cmds::VertexAttrib3f
, 0>(true);
41 cmds::VertexAttrib3f cmd
;
43 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
44 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
47 TEST_P(GLES2DecoderTest3
, VertexAttrib3fvImmediateValidArgs
) {
48 cmds::VertexAttrib3fvImmediate
& cmd
=
49 *GetImmediateAs
<cmds::VertexAttrib3fvImmediate
>();
50 SpecializedSetup
<cmds::VertexAttrib3fvImmediate
, 0>(true);
54 cmd
.Init(1, &temp
[0]);
55 EXPECT_CALL(*gl_
, VertexAttrib3fv(1, reinterpret_cast<GLfloat
*>(
56 ImmediateDataAddress(&cmd
))));
57 EXPECT_EQ(error::kNoError
, ExecuteImmediateCmd(cmd
, sizeof(temp
)));
58 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
61 TEST_P(GLES2DecoderTest3
, VertexAttrib4fValidArgs
) {
62 EXPECT_CALL(*gl_
, VertexAttrib4f(1, 2, 3, 4, 5));
63 SpecializedSetup
<cmds::VertexAttrib4f
, 0>(true);
64 cmds::VertexAttrib4f cmd
;
65 cmd
.Init(1, 2, 3, 4, 5);
66 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
67 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
70 TEST_P(GLES2DecoderTest3
, VertexAttrib4fvImmediateValidArgs
) {
71 cmds::VertexAttrib4fvImmediate
& cmd
=
72 *GetImmediateAs
<cmds::VertexAttrib4fvImmediate
>();
73 SpecializedSetup
<cmds::VertexAttrib4fvImmediate
, 0>(true);
77 cmd
.Init(1, &temp
[0]);
78 EXPECT_CALL(*gl_
, VertexAttrib4fv(1, reinterpret_cast<GLfloat
*>(
79 ImmediateDataAddress(&cmd
))));
80 EXPECT_EQ(error::kNoError
, ExecuteImmediateCmd(cmd
, sizeof(temp
)));
81 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
84 TEST_P(GLES2DecoderTest3
, VertexAttribI4iValidArgs
) {
85 EXPECT_CALL(*gl_
, VertexAttribI4i(1, 2, 3, 4, 5));
86 SpecializedSetup
<cmds::VertexAttribI4i
, 0>(true);
87 cmds::VertexAttribI4i cmd
;
88 cmd
.Init(1, 2, 3, 4, 5);
89 decoder_
->set_unsafe_es3_apis_enabled(true);
90 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
91 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
92 decoder_
->set_unsafe_es3_apis_enabled(false);
93 EXPECT_EQ(error::kUnknownCommand
, ExecuteCmd(cmd
));
96 TEST_P(GLES2DecoderTest3
, VertexAttribI4ivImmediateValidArgs
) {
97 cmds::VertexAttribI4ivImmediate
& cmd
=
98 *GetImmediateAs
<cmds::VertexAttribI4ivImmediate
>();
99 SpecializedSetup
<cmds::VertexAttribI4ivImmediate
, 0>(true);
103 cmd
.Init(1, &temp
[0]);
104 EXPECT_CALL(*gl_
, VertexAttribI4iv(1, reinterpret_cast<GLint
*>(
105 ImmediateDataAddress(&cmd
))));
106 decoder_
->set_unsafe_es3_apis_enabled(true);
107 EXPECT_EQ(error::kNoError
, ExecuteImmediateCmd(cmd
, sizeof(temp
)));
108 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
109 decoder_
->set_unsafe_es3_apis_enabled(false);
110 EXPECT_EQ(error::kUnknownCommand
, ExecuteImmediateCmd(cmd
, sizeof(temp
)));
113 TEST_P(GLES2DecoderTest3
, VertexAttribI4uiValidArgs
) {
114 EXPECT_CALL(*gl_
, VertexAttribI4ui(1, 2, 3, 4, 5));
115 SpecializedSetup
<cmds::VertexAttribI4ui
, 0>(true);
116 cmds::VertexAttribI4ui cmd
;
117 cmd
.Init(1, 2, 3, 4, 5);
118 decoder_
->set_unsafe_es3_apis_enabled(true);
119 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
120 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
121 decoder_
->set_unsafe_es3_apis_enabled(false);
122 EXPECT_EQ(error::kUnknownCommand
, ExecuteCmd(cmd
));
125 TEST_P(GLES2DecoderTest3
, VertexAttribI4uivImmediateValidArgs
) {
126 cmds::VertexAttribI4uivImmediate
& cmd
=
127 *GetImmediateAs
<cmds::VertexAttribI4uivImmediate
>();
128 SpecializedSetup
<cmds::VertexAttribI4uivImmediate
, 0>(true);
132 cmd
.Init(1, &temp
[0]);
133 EXPECT_CALL(*gl_
, VertexAttribI4uiv(1, reinterpret_cast<GLuint
*>(
134 ImmediateDataAddress(&cmd
))));
135 decoder_
->set_unsafe_es3_apis_enabled(true);
136 EXPECT_EQ(error::kNoError
, ExecuteImmediateCmd(cmd
, sizeof(temp
)));
137 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
138 decoder_
->set_unsafe_es3_apis_enabled(false);
139 EXPECT_EQ(error::kUnknownCommand
, ExecuteImmediateCmd(cmd
, sizeof(temp
)));
141 // TODO(gman): VertexAttribIPointer
143 // TODO(gman): VertexAttribPointer
145 TEST_P(GLES2DecoderTest3
, ViewportValidArgs
) {
146 EXPECT_CALL(*gl_
, Viewport(1, 2, 3, 4));
147 SpecializedSetup
<cmds::Viewport
, 0>(true);
149 cmd
.Init(1, 2, 3, 4);
150 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
151 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
154 TEST_P(GLES2DecoderTest3
, ViewportInvalidArgs2_0
) {
155 EXPECT_CALL(*gl_
, Viewport(_
, _
, _
, _
)).Times(0);
156 SpecializedSetup
<cmds::Viewport
, 0>(false);
158 cmd
.Init(1, 2, -1, 4);
159 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
160 EXPECT_EQ(GL_INVALID_VALUE
, GetGLError());
163 TEST_P(GLES2DecoderTest3
, ViewportInvalidArgs3_0
) {
164 EXPECT_CALL(*gl_
, Viewport(_
, _
, _
, _
)).Times(0);
165 SpecializedSetup
<cmds::Viewport
, 0>(false);
167 cmd
.Init(1, 2, 3, -1);
168 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
169 EXPECT_EQ(GL_INVALID_VALUE
, GetGLError());
171 // TODO(gman): WaitSync
173 // TODO(gman): TexStorage2DEXT
174 // TODO(gman): GenQueriesEXTImmediate
175 // TODO(gman): DeleteQueriesEXTImmediate
176 // TODO(gman): BeginQueryEXT
178 TEST_P(GLES2DecoderTest3
, BeginTransformFeedbackValidArgs
) {
179 EXPECT_CALL(*gl_
, BeginTransformFeedback(GL_POINTS
));
180 SpecializedSetup
<cmds::BeginTransformFeedback
, 0>(true);
181 cmds::BeginTransformFeedback cmd
;
183 decoder_
->set_unsafe_es3_apis_enabled(true);
184 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
185 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
186 decoder_
->set_unsafe_es3_apis_enabled(false);
187 EXPECT_EQ(error::kUnknownCommand
, ExecuteCmd(cmd
));
189 // TODO(gman): EndQueryEXT
191 TEST_P(GLES2DecoderTest3
, EndTransformFeedbackValidArgs
) {
192 EXPECT_CALL(*gl_
, EndTransformFeedback());
193 SpecializedSetup
<cmds::EndTransformFeedback
, 0>(true);
194 cmds::EndTransformFeedback cmd
;
196 decoder_
->set_unsafe_es3_apis_enabled(true);
197 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
198 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
199 decoder_
->set_unsafe_es3_apis_enabled(false);
200 EXPECT_EQ(error::kUnknownCommand
, ExecuteCmd(cmd
));
202 // TODO(gman): InsertEventMarkerEXT
204 // TODO(gman): PushGroupMarkerEXT
206 TEST_P(GLES2DecoderTest3
, PopGroupMarkerEXTValidArgs
) {
207 SpecializedSetup
<cmds::PopGroupMarkerEXT
, 0>(true);
208 cmds::PopGroupMarkerEXT cmd
;
210 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
211 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
213 // TODO(gman): GenVertexArraysOESImmediate
214 // TODO(gman): DeleteVertexArraysOESImmediate
215 // TODO(gman): IsVertexArrayOES
216 // TODO(gman): BindVertexArrayOES
217 // TODO(gman): SwapBuffers
218 // TODO(gman): GetMaxValueInBufferCHROMIUM
219 // TODO(gman): EnableFeatureCHROMIUM
221 // TODO(gman): MapBufferRange
223 // TODO(gman): UnmapBuffer
225 // TODO(gman): ResizeCHROMIUM
226 // TODO(gman): GetRequestableExtensionsCHROMIUM
228 // TODO(gman): RequestExtensionCHROMIUM
230 // TODO(gman): GetProgramInfoCHROMIUM
232 // TODO(gman): GetUniformBlocksCHROMIUM
234 // TODO(gman): GetTransformFeedbackVaryingsCHROMIUM
236 // TODO(gman): GetUniformsES3CHROMIUM
238 // TODO(gman): GetTranslatedShaderSourceANGLE
239 // TODO(gman): PostSubBufferCHROMIUM
240 // TODO(gman): TexImageIOSurface2DCHROMIUM
241 // TODO(gman): CopyTextureCHROMIUM
242 // TODO(gman): CopySubTextureCHROMIUM
243 // TODO(gman): DrawArraysInstancedANGLE
244 // TODO(gman): DrawElementsInstancedANGLE
245 // TODO(gman): VertexAttribDivisorANGLE
246 // TODO(gman): GenMailboxCHROMIUM
248 // TODO(gman): ProduceTextureCHROMIUMImmediate
249 // TODO(gman): ProduceTextureDirectCHROMIUMImmediate
250 // TODO(gman): ConsumeTextureCHROMIUMImmediate
251 // TODO(gman): CreateAndConsumeTextureCHROMIUMImmediate
252 // TODO(gman): BindUniformLocationCHROMIUMBucket
253 // TODO(gman): GenValuebuffersCHROMIUMImmediate
254 // TODO(gman): DeleteValuebuffersCHROMIUMImmediate
256 TEST_P(GLES2DecoderTest3
, IsValuebufferCHROMIUMValidArgs
) {
257 SpecializedSetup
<cmds::IsValuebufferCHROMIUM
, 0>(true);
258 cmds::IsValuebufferCHROMIUM cmd
;
259 cmd
.Init(client_valuebuffer_id_
, shared_memory_id_
, shared_memory_offset_
);
260 EXPECT_EQ(error::kNoError
, ExecuteCmd(cmd
));
261 EXPECT_EQ(GL_NO_ERROR
, GetGLError());
264 TEST_P(GLES2DecoderTest3
, IsValuebufferCHROMIUMInvalidArgsBadSharedMemoryId
) {
265 SpecializedSetup
<cmds::IsValuebufferCHROMIUM
, 0>(false);
266 cmds::IsValuebufferCHROMIUM cmd
;
267 cmd
.Init(client_valuebuffer_id_
, kInvalidSharedMemoryId
,
268 shared_memory_offset_
);
269 EXPECT_EQ(error::kOutOfBounds
, ExecuteCmd(cmd
));
270 cmd
.Init(client_valuebuffer_id_
, shared_memory_id_
,
271 kInvalidSharedMemoryOffset
);
272 EXPECT_EQ(error::kOutOfBounds
, ExecuteCmd(cmd
));
274 // TODO(gman): BindValuebufferCHROMIUM
275 // TODO(gman): SubscribeValueCHROMIUM
276 // TODO(gman): PopulateSubscribedValuesCHROMIUM
277 // TODO(gman): UniformValuebufferCHROMIUM
278 // TODO(gman): BindTexImage2DCHROMIUM
279 // TODO(gman): ReleaseTexImage2DCHROMIUM
280 // TODO(gman): TraceBeginCHROMIUM
282 // TODO(gman): TraceEndCHROMIUM
283 // TODO(gman): AsyncTexSubImage2DCHROMIUM
285 // TODO(gman): AsyncTexImage2DCHROMIUM
287 // TODO(gman): WaitAsyncTexImage2DCHROMIUM
289 // TODO(gman): WaitAllAsyncTexImage2DCHROMIUM
291 // TODO(gman): LoseContextCHROMIUM
292 // TODO(gman): InsertSyncPointCHROMIUM
294 // TODO(gman): WaitSyncPointCHROMIUM
296 // TODO(gman): DrawBuffersEXTImmediate
297 // TODO(gman): DiscardBackbufferCHROMIUM
299 // TODO(gman): ScheduleOverlayPlaneCHROMIUM
300 // TODO(gman): SwapInterval
301 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_3_AUTOGEN_H_