| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // This file is auto-generated from | 5 // This file is auto-generated from |
| 6 // gpu/command_buffer/build_gles2_cmd_buffer.py | 6 // gpu/command_buffer/build_gles2_cmd_buffer.py |
| 7 // It's formatted by clang-format using chromium coding style: | 7 // It's formatted by clang-format using chromium coding style: |
| 8 // clang-format -i -style=chromium filename | 8 // clang-format -i -style=chromium filename |
| 9 // DO NOT EDIT! | 9 // DO NOT EDIT! |
| 10 | 10 |
| 11 // It is included by gles2_cmd_decoder_unittest_1.cc | 11 // It is included by gles2_cmd_decoder_unittest_1.cc |
| 12 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_1_AUTOGEN_H_ | 12 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_1_AUTOGEN_H_ |
| 13 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_1_AUTOGEN_H_ | 13 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_1_AUTOGEN_H_ |
| 14 | 14 |
| 15 // TODO(gman): ActiveTexture | 15 // TODO(gman): ActiveTexture |
| 16 | 16 |
| 17 TEST_P(GLES2DecoderTest1, AttachShaderValidArgs) { | 17 TEST_F(GLES2DecoderTest1, AttachShaderValidArgs) { |
| 18 EXPECT_CALL(*gl_, AttachShader(kServiceProgramId, kServiceShaderId)); | 18 EXPECT_CALL(*gl_, AttachShader(kServiceProgramId, kServiceShaderId)); |
| 19 SpecializedSetup<cmds::AttachShader, 0>(true); | 19 SpecializedSetup<cmds::AttachShader, 0>(true); |
| 20 cmds::AttachShader cmd; | 20 cmds::AttachShader cmd; |
| 21 cmd.Init(client_program_id_, client_shader_id_); | 21 cmd.Init(client_program_id_, client_shader_id_); |
| 22 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 22 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 23 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 23 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 24 } | 24 } |
| 25 // TODO(gman): BindAttribLocation | 25 // TODO(gman): BindAttribLocation |
| 26 | 26 |
| 27 // TODO(gman): BindAttribLocationBucket | 27 // TODO(gman): BindAttribLocationBucket |
| 28 | 28 |
| 29 TEST_P(GLES2DecoderTest1, BindBufferValidArgs) { | 29 TEST_F(GLES2DecoderTest1, BindBufferValidArgs) { |
| 30 EXPECT_CALL(*gl_, BindBuffer(GL_ARRAY_BUFFER, kServiceBufferId)); | 30 EXPECT_CALL(*gl_, BindBuffer(GL_ARRAY_BUFFER, kServiceBufferId)); |
| 31 SpecializedSetup<cmds::BindBuffer, 0>(true); | 31 SpecializedSetup<cmds::BindBuffer, 0>(true); |
| 32 cmds::BindBuffer cmd; | 32 cmds::BindBuffer cmd; |
| 33 cmd.Init(GL_ARRAY_BUFFER, client_buffer_id_); | 33 cmd.Init(GL_ARRAY_BUFFER, client_buffer_id_); |
| 34 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 34 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 35 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 35 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 36 } | 36 } |
| 37 | 37 |
| 38 TEST_P(GLES2DecoderTest1, BindBufferValidArgsNewId) { | 38 TEST_F(GLES2DecoderTest1, BindBufferValidArgsNewId) { |
| 39 EXPECT_CALL(*gl_, BindBuffer(GL_ARRAY_BUFFER, kNewServiceId)); | 39 EXPECT_CALL(*gl_, BindBuffer(GL_ARRAY_BUFFER, kNewServiceId)); |
| 40 EXPECT_CALL(*gl_, GenBuffersARB(1, _)) | 40 EXPECT_CALL(*gl_, GenBuffersARB(1, _)) |
| 41 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 41 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 42 SpecializedSetup<cmds::BindBuffer, 0>(true); | 42 SpecializedSetup<cmds::BindBuffer, 0>(true); |
| 43 cmds::BindBuffer cmd; | 43 cmds::BindBuffer cmd; |
| 44 cmd.Init(GL_ARRAY_BUFFER, kNewClientId); | 44 cmd.Init(GL_ARRAY_BUFFER, kNewClientId); |
| 45 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 45 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 46 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 46 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 47 EXPECT_TRUE(GetBuffer(kNewClientId) != NULL); | 47 EXPECT_TRUE(GetBuffer(kNewClientId) != NULL); |
| 48 } | 48 } |
| 49 | 49 |
| 50 TEST_P(GLES2DecoderTest1, BindBufferInvalidArgs0_0) { | 50 TEST_F(GLES2DecoderTest1, BindBufferInvalidArgs0_0) { |
| 51 EXPECT_CALL(*gl_, BindBuffer(_, _)).Times(0); | 51 EXPECT_CALL(*gl_, BindBuffer(_, _)).Times(0); |
| 52 SpecializedSetup<cmds::BindBuffer, 0>(false); | 52 SpecializedSetup<cmds::BindBuffer, 0>(false); |
| 53 cmds::BindBuffer cmd; | 53 cmds::BindBuffer cmd; |
| 54 cmd.Init(GL_RENDERBUFFER, client_buffer_id_); | 54 cmd.Init(GL_RENDERBUFFER, client_buffer_id_); |
| 55 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 55 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 56 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 56 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 57 } | 57 } |
| 58 | 58 |
| 59 TEST_P(GLES2DecoderTest1, BindFramebufferValidArgs) { | 59 TEST_F(GLES2DecoderTest1, BindFramebufferValidArgs) { |
| 60 EXPECT_CALL(*gl_, BindFramebufferEXT(GL_FRAMEBUFFER, kServiceFramebufferId)); | 60 EXPECT_CALL(*gl_, BindFramebufferEXT(GL_FRAMEBUFFER, kServiceFramebufferId)); |
| 61 SpecializedSetup<cmds::BindFramebuffer, 0>(true); | 61 SpecializedSetup<cmds::BindFramebuffer, 0>(true); |
| 62 cmds::BindFramebuffer cmd; | 62 cmds::BindFramebuffer cmd; |
| 63 cmd.Init(GL_FRAMEBUFFER, client_framebuffer_id_); | 63 cmd.Init(GL_FRAMEBUFFER, client_framebuffer_id_); |
| 64 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 64 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 65 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 65 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 66 } | 66 } |
| 67 | 67 |
| 68 TEST_P(GLES2DecoderTest1, BindFramebufferValidArgsNewId) { | 68 TEST_F(GLES2DecoderTest1, BindFramebufferValidArgsNewId) { |
| 69 EXPECT_CALL(*gl_, BindFramebufferEXT(GL_FRAMEBUFFER, kNewServiceId)); | 69 EXPECT_CALL(*gl_, BindFramebufferEXT(GL_FRAMEBUFFER, kNewServiceId)); |
| 70 EXPECT_CALL(*gl_, GenFramebuffersEXT(1, _)) | 70 EXPECT_CALL(*gl_, GenFramebuffersEXT(1, _)) |
| 71 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 71 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 72 SpecializedSetup<cmds::BindFramebuffer, 0>(true); | 72 SpecializedSetup<cmds::BindFramebuffer, 0>(true); |
| 73 cmds::BindFramebuffer cmd; | 73 cmds::BindFramebuffer cmd; |
| 74 cmd.Init(GL_FRAMEBUFFER, kNewClientId); | 74 cmd.Init(GL_FRAMEBUFFER, kNewClientId); |
| 75 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 75 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 76 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 76 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 77 EXPECT_TRUE(GetFramebuffer(kNewClientId) != NULL); | 77 EXPECT_TRUE(GetFramebuffer(kNewClientId) != NULL); |
| 78 } | 78 } |
| 79 | 79 |
| 80 TEST_P(GLES2DecoderTest1, BindFramebufferInvalidArgs0_0) { | 80 TEST_F(GLES2DecoderTest1, BindFramebufferInvalidArgs0_0) { |
| 81 EXPECT_CALL(*gl_, BindFramebufferEXT(_, _)).Times(0); | 81 EXPECT_CALL(*gl_, BindFramebufferEXT(_, _)).Times(0); |
| 82 SpecializedSetup<cmds::BindFramebuffer, 0>(false); | 82 SpecializedSetup<cmds::BindFramebuffer, 0>(false); |
| 83 cmds::BindFramebuffer cmd; | 83 cmds::BindFramebuffer cmd; |
| 84 cmd.Init(GL_DRAW_FRAMEBUFFER, client_framebuffer_id_); | 84 cmd.Init(GL_DRAW_FRAMEBUFFER, client_framebuffer_id_); |
| 85 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 85 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 86 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 86 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 87 } | 87 } |
| 88 | 88 |
| 89 TEST_P(GLES2DecoderTest1, BindFramebufferInvalidArgs0_1) { | 89 TEST_F(GLES2DecoderTest1, BindFramebufferInvalidArgs0_1) { |
| 90 EXPECT_CALL(*gl_, BindFramebufferEXT(_, _)).Times(0); | 90 EXPECT_CALL(*gl_, BindFramebufferEXT(_, _)).Times(0); |
| 91 SpecializedSetup<cmds::BindFramebuffer, 0>(false); | 91 SpecializedSetup<cmds::BindFramebuffer, 0>(false); |
| 92 cmds::BindFramebuffer cmd; | 92 cmds::BindFramebuffer cmd; |
| 93 cmd.Init(GL_READ_FRAMEBUFFER, client_framebuffer_id_); | 93 cmd.Init(GL_READ_FRAMEBUFFER, client_framebuffer_id_); |
| 94 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 94 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 95 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 95 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 96 } | 96 } |
| 97 | 97 |
| 98 TEST_P(GLES2DecoderTest1, BindRenderbufferValidArgs) { | 98 TEST_F(GLES2DecoderTest1, BindRenderbufferValidArgs) { |
| 99 EXPECT_CALL(*gl_, | 99 EXPECT_CALL(*gl_, |
| 100 BindRenderbufferEXT(GL_RENDERBUFFER, kServiceRenderbufferId)); | 100 BindRenderbufferEXT(GL_RENDERBUFFER, kServiceRenderbufferId)); |
| 101 SpecializedSetup<cmds::BindRenderbuffer, 0>(true); | 101 SpecializedSetup<cmds::BindRenderbuffer, 0>(true); |
| 102 cmds::BindRenderbuffer cmd; | 102 cmds::BindRenderbuffer cmd; |
| 103 cmd.Init(GL_RENDERBUFFER, client_renderbuffer_id_); | 103 cmd.Init(GL_RENDERBUFFER, client_renderbuffer_id_); |
| 104 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 104 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 105 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 105 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 106 } | 106 } |
| 107 | 107 |
| 108 TEST_P(GLES2DecoderTest1, BindRenderbufferValidArgsNewId) { | 108 TEST_F(GLES2DecoderTest1, BindRenderbufferValidArgsNewId) { |
| 109 EXPECT_CALL(*gl_, BindRenderbufferEXT(GL_RENDERBUFFER, kNewServiceId)); | 109 EXPECT_CALL(*gl_, BindRenderbufferEXT(GL_RENDERBUFFER, kNewServiceId)); |
| 110 EXPECT_CALL(*gl_, GenRenderbuffersEXT(1, _)) | 110 EXPECT_CALL(*gl_, GenRenderbuffersEXT(1, _)) |
| 111 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 111 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 112 SpecializedSetup<cmds::BindRenderbuffer, 0>(true); | 112 SpecializedSetup<cmds::BindRenderbuffer, 0>(true); |
| 113 cmds::BindRenderbuffer cmd; | 113 cmds::BindRenderbuffer cmd; |
| 114 cmd.Init(GL_RENDERBUFFER, kNewClientId); | 114 cmd.Init(GL_RENDERBUFFER, kNewClientId); |
| 115 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 115 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 116 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 116 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 117 EXPECT_TRUE(GetRenderbuffer(kNewClientId) != NULL); | 117 EXPECT_TRUE(GetRenderbuffer(kNewClientId) != NULL); |
| 118 } | 118 } |
| 119 | 119 |
| 120 TEST_P(GLES2DecoderTest1, BindRenderbufferInvalidArgs0_0) { | 120 TEST_F(GLES2DecoderTest1, BindRenderbufferInvalidArgs0_0) { |
| 121 EXPECT_CALL(*gl_, BindRenderbufferEXT(_, _)).Times(0); | 121 EXPECT_CALL(*gl_, BindRenderbufferEXT(_, _)).Times(0); |
| 122 SpecializedSetup<cmds::BindRenderbuffer, 0>(false); | 122 SpecializedSetup<cmds::BindRenderbuffer, 0>(false); |
| 123 cmds::BindRenderbuffer cmd; | 123 cmds::BindRenderbuffer cmd; |
| 124 cmd.Init(GL_FRAMEBUFFER, client_renderbuffer_id_); | 124 cmd.Init(GL_FRAMEBUFFER, client_renderbuffer_id_); |
| 125 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 125 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 126 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 126 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 127 } | 127 } |
| 128 | 128 |
| 129 TEST_P(GLES2DecoderTest1, BindTextureValidArgs) { | 129 TEST_F(GLES2DecoderTest1, BindTextureValidArgs) { |
| 130 EXPECT_CALL(*gl_, BindTexture(GL_TEXTURE_2D, kServiceTextureId)); | 130 EXPECT_CALL(*gl_, BindTexture(GL_TEXTURE_2D, kServiceTextureId)); |
| 131 SpecializedSetup<cmds::BindTexture, 0>(true); | 131 SpecializedSetup<cmds::BindTexture, 0>(true); |
| 132 cmds::BindTexture cmd; | 132 cmds::BindTexture cmd; |
| 133 cmd.Init(GL_TEXTURE_2D, client_texture_id_); | 133 cmd.Init(GL_TEXTURE_2D, client_texture_id_); |
| 134 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 134 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 135 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 135 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 136 } | 136 } |
| 137 | 137 |
| 138 TEST_P(GLES2DecoderTest1, BindTextureValidArgsNewId) { | 138 TEST_F(GLES2DecoderTest1, BindTextureValidArgsNewId) { |
| 139 EXPECT_CALL(*gl_, BindTexture(GL_TEXTURE_2D, kNewServiceId)); | 139 EXPECT_CALL(*gl_, BindTexture(GL_TEXTURE_2D, kNewServiceId)); |
| 140 EXPECT_CALL(*gl_, GenTextures(1, _)) | 140 EXPECT_CALL(*gl_, GenTextures(1, _)) |
| 141 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 141 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 142 SpecializedSetup<cmds::BindTexture, 0>(true); | 142 SpecializedSetup<cmds::BindTexture, 0>(true); |
| 143 cmds::BindTexture cmd; | 143 cmds::BindTexture cmd; |
| 144 cmd.Init(GL_TEXTURE_2D, kNewClientId); | 144 cmd.Init(GL_TEXTURE_2D, kNewClientId); |
| 145 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 145 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 146 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 146 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 147 EXPECT_TRUE(GetTexture(kNewClientId) != NULL); | 147 EXPECT_TRUE(GetTexture(kNewClientId) != NULL); |
| 148 } | 148 } |
| 149 | 149 |
| 150 TEST_P(GLES2DecoderTest1, BindTextureInvalidArgs0_0) { | 150 TEST_F(GLES2DecoderTest1, BindTextureInvalidArgs0_0) { |
| 151 EXPECT_CALL(*gl_, BindTexture(_, _)).Times(0); | 151 EXPECT_CALL(*gl_, BindTexture(_, _)).Times(0); |
| 152 SpecializedSetup<cmds::BindTexture, 0>(false); | 152 SpecializedSetup<cmds::BindTexture, 0>(false); |
| 153 cmds::BindTexture cmd; | 153 cmds::BindTexture cmd; |
| 154 cmd.Init(GL_TEXTURE_1D, client_texture_id_); | 154 cmd.Init(GL_TEXTURE_1D, client_texture_id_); |
| 155 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 155 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 156 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 156 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 157 } | 157 } |
| 158 | 158 |
| 159 TEST_P(GLES2DecoderTest1, BindTextureInvalidArgs0_1) { | 159 TEST_F(GLES2DecoderTest1, BindTextureInvalidArgs0_1) { |
| 160 EXPECT_CALL(*gl_, BindTexture(_, _)).Times(0); | 160 EXPECT_CALL(*gl_, BindTexture(_, _)).Times(0); |
| 161 SpecializedSetup<cmds::BindTexture, 0>(false); | 161 SpecializedSetup<cmds::BindTexture, 0>(false); |
| 162 cmds::BindTexture cmd; | 162 cmds::BindTexture cmd; |
| 163 cmd.Init(GL_TEXTURE_3D, client_texture_id_); | 163 cmd.Init(GL_TEXTURE_3D, client_texture_id_); |
| 164 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 164 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 165 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 165 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 166 } | 166 } |
| 167 | 167 |
| 168 TEST_P(GLES2DecoderTest1, BlendColorValidArgs) { | 168 TEST_F(GLES2DecoderTest1, BlendColorValidArgs) { |
| 169 EXPECT_CALL(*gl_, BlendColor(1, 2, 3, 4)); | 169 EXPECT_CALL(*gl_, BlendColor(1, 2, 3, 4)); |
| 170 SpecializedSetup<cmds::BlendColor, 0>(true); | 170 SpecializedSetup<cmds::BlendColor, 0>(true); |
| 171 cmds::BlendColor cmd; | 171 cmds::BlendColor cmd; |
| 172 cmd.Init(1, 2, 3, 4); | 172 cmd.Init(1, 2, 3, 4); |
| 173 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 173 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 174 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 174 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 175 } | 175 } |
| 176 | 176 |
| 177 TEST_P(GLES2DecoderTest1, BlendEquationValidArgs) { | 177 TEST_F(GLES2DecoderTest1, BlendEquationValidArgs) { |
| 178 EXPECT_CALL(*gl_, BlendEquation(GL_FUNC_SUBTRACT)); | 178 EXPECT_CALL(*gl_, BlendEquation(GL_FUNC_SUBTRACT)); |
| 179 SpecializedSetup<cmds::BlendEquation, 0>(true); | 179 SpecializedSetup<cmds::BlendEquation, 0>(true); |
| 180 cmds::BlendEquation cmd; | 180 cmds::BlendEquation cmd; |
| 181 cmd.Init(GL_FUNC_SUBTRACT); | 181 cmd.Init(GL_FUNC_SUBTRACT); |
| 182 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 182 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 183 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 183 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 184 } | 184 } |
| 185 | 185 |
| 186 TEST_P(GLES2DecoderTest1, BlendEquationInvalidArgs0_0) { | 186 TEST_F(GLES2DecoderTest1, BlendEquationInvalidArgs0_0) { |
| 187 EXPECT_CALL(*gl_, BlendEquation(_)).Times(0); | 187 EXPECT_CALL(*gl_, BlendEquation(_)).Times(0); |
| 188 SpecializedSetup<cmds::BlendEquation, 0>(false); | 188 SpecializedSetup<cmds::BlendEquation, 0>(false); |
| 189 cmds::BlendEquation cmd; | 189 cmds::BlendEquation cmd; |
| 190 cmd.Init(GL_MIN); | 190 cmd.Init(GL_MIN); |
| 191 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 191 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 192 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 192 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 193 } | 193 } |
| 194 | 194 |
| 195 TEST_P(GLES2DecoderTest1, BlendEquationInvalidArgs0_1) { | 195 TEST_F(GLES2DecoderTest1, BlendEquationInvalidArgs0_1) { |
| 196 EXPECT_CALL(*gl_, BlendEquation(_)).Times(0); | 196 EXPECT_CALL(*gl_, BlendEquation(_)).Times(0); |
| 197 SpecializedSetup<cmds::BlendEquation, 0>(false); | 197 SpecializedSetup<cmds::BlendEquation, 0>(false); |
| 198 cmds::BlendEquation cmd; | 198 cmds::BlendEquation cmd; |
| 199 cmd.Init(GL_MAX); | 199 cmd.Init(GL_MAX); |
| 200 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 200 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 201 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 201 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 202 } | 202 } |
| 203 | 203 |
| 204 TEST_P(GLES2DecoderTest1, BlendEquationSeparateValidArgs) { | 204 TEST_F(GLES2DecoderTest1, BlendEquationSeparateValidArgs) { |
| 205 EXPECT_CALL(*gl_, BlendEquationSeparate(GL_FUNC_SUBTRACT, GL_FUNC_ADD)); | 205 EXPECT_CALL(*gl_, BlendEquationSeparate(GL_FUNC_SUBTRACT, GL_FUNC_ADD)); |
| 206 SpecializedSetup<cmds::BlendEquationSeparate, 0>(true); | 206 SpecializedSetup<cmds::BlendEquationSeparate, 0>(true); |
| 207 cmds::BlendEquationSeparate cmd; | 207 cmds::BlendEquationSeparate cmd; |
| 208 cmd.Init(GL_FUNC_SUBTRACT, GL_FUNC_ADD); | 208 cmd.Init(GL_FUNC_SUBTRACT, GL_FUNC_ADD); |
| 209 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 209 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 210 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 210 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 211 } | 211 } |
| 212 | 212 |
| 213 TEST_P(GLES2DecoderTest1, BlendEquationSeparateInvalidArgs0_0) { | 213 TEST_F(GLES2DecoderTest1, BlendEquationSeparateInvalidArgs0_0) { |
| 214 EXPECT_CALL(*gl_, BlendEquationSeparate(_, _)).Times(0); | 214 EXPECT_CALL(*gl_, BlendEquationSeparate(_, _)).Times(0); |
| 215 SpecializedSetup<cmds::BlendEquationSeparate, 0>(false); | 215 SpecializedSetup<cmds::BlendEquationSeparate, 0>(false); |
| 216 cmds::BlendEquationSeparate cmd; | 216 cmds::BlendEquationSeparate cmd; |
| 217 cmd.Init(GL_MIN, GL_FUNC_ADD); | 217 cmd.Init(GL_MIN, GL_FUNC_ADD); |
| 218 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 218 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 219 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 219 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 220 } | 220 } |
| 221 | 221 |
| 222 TEST_P(GLES2DecoderTest1, BlendEquationSeparateInvalidArgs0_1) { | 222 TEST_F(GLES2DecoderTest1, BlendEquationSeparateInvalidArgs0_1) { |
| 223 EXPECT_CALL(*gl_, BlendEquationSeparate(_, _)).Times(0); | 223 EXPECT_CALL(*gl_, BlendEquationSeparate(_, _)).Times(0); |
| 224 SpecializedSetup<cmds::BlendEquationSeparate, 0>(false); | 224 SpecializedSetup<cmds::BlendEquationSeparate, 0>(false); |
| 225 cmds::BlendEquationSeparate cmd; | 225 cmds::BlendEquationSeparate cmd; |
| 226 cmd.Init(GL_MAX, GL_FUNC_ADD); | 226 cmd.Init(GL_MAX, GL_FUNC_ADD); |
| 227 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 227 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 228 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 228 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 229 } | 229 } |
| 230 | 230 |
| 231 TEST_P(GLES2DecoderTest1, BlendEquationSeparateInvalidArgs1_0) { | 231 TEST_F(GLES2DecoderTest1, BlendEquationSeparateInvalidArgs1_0) { |
| 232 EXPECT_CALL(*gl_, BlendEquationSeparate(_, _)).Times(0); | 232 EXPECT_CALL(*gl_, BlendEquationSeparate(_, _)).Times(0); |
| 233 SpecializedSetup<cmds::BlendEquationSeparate, 0>(false); | 233 SpecializedSetup<cmds::BlendEquationSeparate, 0>(false); |
| 234 cmds::BlendEquationSeparate cmd; | 234 cmds::BlendEquationSeparate cmd; |
| 235 cmd.Init(GL_FUNC_SUBTRACT, GL_MIN); | 235 cmd.Init(GL_FUNC_SUBTRACT, GL_MIN); |
| 236 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 236 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 237 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 237 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 238 } | 238 } |
| 239 | 239 |
| 240 TEST_P(GLES2DecoderTest1, BlendEquationSeparateInvalidArgs1_1) { | 240 TEST_F(GLES2DecoderTest1, BlendEquationSeparateInvalidArgs1_1) { |
| 241 EXPECT_CALL(*gl_, BlendEquationSeparate(_, _)).Times(0); | 241 EXPECT_CALL(*gl_, BlendEquationSeparate(_, _)).Times(0); |
| 242 SpecializedSetup<cmds::BlendEquationSeparate, 0>(false); | 242 SpecializedSetup<cmds::BlendEquationSeparate, 0>(false); |
| 243 cmds::BlendEquationSeparate cmd; | 243 cmds::BlendEquationSeparate cmd; |
| 244 cmd.Init(GL_FUNC_SUBTRACT, GL_MAX); | 244 cmd.Init(GL_FUNC_SUBTRACT, GL_MAX); |
| 245 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 245 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 246 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 246 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 247 } | 247 } |
| 248 | 248 |
| 249 TEST_P(GLES2DecoderTest1, BlendFuncValidArgs) { | 249 TEST_F(GLES2DecoderTest1, BlendFuncValidArgs) { |
| 250 EXPECT_CALL(*gl_, BlendFunc(GL_ZERO, GL_ZERO)); | 250 EXPECT_CALL(*gl_, BlendFunc(GL_ZERO, GL_ZERO)); |
| 251 SpecializedSetup<cmds::BlendFunc, 0>(true); | 251 SpecializedSetup<cmds::BlendFunc, 0>(true); |
| 252 cmds::BlendFunc cmd; | 252 cmds::BlendFunc cmd; |
| 253 cmd.Init(GL_ZERO, GL_ZERO); | 253 cmd.Init(GL_ZERO, GL_ZERO); |
| 254 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 254 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 255 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 255 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 256 } | 256 } |
| 257 | 257 |
| 258 TEST_P(GLES2DecoderTest1, BlendFuncSeparateValidArgs) { | 258 TEST_F(GLES2DecoderTest1, BlendFuncSeparateValidArgs) { |
| 259 EXPECT_CALL(*gl_, BlendFuncSeparate(GL_ZERO, GL_ZERO, GL_ZERO, GL_ZERO)); | 259 EXPECT_CALL(*gl_, BlendFuncSeparate(GL_ZERO, GL_ZERO, GL_ZERO, GL_ZERO)); |
| 260 SpecializedSetup<cmds::BlendFuncSeparate, 0>(true); | 260 SpecializedSetup<cmds::BlendFuncSeparate, 0>(true); |
| 261 cmds::BlendFuncSeparate cmd; | 261 cmds::BlendFuncSeparate cmd; |
| 262 cmd.Init(GL_ZERO, GL_ZERO, GL_ZERO, GL_ZERO); | 262 cmd.Init(GL_ZERO, GL_ZERO, GL_ZERO, GL_ZERO); |
| 263 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 263 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 264 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 264 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 265 } | 265 } |
| 266 // TODO(gman): BufferData | 266 // TODO(gman): BufferData |
| 267 | 267 |
| 268 // TODO(gman): BufferSubData | 268 // TODO(gman): BufferSubData |
| 269 | 269 |
| 270 TEST_P(GLES2DecoderTest1, CheckFramebufferStatusValidArgs) { | 270 TEST_F(GLES2DecoderTest1, CheckFramebufferStatusValidArgs) { |
| 271 EXPECT_CALL(*gl_, CheckFramebufferStatusEXT(GL_FRAMEBUFFER)); | 271 EXPECT_CALL(*gl_, CheckFramebufferStatusEXT(GL_FRAMEBUFFER)); |
| 272 SpecializedSetup<cmds::CheckFramebufferStatus, 0>(true); | 272 SpecializedSetup<cmds::CheckFramebufferStatus, 0>(true); |
| 273 cmds::CheckFramebufferStatus cmd; | 273 cmds::CheckFramebufferStatus cmd; |
| 274 cmd.Init(GL_FRAMEBUFFER, shared_memory_id_, shared_memory_offset_); | 274 cmd.Init(GL_FRAMEBUFFER, shared_memory_id_, shared_memory_offset_); |
| 275 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 275 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 276 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 276 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 277 } | 277 } |
| 278 | 278 |
| 279 TEST_P(GLES2DecoderTest1, CheckFramebufferStatusInvalidArgs0_0) { | 279 TEST_F(GLES2DecoderTest1, CheckFramebufferStatusInvalidArgs0_0) { |
| 280 EXPECT_CALL(*gl_, CheckFramebufferStatusEXT(_)).Times(0); | 280 EXPECT_CALL(*gl_, CheckFramebufferStatusEXT(_)).Times(0); |
| 281 SpecializedSetup<cmds::CheckFramebufferStatus, 0>(false); | 281 SpecializedSetup<cmds::CheckFramebufferStatus, 0>(false); |
| 282 cmds::CheckFramebufferStatus cmd; | 282 cmds::CheckFramebufferStatus cmd; |
| 283 cmd.Init(GL_DRAW_FRAMEBUFFER, shared_memory_id_, shared_memory_offset_); | 283 cmd.Init(GL_DRAW_FRAMEBUFFER, shared_memory_id_, shared_memory_offset_); |
| 284 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 284 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 285 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 285 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 286 } | 286 } |
| 287 | 287 |
| 288 TEST_P(GLES2DecoderTest1, CheckFramebufferStatusInvalidArgs0_1) { | 288 TEST_F(GLES2DecoderTest1, CheckFramebufferStatusInvalidArgs0_1) { |
| 289 EXPECT_CALL(*gl_, CheckFramebufferStatusEXT(_)).Times(0); | 289 EXPECT_CALL(*gl_, CheckFramebufferStatusEXT(_)).Times(0); |
| 290 SpecializedSetup<cmds::CheckFramebufferStatus, 0>(false); | 290 SpecializedSetup<cmds::CheckFramebufferStatus, 0>(false); |
| 291 cmds::CheckFramebufferStatus cmd; | 291 cmds::CheckFramebufferStatus cmd; |
| 292 cmd.Init(GL_READ_FRAMEBUFFER, shared_memory_id_, shared_memory_offset_); | 292 cmd.Init(GL_READ_FRAMEBUFFER, shared_memory_id_, shared_memory_offset_); |
| 293 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 293 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 294 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 294 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 295 } | 295 } |
| 296 | 296 |
| 297 TEST_P(GLES2DecoderTest1, CheckFramebufferStatusInvalidArgsBadSharedMemoryId) { | 297 TEST_F(GLES2DecoderTest1, CheckFramebufferStatusInvalidArgsBadSharedMemoryId) { |
| 298 EXPECT_CALL(*gl_, CheckFramebufferStatusEXT(GL_FRAMEBUFFER)).Times(0); | 298 EXPECT_CALL(*gl_, CheckFramebufferStatusEXT(GL_FRAMEBUFFER)).Times(0); |
| 299 SpecializedSetup<cmds::CheckFramebufferStatus, 0>(false); | 299 SpecializedSetup<cmds::CheckFramebufferStatus, 0>(false); |
| 300 cmds::CheckFramebufferStatus cmd; | 300 cmds::CheckFramebufferStatus cmd; |
| 301 cmd.Init(GL_FRAMEBUFFER, kInvalidSharedMemoryId, shared_memory_offset_); | 301 cmd.Init(GL_FRAMEBUFFER, kInvalidSharedMemoryId, shared_memory_offset_); |
| 302 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 302 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 303 cmd.Init(GL_FRAMEBUFFER, shared_memory_id_, kInvalidSharedMemoryOffset); | 303 cmd.Init(GL_FRAMEBUFFER, shared_memory_id_, kInvalidSharedMemoryOffset); |
| 304 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 304 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 305 } | 305 } |
| 306 | 306 |
| 307 TEST_P(GLES2DecoderTest1, ClearValidArgs) { | 307 TEST_F(GLES2DecoderTest1, ClearValidArgs) { |
| 308 EXPECT_CALL(*gl_, Clear(1)); | 308 EXPECT_CALL(*gl_, Clear(1)); |
| 309 SpecializedSetup<cmds::Clear, 0>(true); | 309 SpecializedSetup<cmds::Clear, 0>(true); |
| 310 cmds::Clear cmd; | 310 cmds::Clear cmd; |
| 311 cmd.Init(1); | 311 cmd.Init(1); |
| 312 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 312 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 313 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 313 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 314 } | 314 } |
| 315 | 315 |
| 316 TEST_P(GLES2DecoderTest1, ClearColorValidArgs) { | 316 TEST_F(GLES2DecoderTest1, ClearColorValidArgs) { |
| 317 EXPECT_CALL(*gl_, ClearColor(1, 2, 3, 4)); | 317 EXPECT_CALL(*gl_, ClearColor(1, 2, 3, 4)); |
| 318 SpecializedSetup<cmds::ClearColor, 0>(true); | 318 SpecializedSetup<cmds::ClearColor, 0>(true); |
| 319 cmds::ClearColor cmd; | 319 cmds::ClearColor cmd; |
| 320 cmd.Init(1, 2, 3, 4); | 320 cmd.Init(1, 2, 3, 4); |
| 321 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 321 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 322 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 322 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 323 } | 323 } |
| 324 | 324 |
| 325 TEST_P(GLES2DecoderTest1, ClearDepthfValidArgs) { | 325 TEST_F(GLES2DecoderTest1, ClearDepthfValidArgs) { |
| 326 EXPECT_CALL(*gl_, ClearDepth(0.5f)); | 326 EXPECT_CALL(*gl_, ClearDepth(0.5f)); |
| 327 SpecializedSetup<cmds::ClearDepthf, 0>(true); | 327 SpecializedSetup<cmds::ClearDepthf, 0>(true); |
| 328 cmds::ClearDepthf cmd; | 328 cmds::ClearDepthf cmd; |
| 329 cmd.Init(0.5f); | 329 cmd.Init(0.5f); |
| 330 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 330 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 331 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 331 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 332 } | 332 } |
| 333 | 333 |
| 334 TEST_P(GLES2DecoderTest1, ClearStencilValidArgs) { | 334 TEST_F(GLES2DecoderTest1, ClearStencilValidArgs) { |
| 335 EXPECT_CALL(*gl_, ClearStencil(1)); | 335 EXPECT_CALL(*gl_, ClearStencil(1)); |
| 336 SpecializedSetup<cmds::ClearStencil, 0>(true); | 336 SpecializedSetup<cmds::ClearStencil, 0>(true); |
| 337 cmds::ClearStencil cmd; | 337 cmds::ClearStencil cmd; |
| 338 cmd.Init(1); | 338 cmd.Init(1); |
| 339 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 339 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 340 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 340 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 341 } | 341 } |
| 342 | 342 |
| 343 TEST_P(GLES2DecoderTest1, ColorMaskValidArgs) { | 343 TEST_F(GLES2DecoderTest1, ColorMaskValidArgs) { |
| 344 SpecializedSetup<cmds::ColorMask, 0>(true); | 344 SpecializedSetup<cmds::ColorMask, 0>(true); |
| 345 cmds::ColorMask cmd; | 345 cmds::ColorMask cmd; |
| 346 cmd.Init(true, true, true, true); | 346 cmd.Init(true, true, true, true); |
| 347 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 347 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 348 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 348 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 349 } | 349 } |
| 350 // TODO(gman): CompileShader | 350 // TODO(gman): CompileShader |
| 351 // TODO(gman): CompressedTexImage2D | 351 // TODO(gman): CompressedTexImage2D |
| 352 | 352 |
| 353 // TODO(gman): CompressedTexImage2DBucket | 353 // TODO(gman): CompressedTexImage2DBucket |
| 354 // TODO(gman): CompressedTexSubImage2D | 354 // TODO(gman): CompressedTexSubImage2D |
| 355 | 355 |
| 356 // TODO(gman): CompressedTexSubImage2DBucket | 356 // TODO(gman): CompressedTexSubImage2DBucket |
| 357 // TODO(gman): CopyTexImage2D | 357 // TODO(gman): CopyTexImage2D |
| 358 | 358 |
| 359 TEST_P(GLES2DecoderTest1, CopyTexSubImage2DValidArgs) { | 359 TEST_F(GLES2DecoderTest1, CopyTexSubImage2DValidArgs) { |
| 360 EXPECT_CALL(*gl_, CopyTexSubImage2D(GL_TEXTURE_2D, 2, 3, 4, 5, 6, 7, 8)); | 360 EXPECT_CALL(*gl_, CopyTexSubImage2D(GL_TEXTURE_2D, 2, 3, 4, 5, 6, 7, 8)); |
| 361 SpecializedSetup<cmds::CopyTexSubImage2D, 0>(true); | 361 SpecializedSetup<cmds::CopyTexSubImage2D, 0>(true); |
| 362 cmds::CopyTexSubImage2D cmd; | 362 cmds::CopyTexSubImage2D cmd; |
| 363 cmd.Init(GL_TEXTURE_2D, 2, 3, 4, 5, 6, 7, 8); | 363 cmd.Init(GL_TEXTURE_2D, 2, 3, 4, 5, 6, 7, 8); |
| 364 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 364 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 365 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 365 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 366 } | 366 } |
| 367 | 367 |
| 368 TEST_P(GLES2DecoderTest1, CopyTexSubImage2DInvalidArgs0_0) { | 368 TEST_F(GLES2DecoderTest1, CopyTexSubImage2DInvalidArgs0_0) { |
| 369 EXPECT_CALL(*gl_, CopyTexSubImage2D(_, _, _, _, _, _, _, _)).Times(0); | 369 EXPECT_CALL(*gl_, CopyTexSubImage2D(_, _, _, _, _, _, _, _)).Times(0); |
| 370 SpecializedSetup<cmds::CopyTexSubImage2D, 0>(false); | 370 SpecializedSetup<cmds::CopyTexSubImage2D, 0>(false); |
| 371 cmds::CopyTexSubImage2D cmd; | 371 cmds::CopyTexSubImage2D cmd; |
| 372 cmd.Init(GL_PROXY_TEXTURE_CUBE_MAP, 2, 3, 4, 5, 6, 7, 8); | 372 cmd.Init(GL_PROXY_TEXTURE_CUBE_MAP, 2, 3, 4, 5, 6, 7, 8); |
| 373 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 373 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 374 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 374 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 375 } | 375 } |
| 376 | 376 |
| 377 TEST_P(GLES2DecoderTest1, CopyTexSubImage2DInvalidArgs6_0) { | 377 TEST_F(GLES2DecoderTest1, CopyTexSubImage2DInvalidArgs6_0) { |
| 378 EXPECT_CALL(*gl_, CopyTexSubImage2D(_, _, _, _, _, _, _, _)).Times(0); | 378 EXPECT_CALL(*gl_, CopyTexSubImage2D(_, _, _, _, _, _, _, _)).Times(0); |
| 379 SpecializedSetup<cmds::CopyTexSubImage2D, 0>(false); | 379 SpecializedSetup<cmds::CopyTexSubImage2D, 0>(false); |
| 380 cmds::CopyTexSubImage2D cmd; | 380 cmds::CopyTexSubImage2D cmd; |
| 381 cmd.Init(GL_TEXTURE_2D, 2, 3, 4, 5, 6, -1, 8); | 381 cmd.Init(GL_TEXTURE_2D, 2, 3, 4, 5, 6, -1, 8); |
| 382 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 382 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 383 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); | 383 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
| 384 } | 384 } |
| 385 | 385 |
| 386 TEST_P(GLES2DecoderTest1, CopyTexSubImage2DInvalidArgs7_0) { | 386 TEST_F(GLES2DecoderTest1, CopyTexSubImage2DInvalidArgs7_0) { |
| 387 EXPECT_CALL(*gl_, CopyTexSubImage2D(_, _, _, _, _, _, _, _)).Times(0); | 387 EXPECT_CALL(*gl_, CopyTexSubImage2D(_, _, _, _, _, _, _, _)).Times(0); |
| 388 SpecializedSetup<cmds::CopyTexSubImage2D, 0>(false); | 388 SpecializedSetup<cmds::CopyTexSubImage2D, 0>(false); |
| 389 cmds::CopyTexSubImage2D cmd; | 389 cmds::CopyTexSubImage2D cmd; |
| 390 cmd.Init(GL_TEXTURE_2D, 2, 3, 4, 5, 6, 7, -1); | 390 cmd.Init(GL_TEXTURE_2D, 2, 3, 4, 5, 6, 7, -1); |
| 391 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 391 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 392 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); | 392 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
| 393 } | 393 } |
| 394 | 394 |
| 395 TEST_P(GLES2DecoderTest1, CreateProgramValidArgs) { | 395 TEST_F(GLES2DecoderTest1, CreateProgramValidArgs) { |
| 396 EXPECT_CALL(*gl_, CreateProgram()).WillOnce(Return(kNewServiceId)); | 396 EXPECT_CALL(*gl_, CreateProgram()).WillOnce(Return(kNewServiceId)); |
| 397 SpecializedSetup<cmds::CreateProgram, 0>(true); | 397 SpecializedSetup<cmds::CreateProgram, 0>(true); |
| 398 cmds::CreateProgram cmd; | 398 cmds::CreateProgram cmd; |
| 399 cmd.Init(kNewClientId); | 399 cmd.Init(kNewClientId); |
| 400 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 400 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 401 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 401 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 402 EXPECT_TRUE(GetProgram(kNewClientId) != NULL); | 402 EXPECT_TRUE(GetProgram(kNewClientId) != NULL); |
| 403 } | 403 } |
| 404 | 404 |
| 405 TEST_P(GLES2DecoderTest1, CreateShaderValidArgs) { | 405 TEST_F(GLES2DecoderTest1, CreateShaderValidArgs) { |
| 406 EXPECT_CALL(*gl_, CreateShader(GL_VERTEX_SHADER)) | 406 EXPECT_CALL(*gl_, CreateShader(GL_VERTEX_SHADER)) |
| 407 .WillOnce(Return(kNewServiceId)); | 407 .WillOnce(Return(kNewServiceId)); |
| 408 SpecializedSetup<cmds::CreateShader, 0>(true); | 408 SpecializedSetup<cmds::CreateShader, 0>(true); |
| 409 cmds::CreateShader cmd; | 409 cmds::CreateShader cmd; |
| 410 cmd.Init(GL_VERTEX_SHADER, kNewClientId); | 410 cmd.Init(GL_VERTEX_SHADER, kNewClientId); |
| 411 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 411 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 412 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 412 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 413 EXPECT_TRUE(GetShader(kNewClientId) != NULL); | 413 EXPECT_TRUE(GetShader(kNewClientId) != NULL); |
| 414 } | 414 } |
| 415 | 415 |
| 416 TEST_P(GLES2DecoderTest1, CreateShaderInvalidArgs0_0) { | 416 TEST_F(GLES2DecoderTest1, CreateShaderInvalidArgs0_0) { |
| 417 EXPECT_CALL(*gl_, CreateShader(_)).Times(0); | 417 EXPECT_CALL(*gl_, CreateShader(_)).Times(0); |
| 418 SpecializedSetup<cmds::CreateShader, 0>(false); | 418 SpecializedSetup<cmds::CreateShader, 0>(false); |
| 419 cmds::CreateShader cmd; | 419 cmds::CreateShader cmd; |
| 420 cmd.Init(GL_GEOMETRY_SHADER, kNewClientId); | 420 cmd.Init(GL_GEOMETRY_SHADER, kNewClientId); |
| 421 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 421 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 422 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 422 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 423 } | 423 } |
| 424 | 424 |
| 425 TEST_P(GLES2DecoderTest1, CullFaceValidArgs) { | 425 TEST_F(GLES2DecoderTest1, CullFaceValidArgs) { |
| 426 EXPECT_CALL(*gl_, CullFace(GL_FRONT)); | 426 EXPECT_CALL(*gl_, CullFace(GL_FRONT)); |
| 427 SpecializedSetup<cmds::CullFace, 0>(true); | 427 SpecializedSetup<cmds::CullFace, 0>(true); |
| 428 cmds::CullFace cmd; | 428 cmds::CullFace cmd; |
| 429 cmd.Init(GL_FRONT); | 429 cmd.Init(GL_FRONT); |
| 430 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 430 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 431 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 431 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 432 } | 432 } |
| 433 | 433 |
| 434 TEST_P(GLES2DecoderTest1, DeleteBuffersValidArgs) { | 434 TEST_F(GLES2DecoderTest1, DeleteBuffersValidArgs) { |
| 435 EXPECT_CALL(*gl_, DeleteBuffersARB(1, Pointee(kServiceBufferId))).Times(1); | 435 EXPECT_CALL(*gl_, DeleteBuffersARB(1, Pointee(kServiceBufferId))).Times(1); |
| 436 GetSharedMemoryAs<GLuint*>()[0] = client_buffer_id_; | 436 GetSharedMemoryAs<GLuint*>()[0] = client_buffer_id_; |
| 437 SpecializedSetup<cmds::DeleteBuffers, 0>(true); | 437 SpecializedSetup<cmds::DeleteBuffers, 0>(true); |
| 438 cmds::DeleteBuffers cmd; | 438 cmds::DeleteBuffers cmd; |
| 439 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 439 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 440 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 440 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 441 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 441 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 442 EXPECT_TRUE(GetBuffer(client_buffer_id_) == NULL); | 442 EXPECT_TRUE(GetBuffer(client_buffer_id_) == NULL); |
| 443 } | 443 } |
| 444 | 444 |
| 445 TEST_P(GLES2DecoderTest1, DeleteBuffersInvalidArgs) { | 445 TEST_F(GLES2DecoderTest1, DeleteBuffersInvalidArgs) { |
| 446 GetSharedMemoryAs<GLuint*>()[0] = kInvalidClientId; | 446 GetSharedMemoryAs<GLuint*>()[0] = kInvalidClientId; |
| 447 SpecializedSetup<cmds::DeleteBuffers, 0>(false); | 447 SpecializedSetup<cmds::DeleteBuffers, 0>(false); |
| 448 cmds::DeleteBuffers cmd; | 448 cmds::DeleteBuffers cmd; |
| 449 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 449 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 450 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 450 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 451 } | 451 } |
| 452 | 452 |
| 453 TEST_P(GLES2DecoderTest1, DeleteBuffersImmediateValidArgs) { | 453 TEST_F(GLES2DecoderTest1, DeleteBuffersImmediateValidArgs) { |
| 454 EXPECT_CALL(*gl_, DeleteBuffersARB(1, Pointee(kServiceBufferId))).Times(1); | 454 EXPECT_CALL(*gl_, DeleteBuffersARB(1, Pointee(kServiceBufferId))).Times(1); |
| 455 cmds::DeleteBuffersImmediate& cmd = | 455 cmds::DeleteBuffersImmediate& cmd = |
| 456 *GetImmediateAs<cmds::DeleteBuffersImmediate>(); | 456 *GetImmediateAs<cmds::DeleteBuffersImmediate>(); |
| 457 SpecializedSetup<cmds::DeleteBuffersImmediate, 0>(true); | 457 SpecializedSetup<cmds::DeleteBuffersImmediate, 0>(true); |
| 458 cmd.Init(1, &client_buffer_id_); | 458 cmd.Init(1, &client_buffer_id_); |
| 459 EXPECT_EQ(error::kNoError, | 459 EXPECT_EQ(error::kNoError, |
| 460 ExecuteImmediateCmd(cmd, sizeof(client_buffer_id_))); | 460 ExecuteImmediateCmd(cmd, sizeof(client_buffer_id_))); |
| 461 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 461 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 462 EXPECT_TRUE(GetBuffer(client_buffer_id_) == NULL); | 462 EXPECT_TRUE(GetBuffer(client_buffer_id_) == NULL); |
| 463 } | 463 } |
| 464 | 464 |
| 465 TEST_P(GLES2DecoderTest1, DeleteBuffersImmediateInvalidArgs) { | 465 TEST_F(GLES2DecoderTest1, DeleteBuffersImmediateInvalidArgs) { |
| 466 cmds::DeleteBuffersImmediate& cmd = | 466 cmds::DeleteBuffersImmediate& cmd = |
| 467 *GetImmediateAs<cmds::DeleteBuffersImmediate>(); | 467 *GetImmediateAs<cmds::DeleteBuffersImmediate>(); |
| 468 SpecializedSetup<cmds::DeleteBuffersImmediate, 0>(false); | 468 SpecializedSetup<cmds::DeleteBuffersImmediate, 0>(false); |
| 469 GLuint temp = kInvalidClientId; | 469 GLuint temp = kInvalidClientId; |
| 470 cmd.Init(1, &temp); | 470 cmd.Init(1, &temp); |
| 471 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); | 471 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); |
| 472 } | 472 } |
| 473 | 473 |
| 474 TEST_P(GLES2DecoderTest1, DeleteFramebuffersValidArgs) { | 474 TEST_F(GLES2DecoderTest1, DeleteFramebuffersValidArgs) { |
| 475 EXPECT_CALL(*gl_, DeleteFramebuffersEXT(1, Pointee(kServiceFramebufferId))) | 475 EXPECT_CALL(*gl_, DeleteFramebuffersEXT(1, Pointee(kServiceFramebufferId))) |
| 476 .Times(1); | 476 .Times(1); |
| 477 GetSharedMemoryAs<GLuint*>()[0] = client_framebuffer_id_; | 477 GetSharedMemoryAs<GLuint*>()[0] = client_framebuffer_id_; |
| 478 SpecializedSetup<cmds::DeleteFramebuffers, 0>(true); | 478 SpecializedSetup<cmds::DeleteFramebuffers, 0>(true); |
| 479 cmds::DeleteFramebuffers cmd; | 479 cmds::DeleteFramebuffers cmd; |
| 480 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 480 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 481 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 481 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 482 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 482 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 483 EXPECT_TRUE(GetFramebuffer(client_framebuffer_id_) == NULL); | 483 EXPECT_TRUE(GetFramebuffer(client_framebuffer_id_) == NULL); |
| 484 } | 484 } |
| 485 | 485 |
| 486 TEST_P(GLES2DecoderTest1, DeleteFramebuffersInvalidArgs) { | 486 TEST_F(GLES2DecoderTest1, DeleteFramebuffersInvalidArgs) { |
| 487 GetSharedMemoryAs<GLuint*>()[0] = kInvalidClientId; | 487 GetSharedMemoryAs<GLuint*>()[0] = kInvalidClientId; |
| 488 SpecializedSetup<cmds::DeleteFramebuffers, 0>(false); | 488 SpecializedSetup<cmds::DeleteFramebuffers, 0>(false); |
| 489 cmds::DeleteFramebuffers cmd; | 489 cmds::DeleteFramebuffers cmd; |
| 490 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 490 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 491 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 491 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 492 } | 492 } |
| 493 | 493 |
| 494 TEST_P(GLES2DecoderTest1, DeleteFramebuffersImmediateValidArgs) { | 494 TEST_F(GLES2DecoderTest1, DeleteFramebuffersImmediateValidArgs) { |
| 495 EXPECT_CALL(*gl_, DeleteFramebuffersEXT(1, Pointee(kServiceFramebufferId))) | 495 EXPECT_CALL(*gl_, DeleteFramebuffersEXT(1, Pointee(kServiceFramebufferId))) |
| 496 .Times(1); | 496 .Times(1); |
| 497 cmds::DeleteFramebuffersImmediate& cmd = | 497 cmds::DeleteFramebuffersImmediate& cmd = |
| 498 *GetImmediateAs<cmds::DeleteFramebuffersImmediate>(); | 498 *GetImmediateAs<cmds::DeleteFramebuffersImmediate>(); |
| 499 SpecializedSetup<cmds::DeleteFramebuffersImmediate, 0>(true); | 499 SpecializedSetup<cmds::DeleteFramebuffersImmediate, 0>(true); |
| 500 cmd.Init(1, &client_framebuffer_id_); | 500 cmd.Init(1, &client_framebuffer_id_); |
| 501 EXPECT_EQ(error::kNoError, | 501 EXPECT_EQ(error::kNoError, |
| 502 ExecuteImmediateCmd(cmd, sizeof(client_framebuffer_id_))); | 502 ExecuteImmediateCmd(cmd, sizeof(client_framebuffer_id_))); |
| 503 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 503 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 504 EXPECT_TRUE(GetFramebuffer(client_framebuffer_id_) == NULL); | 504 EXPECT_TRUE(GetFramebuffer(client_framebuffer_id_) == NULL); |
| 505 } | 505 } |
| 506 | 506 |
| 507 TEST_P(GLES2DecoderTest1, DeleteFramebuffersImmediateInvalidArgs) { | 507 TEST_F(GLES2DecoderTest1, DeleteFramebuffersImmediateInvalidArgs) { |
| 508 cmds::DeleteFramebuffersImmediate& cmd = | 508 cmds::DeleteFramebuffersImmediate& cmd = |
| 509 *GetImmediateAs<cmds::DeleteFramebuffersImmediate>(); | 509 *GetImmediateAs<cmds::DeleteFramebuffersImmediate>(); |
| 510 SpecializedSetup<cmds::DeleteFramebuffersImmediate, 0>(false); | 510 SpecializedSetup<cmds::DeleteFramebuffersImmediate, 0>(false); |
| 511 GLuint temp = kInvalidClientId; | 511 GLuint temp = kInvalidClientId; |
| 512 cmd.Init(1, &temp); | 512 cmd.Init(1, &temp); |
| 513 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); | 513 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); |
| 514 } | 514 } |
| 515 | 515 |
| 516 TEST_P(GLES2DecoderTest1, DeleteProgramValidArgs) { | 516 TEST_F(GLES2DecoderTest1, DeleteProgramValidArgs) { |
| 517 EXPECT_CALL(*gl_, DeleteProgram(kServiceProgramId)); | 517 EXPECT_CALL(*gl_, DeleteProgram(kServiceProgramId)); |
| 518 SpecializedSetup<cmds::DeleteProgram, 0>(true); | 518 SpecializedSetup<cmds::DeleteProgram, 0>(true); |
| 519 cmds::DeleteProgram cmd; | 519 cmds::DeleteProgram cmd; |
| 520 cmd.Init(client_program_id_); | 520 cmd.Init(client_program_id_); |
| 521 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 521 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 522 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 522 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 523 } | 523 } |
| 524 | 524 |
| 525 TEST_P(GLES2DecoderTest1, DeleteRenderbuffersValidArgs) { | 525 TEST_F(GLES2DecoderTest1, DeleteRenderbuffersValidArgs) { |
| 526 EXPECT_CALL(*gl_, DeleteRenderbuffersEXT(1, Pointee(kServiceRenderbufferId))) | 526 EXPECT_CALL(*gl_, DeleteRenderbuffersEXT(1, Pointee(kServiceRenderbufferId))) |
| 527 .Times(1); | 527 .Times(1); |
| 528 GetSharedMemoryAs<GLuint*>()[0] = client_renderbuffer_id_; | 528 GetSharedMemoryAs<GLuint*>()[0] = client_renderbuffer_id_; |
| 529 SpecializedSetup<cmds::DeleteRenderbuffers, 0>(true); | 529 SpecializedSetup<cmds::DeleteRenderbuffers, 0>(true); |
| 530 cmds::DeleteRenderbuffers cmd; | 530 cmds::DeleteRenderbuffers cmd; |
| 531 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 531 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 532 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 532 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 533 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 533 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 534 EXPECT_TRUE(GetRenderbuffer(client_renderbuffer_id_) == NULL); | 534 EXPECT_TRUE(GetRenderbuffer(client_renderbuffer_id_) == NULL); |
| 535 } | 535 } |
| 536 | 536 |
| 537 TEST_P(GLES2DecoderTest1, DeleteRenderbuffersInvalidArgs) { | 537 TEST_F(GLES2DecoderTest1, DeleteRenderbuffersInvalidArgs) { |
| 538 GetSharedMemoryAs<GLuint*>()[0] = kInvalidClientId; | 538 GetSharedMemoryAs<GLuint*>()[0] = kInvalidClientId; |
| 539 SpecializedSetup<cmds::DeleteRenderbuffers, 0>(false); | 539 SpecializedSetup<cmds::DeleteRenderbuffers, 0>(false); |
| 540 cmds::DeleteRenderbuffers cmd; | 540 cmds::DeleteRenderbuffers cmd; |
| 541 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 541 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 542 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 542 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 543 } | 543 } |
| 544 | 544 |
| 545 TEST_P(GLES2DecoderTest1, DeleteRenderbuffersImmediateValidArgs) { | 545 TEST_F(GLES2DecoderTest1, DeleteRenderbuffersImmediateValidArgs) { |
| 546 EXPECT_CALL(*gl_, DeleteRenderbuffersEXT(1, Pointee(kServiceRenderbufferId))) | 546 EXPECT_CALL(*gl_, DeleteRenderbuffersEXT(1, Pointee(kServiceRenderbufferId))) |
| 547 .Times(1); | 547 .Times(1); |
| 548 cmds::DeleteRenderbuffersImmediate& cmd = | 548 cmds::DeleteRenderbuffersImmediate& cmd = |
| 549 *GetImmediateAs<cmds::DeleteRenderbuffersImmediate>(); | 549 *GetImmediateAs<cmds::DeleteRenderbuffersImmediate>(); |
| 550 SpecializedSetup<cmds::DeleteRenderbuffersImmediate, 0>(true); | 550 SpecializedSetup<cmds::DeleteRenderbuffersImmediate, 0>(true); |
| 551 cmd.Init(1, &client_renderbuffer_id_); | 551 cmd.Init(1, &client_renderbuffer_id_); |
| 552 EXPECT_EQ(error::kNoError, | 552 EXPECT_EQ(error::kNoError, |
| 553 ExecuteImmediateCmd(cmd, sizeof(client_renderbuffer_id_))); | 553 ExecuteImmediateCmd(cmd, sizeof(client_renderbuffer_id_))); |
| 554 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 554 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 555 EXPECT_TRUE(GetRenderbuffer(client_renderbuffer_id_) == NULL); | 555 EXPECT_TRUE(GetRenderbuffer(client_renderbuffer_id_) == NULL); |
| 556 } | 556 } |
| 557 | 557 |
| 558 TEST_P(GLES2DecoderTest1, DeleteRenderbuffersImmediateInvalidArgs) { | 558 TEST_F(GLES2DecoderTest1, DeleteRenderbuffersImmediateInvalidArgs) { |
| 559 cmds::DeleteRenderbuffersImmediate& cmd = | 559 cmds::DeleteRenderbuffersImmediate& cmd = |
| 560 *GetImmediateAs<cmds::DeleteRenderbuffersImmediate>(); | 560 *GetImmediateAs<cmds::DeleteRenderbuffersImmediate>(); |
| 561 SpecializedSetup<cmds::DeleteRenderbuffersImmediate, 0>(false); | 561 SpecializedSetup<cmds::DeleteRenderbuffersImmediate, 0>(false); |
| 562 GLuint temp = kInvalidClientId; | 562 GLuint temp = kInvalidClientId; |
| 563 cmd.Init(1, &temp); | 563 cmd.Init(1, &temp); |
| 564 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); | 564 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); |
| 565 } | 565 } |
| 566 | 566 |
| 567 TEST_P(GLES2DecoderTest1, DeleteShaderValidArgs) { | 567 TEST_F(GLES2DecoderTest1, DeleteShaderValidArgs) { |
| 568 EXPECT_CALL(*gl_, DeleteShader(kServiceShaderId)); | 568 EXPECT_CALL(*gl_, DeleteShader(kServiceShaderId)); |
| 569 SpecializedSetup<cmds::DeleteShader, 0>(true); | 569 SpecializedSetup<cmds::DeleteShader, 0>(true); |
| 570 cmds::DeleteShader cmd; | 570 cmds::DeleteShader cmd; |
| 571 cmd.Init(client_shader_id_); | 571 cmd.Init(client_shader_id_); |
| 572 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 572 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 573 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 573 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 574 } | 574 } |
| 575 | 575 |
| 576 TEST_P(GLES2DecoderTest1, DeleteTexturesValidArgs) { | 576 TEST_F(GLES2DecoderTest1, DeleteTexturesValidArgs) { |
| 577 EXPECT_CALL(*gl_, DeleteTextures(1, Pointee(kServiceTextureId))).Times(1); | 577 EXPECT_CALL(*gl_, DeleteTextures(1, Pointee(kServiceTextureId))).Times(1); |
| 578 GetSharedMemoryAs<GLuint*>()[0] = client_texture_id_; | 578 GetSharedMemoryAs<GLuint*>()[0] = client_texture_id_; |
| 579 SpecializedSetup<cmds::DeleteTextures, 0>(true); | 579 SpecializedSetup<cmds::DeleteTextures, 0>(true); |
| 580 cmds::DeleteTextures cmd; | 580 cmds::DeleteTextures cmd; |
| 581 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 581 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 582 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 582 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 583 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 583 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 584 EXPECT_TRUE(GetTexture(client_texture_id_) == NULL); | 584 EXPECT_TRUE(GetTexture(client_texture_id_) == NULL); |
| 585 } | 585 } |
| 586 | 586 |
| 587 TEST_P(GLES2DecoderTest1, DeleteTexturesInvalidArgs) { | 587 TEST_F(GLES2DecoderTest1, DeleteTexturesInvalidArgs) { |
| 588 GetSharedMemoryAs<GLuint*>()[0] = kInvalidClientId; | 588 GetSharedMemoryAs<GLuint*>()[0] = kInvalidClientId; |
| 589 SpecializedSetup<cmds::DeleteTextures, 0>(false); | 589 SpecializedSetup<cmds::DeleteTextures, 0>(false); |
| 590 cmds::DeleteTextures cmd; | 590 cmds::DeleteTextures cmd; |
| 591 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 591 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 592 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 592 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 593 } | 593 } |
| 594 | 594 |
| 595 TEST_P(GLES2DecoderTest1, DeleteTexturesImmediateValidArgs) { | 595 TEST_F(GLES2DecoderTest1, DeleteTexturesImmediateValidArgs) { |
| 596 EXPECT_CALL(*gl_, DeleteTextures(1, Pointee(kServiceTextureId))).Times(1); | 596 EXPECT_CALL(*gl_, DeleteTextures(1, Pointee(kServiceTextureId))).Times(1); |
| 597 cmds::DeleteTexturesImmediate& cmd = | 597 cmds::DeleteTexturesImmediate& cmd = |
| 598 *GetImmediateAs<cmds::DeleteTexturesImmediate>(); | 598 *GetImmediateAs<cmds::DeleteTexturesImmediate>(); |
| 599 SpecializedSetup<cmds::DeleteTexturesImmediate, 0>(true); | 599 SpecializedSetup<cmds::DeleteTexturesImmediate, 0>(true); |
| 600 cmd.Init(1, &client_texture_id_); | 600 cmd.Init(1, &client_texture_id_); |
| 601 EXPECT_EQ(error::kNoError, | 601 EXPECT_EQ(error::kNoError, |
| 602 ExecuteImmediateCmd(cmd, sizeof(client_texture_id_))); | 602 ExecuteImmediateCmd(cmd, sizeof(client_texture_id_))); |
| 603 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 603 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 604 EXPECT_TRUE(GetTexture(client_texture_id_) == NULL); | 604 EXPECT_TRUE(GetTexture(client_texture_id_) == NULL); |
| 605 } | 605 } |
| 606 | 606 |
| 607 TEST_P(GLES2DecoderTest1, DeleteTexturesImmediateInvalidArgs) { | 607 TEST_F(GLES2DecoderTest1, DeleteTexturesImmediateInvalidArgs) { |
| 608 cmds::DeleteTexturesImmediate& cmd = | 608 cmds::DeleteTexturesImmediate& cmd = |
| 609 *GetImmediateAs<cmds::DeleteTexturesImmediate>(); | 609 *GetImmediateAs<cmds::DeleteTexturesImmediate>(); |
| 610 SpecializedSetup<cmds::DeleteTexturesImmediate, 0>(false); | 610 SpecializedSetup<cmds::DeleteTexturesImmediate, 0>(false); |
| 611 GLuint temp = kInvalidClientId; | 611 GLuint temp = kInvalidClientId; |
| 612 cmd.Init(1, &temp); | 612 cmd.Init(1, &temp); |
| 613 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); | 613 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); |
| 614 } | 614 } |
| 615 | 615 |
| 616 TEST_P(GLES2DecoderTest1, DepthFuncValidArgs) { | 616 TEST_F(GLES2DecoderTest1, DepthFuncValidArgs) { |
| 617 EXPECT_CALL(*gl_, DepthFunc(GL_NEVER)); | 617 EXPECT_CALL(*gl_, DepthFunc(GL_NEVER)); |
| 618 SpecializedSetup<cmds::DepthFunc, 0>(true); | 618 SpecializedSetup<cmds::DepthFunc, 0>(true); |
| 619 cmds::DepthFunc cmd; | 619 cmds::DepthFunc cmd; |
| 620 cmd.Init(GL_NEVER); | 620 cmd.Init(GL_NEVER); |
| 621 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 621 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 622 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 622 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 623 } | 623 } |
| 624 | 624 |
| 625 TEST_P(GLES2DecoderTest1, DepthMaskValidArgs) { | 625 TEST_F(GLES2DecoderTest1, DepthMaskValidArgs) { |
| 626 SpecializedSetup<cmds::DepthMask, 0>(true); | 626 SpecializedSetup<cmds::DepthMask, 0>(true); |
| 627 cmds::DepthMask cmd; | 627 cmds::DepthMask cmd; |
| 628 cmd.Init(true); | 628 cmd.Init(true); |
| 629 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 629 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 630 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 630 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 631 } | 631 } |
| 632 | 632 |
| 633 TEST_P(GLES2DecoderTest1, DepthRangefValidArgs) { | 633 TEST_F(GLES2DecoderTest1, DepthRangefValidArgs) { |
| 634 EXPECT_CALL(*gl_, DepthRange(1, 2)); | 634 EXPECT_CALL(*gl_, DepthRange(1, 2)); |
| 635 SpecializedSetup<cmds::DepthRangef, 0>(true); | 635 SpecializedSetup<cmds::DepthRangef, 0>(true); |
| 636 cmds::DepthRangef cmd; | 636 cmds::DepthRangef cmd; |
| 637 cmd.Init(1, 2); | 637 cmd.Init(1, 2); |
| 638 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 638 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 639 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 639 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 640 } | 640 } |
| 641 | 641 |
| 642 TEST_P(GLES2DecoderTest1, DetachShaderValidArgs) { | 642 TEST_F(GLES2DecoderTest1, DetachShaderValidArgs) { |
| 643 EXPECT_CALL(*gl_, DetachShader(kServiceProgramId, kServiceShaderId)); | 643 EXPECT_CALL(*gl_, DetachShader(kServiceProgramId, kServiceShaderId)); |
| 644 SpecializedSetup<cmds::DetachShader, 0>(true); | 644 SpecializedSetup<cmds::DetachShader, 0>(true); |
| 645 cmds::DetachShader cmd; | 645 cmds::DetachShader cmd; |
| 646 cmd.Init(client_program_id_, client_shader_id_); | 646 cmd.Init(client_program_id_, client_shader_id_); |
| 647 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 647 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 648 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 648 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 649 } | 649 } |
| 650 | 650 |
| 651 TEST_P(GLES2DecoderTest1, DisableValidArgs) { | 651 TEST_F(GLES2DecoderTest1, DisableValidArgs) { |
| 652 SetupExpectationsForEnableDisable(GL_BLEND, false); | 652 EXPECT_CALL(*gl_, Disable(GL_BLEND)); |
| 653 SpecializedSetup<cmds::Disable, 0>(true); | 653 SpecializedSetup<cmds::Disable, 0>(true); |
| 654 cmds::Disable cmd; | 654 cmds::Disable cmd; |
| 655 cmd.Init(GL_BLEND); | 655 cmd.Init(GL_BLEND); |
| 656 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 656 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 657 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 657 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 658 } | 658 } |
| 659 | 659 |
| 660 TEST_P(GLES2DecoderTest1, DisableInvalidArgs0_0) { | 660 TEST_F(GLES2DecoderTest1, DisableInvalidArgs0_0) { |
| 661 EXPECT_CALL(*gl_, Disable(_)).Times(0); | 661 EXPECT_CALL(*gl_, Disable(_)).Times(0); |
| 662 SpecializedSetup<cmds::Disable, 0>(false); | 662 SpecializedSetup<cmds::Disable, 0>(false); |
| 663 cmds::Disable cmd; | 663 cmds::Disable cmd; |
| 664 cmd.Init(GL_CLIP_PLANE0); | 664 cmd.Init(GL_CLIP_PLANE0); |
| 665 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 665 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 666 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 666 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 667 } | 667 } |
| 668 | 668 |
| 669 TEST_P(GLES2DecoderTest1, DisableInvalidArgs0_1) { | 669 TEST_F(GLES2DecoderTest1, DisableInvalidArgs0_1) { |
| 670 EXPECT_CALL(*gl_, Disable(_)).Times(0); | 670 EXPECT_CALL(*gl_, Disable(_)).Times(0); |
| 671 SpecializedSetup<cmds::Disable, 0>(false); | 671 SpecializedSetup<cmds::Disable, 0>(false); |
| 672 cmds::Disable cmd; | 672 cmds::Disable cmd; |
| 673 cmd.Init(GL_POINT_SPRITE); | 673 cmd.Init(GL_POINT_SPRITE); |
| 674 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 674 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 675 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 675 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 676 } | 676 } |
| 677 | 677 |
| 678 TEST_P(GLES2DecoderTest1, DisableVertexAttribArrayValidArgs) { | 678 TEST_F(GLES2DecoderTest1, DisableVertexAttribArrayValidArgs) { |
| 679 EXPECT_CALL(*gl_, DisableVertexAttribArray(1)); | 679 EXPECT_CALL(*gl_, DisableVertexAttribArray(1)); |
| 680 SpecializedSetup<cmds::DisableVertexAttribArray, 0>(true); | 680 SpecializedSetup<cmds::DisableVertexAttribArray, 0>(true); |
| 681 cmds::DisableVertexAttribArray cmd; | 681 cmds::DisableVertexAttribArray cmd; |
| 682 cmd.Init(1); | 682 cmd.Init(1); |
| 683 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 683 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 684 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 684 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 685 } | 685 } |
| 686 // TODO(gman): DrawArrays | 686 // TODO(gman): DrawArrays |
| 687 | 687 |
| 688 // TODO(gman): DrawElements | 688 // TODO(gman): DrawElements |
| 689 | 689 |
| 690 TEST_P(GLES2DecoderTest1, EnableValidArgs) { | 690 TEST_F(GLES2DecoderTest1, EnableValidArgs) { |
| 691 SetupExpectationsForEnableDisable(GL_BLEND, true); | 691 EXPECT_CALL(*gl_, Enable(GL_BLEND)); |
| 692 SpecializedSetup<cmds::Enable, 0>(true); | 692 SpecializedSetup<cmds::Enable, 0>(true); |
| 693 cmds::Enable cmd; | 693 cmds::Enable cmd; |
| 694 cmd.Init(GL_BLEND); | 694 cmd.Init(GL_BLEND); |
| 695 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 695 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 696 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 696 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 697 } | 697 } |
| 698 | 698 |
| 699 TEST_P(GLES2DecoderTest1, EnableInvalidArgs0_0) { | 699 TEST_F(GLES2DecoderTest1, EnableInvalidArgs0_0) { |
| 700 EXPECT_CALL(*gl_, Enable(_)).Times(0); | 700 EXPECT_CALL(*gl_, Enable(_)).Times(0); |
| 701 SpecializedSetup<cmds::Enable, 0>(false); | 701 SpecializedSetup<cmds::Enable, 0>(false); |
| 702 cmds::Enable cmd; | 702 cmds::Enable cmd; |
| 703 cmd.Init(GL_CLIP_PLANE0); | 703 cmd.Init(GL_CLIP_PLANE0); |
| 704 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 704 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 705 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 705 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 706 } | 706 } |
| 707 | 707 |
| 708 TEST_P(GLES2DecoderTest1, EnableInvalidArgs0_1) { | 708 TEST_F(GLES2DecoderTest1, EnableInvalidArgs0_1) { |
| 709 EXPECT_CALL(*gl_, Enable(_)).Times(0); | 709 EXPECT_CALL(*gl_, Enable(_)).Times(0); |
| 710 SpecializedSetup<cmds::Enable, 0>(false); | 710 SpecializedSetup<cmds::Enable, 0>(false); |
| 711 cmds::Enable cmd; | 711 cmds::Enable cmd; |
| 712 cmd.Init(GL_POINT_SPRITE); | 712 cmd.Init(GL_POINT_SPRITE); |
| 713 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 713 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 714 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 714 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 715 } | 715 } |
| 716 | 716 |
| 717 TEST_P(GLES2DecoderTest1, EnableVertexAttribArrayValidArgs) { | 717 TEST_F(GLES2DecoderTest1, EnableVertexAttribArrayValidArgs) { |
| 718 EXPECT_CALL(*gl_, EnableVertexAttribArray(1)); | 718 EXPECT_CALL(*gl_, EnableVertexAttribArray(1)); |
| 719 SpecializedSetup<cmds::EnableVertexAttribArray, 0>(true); | 719 SpecializedSetup<cmds::EnableVertexAttribArray, 0>(true); |
| 720 cmds::EnableVertexAttribArray cmd; | 720 cmds::EnableVertexAttribArray cmd; |
| 721 cmd.Init(1); | 721 cmd.Init(1); |
| 722 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 722 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 723 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 723 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 724 } | 724 } |
| 725 | 725 |
| 726 TEST_P(GLES2DecoderTest1, FinishValidArgs) { | 726 TEST_F(GLES2DecoderTest1, FinishValidArgs) { |
| 727 EXPECT_CALL(*gl_, Finish()); | 727 EXPECT_CALL(*gl_, Finish()); |
| 728 SpecializedSetup<cmds::Finish, 0>(true); | 728 SpecializedSetup<cmds::Finish, 0>(true); |
| 729 cmds::Finish cmd; | 729 cmds::Finish cmd; |
| 730 cmd.Init(); | 730 cmd.Init(); |
| 731 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 731 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 732 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 732 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 733 } | 733 } |
| 734 | 734 |
| 735 TEST_P(GLES2DecoderTest1, FlushValidArgs) { | 735 TEST_F(GLES2DecoderTest1, FlushValidArgs) { |
| 736 EXPECT_CALL(*gl_, Flush()); | 736 EXPECT_CALL(*gl_, Flush()); |
| 737 SpecializedSetup<cmds::Flush, 0>(true); | 737 SpecializedSetup<cmds::Flush, 0>(true); |
| 738 cmds::Flush cmd; | 738 cmds::Flush cmd; |
| 739 cmd.Init(); | 739 cmd.Init(); |
| 740 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 740 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 741 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 741 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 742 } | 742 } |
| 743 | 743 |
| 744 TEST_P(GLES2DecoderTest1, FramebufferRenderbufferValidArgs) { | 744 TEST_F(GLES2DecoderTest1, FramebufferRenderbufferValidArgs) { |
| 745 EXPECT_CALL(*gl_, | 745 EXPECT_CALL(*gl_, |
| 746 FramebufferRenderbufferEXT(GL_FRAMEBUFFER, | 746 FramebufferRenderbufferEXT(GL_FRAMEBUFFER, |
| 747 GL_COLOR_ATTACHMENT0, | 747 GL_COLOR_ATTACHMENT0, |
| 748 GL_RENDERBUFFER, | 748 GL_RENDERBUFFER, |
| 749 kServiceRenderbufferId)); | 749 kServiceRenderbufferId)); |
| 750 SpecializedSetup<cmds::FramebufferRenderbuffer, 0>(true); | 750 SpecializedSetup<cmds::FramebufferRenderbuffer, 0>(true); |
| 751 cmds::FramebufferRenderbuffer cmd; | 751 cmds::FramebufferRenderbuffer cmd; |
| 752 cmd.Init(GL_FRAMEBUFFER, | 752 cmd.Init(GL_FRAMEBUFFER, |
| 753 GL_COLOR_ATTACHMENT0, | 753 GL_COLOR_ATTACHMENT0, |
| 754 GL_RENDERBUFFER, | 754 GL_RENDERBUFFER, |
| 755 client_renderbuffer_id_); | 755 client_renderbuffer_id_); |
| 756 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 756 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 757 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 757 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 758 } | 758 } |
| 759 | 759 |
| 760 TEST_P(GLES2DecoderTest1, FramebufferRenderbufferInvalidArgs0_0) { | 760 TEST_F(GLES2DecoderTest1, FramebufferRenderbufferInvalidArgs0_0) { |
| 761 EXPECT_CALL(*gl_, FramebufferRenderbufferEXT(_, _, _, _)).Times(0); | 761 EXPECT_CALL(*gl_, FramebufferRenderbufferEXT(_, _, _, _)).Times(0); |
| 762 SpecializedSetup<cmds::FramebufferRenderbuffer, 0>(false); | 762 SpecializedSetup<cmds::FramebufferRenderbuffer, 0>(false); |
| 763 cmds::FramebufferRenderbuffer cmd; | 763 cmds::FramebufferRenderbuffer cmd; |
| 764 cmd.Init(GL_DRAW_FRAMEBUFFER, | 764 cmd.Init(GL_DRAW_FRAMEBUFFER, |
| 765 GL_COLOR_ATTACHMENT0, | 765 GL_COLOR_ATTACHMENT0, |
| 766 GL_RENDERBUFFER, | 766 GL_RENDERBUFFER, |
| 767 client_renderbuffer_id_); | 767 client_renderbuffer_id_); |
| 768 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 768 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 769 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 769 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 770 } | 770 } |
| 771 | 771 |
| 772 TEST_P(GLES2DecoderTest1, FramebufferRenderbufferInvalidArgs0_1) { | 772 TEST_F(GLES2DecoderTest1, FramebufferRenderbufferInvalidArgs0_1) { |
| 773 EXPECT_CALL(*gl_, FramebufferRenderbufferEXT(_, _, _, _)).Times(0); | 773 EXPECT_CALL(*gl_, FramebufferRenderbufferEXT(_, _, _, _)).Times(0); |
| 774 SpecializedSetup<cmds::FramebufferRenderbuffer, 0>(false); | 774 SpecializedSetup<cmds::FramebufferRenderbuffer, 0>(false); |
| 775 cmds::FramebufferRenderbuffer cmd; | 775 cmds::FramebufferRenderbuffer cmd; |
| 776 cmd.Init(GL_READ_FRAMEBUFFER, | 776 cmd.Init(GL_READ_FRAMEBUFFER, |
| 777 GL_COLOR_ATTACHMENT0, | 777 GL_COLOR_ATTACHMENT0, |
| 778 GL_RENDERBUFFER, | 778 GL_RENDERBUFFER, |
| 779 client_renderbuffer_id_); | 779 client_renderbuffer_id_); |
| 780 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 780 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 781 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 781 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 782 } | 782 } |
| 783 | 783 |
| 784 TEST_P(GLES2DecoderTest1, FramebufferRenderbufferInvalidArgs2_0) { | 784 TEST_F(GLES2DecoderTest1, FramebufferRenderbufferInvalidArgs2_0) { |
| 785 EXPECT_CALL(*gl_, FramebufferRenderbufferEXT(_, _, _, _)).Times(0); | 785 EXPECT_CALL(*gl_, FramebufferRenderbufferEXT(_, _, _, _)).Times(0); |
| 786 SpecializedSetup<cmds::FramebufferRenderbuffer, 0>(false); | 786 SpecializedSetup<cmds::FramebufferRenderbuffer, 0>(false); |
| 787 cmds::FramebufferRenderbuffer cmd; | 787 cmds::FramebufferRenderbuffer cmd; |
| 788 cmd.Init(GL_FRAMEBUFFER, | 788 cmd.Init(GL_FRAMEBUFFER, |
| 789 GL_COLOR_ATTACHMENT0, | 789 GL_COLOR_ATTACHMENT0, |
| 790 GL_FRAMEBUFFER, | 790 GL_FRAMEBUFFER, |
| 791 client_renderbuffer_id_); | 791 client_renderbuffer_id_); |
| 792 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 792 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 793 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 793 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 794 } | 794 } |
| 795 | 795 |
| 796 TEST_P(GLES2DecoderTest1, FramebufferTexture2DValidArgs) { | 796 TEST_F(GLES2DecoderTest1, FramebufferTexture2DValidArgs) { |
| 797 EXPECT_CALL(*gl_, | 797 EXPECT_CALL(*gl_, |
| 798 FramebufferTexture2DEXT(GL_FRAMEBUFFER, | 798 FramebufferTexture2DEXT(GL_FRAMEBUFFER, |
| 799 GL_COLOR_ATTACHMENT0, | 799 GL_COLOR_ATTACHMENT0, |
| 800 GL_TEXTURE_2D, | 800 GL_TEXTURE_2D, |
| 801 kServiceTextureId, | 801 kServiceTextureId, |
| 802 0)); | 802 0)); |
| 803 SpecializedSetup<cmds::FramebufferTexture2D, 0>(true); | 803 SpecializedSetup<cmds::FramebufferTexture2D, 0>(true); |
| 804 cmds::FramebufferTexture2D cmd; | 804 cmds::FramebufferTexture2D cmd; |
| 805 cmd.Init(GL_FRAMEBUFFER, | 805 cmd.Init(GL_FRAMEBUFFER, |
| 806 GL_COLOR_ATTACHMENT0, | 806 GL_COLOR_ATTACHMENT0, |
| 807 GL_TEXTURE_2D, | 807 GL_TEXTURE_2D, |
| 808 client_texture_id_, | 808 client_texture_id_, |
| 809 0); | 809 0); |
| 810 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 810 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 811 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 811 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 812 } | 812 } |
| 813 | 813 |
| 814 TEST_P(GLES2DecoderTest1, FramebufferTexture2DInvalidArgs0_0) { | 814 TEST_F(GLES2DecoderTest1, FramebufferTexture2DInvalidArgs0_0) { |
| 815 EXPECT_CALL(*gl_, FramebufferTexture2DEXT(_, _, _, _, _)).Times(0); | 815 EXPECT_CALL(*gl_, FramebufferTexture2DEXT(_, _, _, _, _)).Times(0); |
| 816 SpecializedSetup<cmds::FramebufferTexture2D, 0>(false); | 816 SpecializedSetup<cmds::FramebufferTexture2D, 0>(false); |
| 817 cmds::FramebufferTexture2D cmd; | 817 cmds::FramebufferTexture2D cmd; |
| 818 cmd.Init(GL_DRAW_FRAMEBUFFER, | 818 cmd.Init(GL_DRAW_FRAMEBUFFER, |
| 819 GL_COLOR_ATTACHMENT0, | 819 GL_COLOR_ATTACHMENT0, |
| 820 GL_TEXTURE_2D, | 820 GL_TEXTURE_2D, |
| 821 client_texture_id_, | 821 client_texture_id_, |
| 822 0); | 822 0); |
| 823 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 823 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 824 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 824 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 825 } | 825 } |
| 826 | 826 |
| 827 TEST_P(GLES2DecoderTest1, FramebufferTexture2DInvalidArgs0_1) { | 827 TEST_F(GLES2DecoderTest1, FramebufferTexture2DInvalidArgs0_1) { |
| 828 EXPECT_CALL(*gl_, FramebufferTexture2DEXT(_, _, _, _, _)).Times(0); | 828 EXPECT_CALL(*gl_, FramebufferTexture2DEXT(_, _, _, _, _)).Times(0); |
| 829 SpecializedSetup<cmds::FramebufferTexture2D, 0>(false); | 829 SpecializedSetup<cmds::FramebufferTexture2D, 0>(false); |
| 830 cmds::FramebufferTexture2D cmd; | 830 cmds::FramebufferTexture2D cmd; |
| 831 cmd.Init(GL_READ_FRAMEBUFFER, | 831 cmd.Init(GL_READ_FRAMEBUFFER, |
| 832 GL_COLOR_ATTACHMENT0, | 832 GL_COLOR_ATTACHMENT0, |
| 833 GL_TEXTURE_2D, | 833 GL_TEXTURE_2D, |
| 834 client_texture_id_, | 834 client_texture_id_, |
| 835 0); | 835 0); |
| 836 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 836 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 837 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 837 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 838 } | 838 } |
| 839 | 839 |
| 840 TEST_P(GLES2DecoderTest1, FramebufferTexture2DInvalidArgs2_0) { | 840 TEST_F(GLES2DecoderTest1, FramebufferTexture2DInvalidArgs2_0) { |
| 841 EXPECT_CALL(*gl_, FramebufferTexture2DEXT(_, _, _, _, _)).Times(0); | 841 EXPECT_CALL(*gl_, FramebufferTexture2DEXT(_, _, _, _, _)).Times(0); |
| 842 SpecializedSetup<cmds::FramebufferTexture2D, 0>(false); | 842 SpecializedSetup<cmds::FramebufferTexture2D, 0>(false); |
| 843 cmds::FramebufferTexture2D cmd; | 843 cmds::FramebufferTexture2D cmd; |
| 844 cmd.Init(GL_FRAMEBUFFER, | 844 cmd.Init(GL_FRAMEBUFFER, |
| 845 GL_COLOR_ATTACHMENT0, | 845 GL_COLOR_ATTACHMENT0, |
| 846 GL_PROXY_TEXTURE_CUBE_MAP, | 846 GL_PROXY_TEXTURE_CUBE_MAP, |
| 847 client_texture_id_, | 847 client_texture_id_, |
| 848 0); | 848 0); |
| 849 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 849 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 850 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 850 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 851 } | 851 } |
| 852 | 852 |
| 853 TEST_P(GLES2DecoderTest1, FramebufferTexture2DInvalidArgs4_0) { | 853 TEST_F(GLES2DecoderTest1, FramebufferTexture2DInvalidArgs4_0) { |
| 854 EXPECT_CALL(*gl_, FramebufferTexture2DEXT(_, _, _, _, _)).Times(0); | 854 EXPECT_CALL(*gl_, FramebufferTexture2DEXT(_, _, _, _, _)).Times(0); |
| 855 SpecializedSetup<cmds::FramebufferTexture2D, 0>(false); | 855 SpecializedSetup<cmds::FramebufferTexture2D, 0>(false); |
| 856 cmds::FramebufferTexture2D cmd; | 856 cmds::FramebufferTexture2D cmd; |
| 857 cmd.Init(GL_FRAMEBUFFER, | 857 cmd.Init(GL_FRAMEBUFFER, |
| 858 GL_COLOR_ATTACHMENT0, | 858 GL_COLOR_ATTACHMENT0, |
| 859 GL_TEXTURE_2D, | 859 GL_TEXTURE_2D, |
| 860 client_texture_id_, | 860 client_texture_id_, |
| 861 1); | 861 1); |
| 862 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 862 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 863 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); | 863 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
| 864 } | 864 } |
| 865 | 865 |
| 866 TEST_P(GLES2DecoderTest1, FrontFaceValidArgs) { | 866 TEST_F(GLES2DecoderTest1, FrontFaceValidArgs) { |
| 867 EXPECT_CALL(*gl_, FrontFace(GL_CW)); | 867 EXPECT_CALL(*gl_, FrontFace(GL_CW)); |
| 868 SpecializedSetup<cmds::FrontFace, 0>(true); | 868 SpecializedSetup<cmds::FrontFace, 0>(true); |
| 869 cmds::FrontFace cmd; | 869 cmds::FrontFace cmd; |
| 870 cmd.Init(GL_CW); | 870 cmd.Init(GL_CW); |
| 871 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 871 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 872 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 872 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 873 } | 873 } |
| 874 | 874 |
| 875 TEST_P(GLES2DecoderTest1, GenBuffersValidArgs) { | 875 TEST_F(GLES2DecoderTest1, GenBuffersValidArgs) { |
| 876 EXPECT_CALL(*gl_, GenBuffersARB(1, _)) | 876 EXPECT_CALL(*gl_, GenBuffersARB(1, _)) |
| 877 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 877 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 878 GetSharedMemoryAs<GLuint*>()[0] = kNewClientId; | 878 GetSharedMemoryAs<GLuint*>()[0] = kNewClientId; |
| 879 SpecializedSetup<cmds::GenBuffers, 0>(true); | 879 SpecializedSetup<cmds::GenBuffers, 0>(true); |
| 880 cmds::GenBuffers cmd; | 880 cmds::GenBuffers cmd; |
| 881 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 881 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 882 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 882 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 883 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 883 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 884 EXPECT_TRUE(GetBuffer(kNewClientId) != NULL); | 884 EXPECT_TRUE(GetBuffer(kNewClientId) != NULL); |
| 885 } | 885 } |
| 886 | 886 |
| 887 TEST_P(GLES2DecoderTest1, GenBuffersInvalidArgs) { | 887 TEST_F(GLES2DecoderTest1, GenBuffersInvalidArgs) { |
| 888 EXPECT_CALL(*gl_, GenBuffersARB(_, _)).Times(0); | 888 EXPECT_CALL(*gl_, GenBuffersARB(_, _)).Times(0); |
| 889 GetSharedMemoryAs<GLuint*>()[0] = client_buffer_id_; | 889 GetSharedMemoryAs<GLuint*>()[0] = client_buffer_id_; |
| 890 SpecializedSetup<cmds::GenBuffers, 0>(false); | 890 SpecializedSetup<cmds::GenBuffers, 0>(false); |
| 891 cmds::GenBuffers cmd; | 891 cmds::GenBuffers cmd; |
| 892 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 892 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 893 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); | 893 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); |
| 894 } | 894 } |
| 895 | 895 |
| 896 TEST_P(GLES2DecoderTest1, GenBuffersImmediateValidArgs) { | 896 TEST_F(GLES2DecoderTest1, GenBuffersImmediateValidArgs) { |
| 897 EXPECT_CALL(*gl_, GenBuffersARB(1, _)) | 897 EXPECT_CALL(*gl_, GenBuffersARB(1, _)) |
| 898 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 898 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 899 cmds::GenBuffersImmediate* cmd = GetImmediateAs<cmds::GenBuffersImmediate>(); | 899 cmds::GenBuffersImmediate* cmd = GetImmediateAs<cmds::GenBuffersImmediate>(); |
| 900 GLuint temp = kNewClientId; | 900 GLuint temp = kNewClientId; |
| 901 SpecializedSetup<cmds::GenBuffersImmediate, 0>(true); | 901 SpecializedSetup<cmds::GenBuffersImmediate, 0>(true); |
| 902 cmd->Init(1, &temp); | 902 cmd->Init(1, &temp); |
| 903 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(*cmd, sizeof(temp))); | 903 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(*cmd, sizeof(temp))); |
| 904 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 904 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 905 EXPECT_TRUE(GetBuffer(kNewClientId) != NULL); | 905 EXPECT_TRUE(GetBuffer(kNewClientId) != NULL); |
| 906 } | 906 } |
| 907 | 907 |
| 908 TEST_P(GLES2DecoderTest1, GenBuffersImmediateInvalidArgs) { | 908 TEST_F(GLES2DecoderTest1, GenBuffersImmediateInvalidArgs) { |
| 909 EXPECT_CALL(*gl_, GenBuffersARB(_, _)).Times(0); | 909 EXPECT_CALL(*gl_, GenBuffersARB(_, _)).Times(0); |
| 910 cmds::GenBuffersImmediate* cmd = GetImmediateAs<cmds::GenBuffersImmediate>(); | 910 cmds::GenBuffersImmediate* cmd = GetImmediateAs<cmds::GenBuffersImmediate>(); |
| 911 SpecializedSetup<cmds::GenBuffersImmediate, 0>(false); | 911 SpecializedSetup<cmds::GenBuffersImmediate, 0>(false); |
| 912 cmd->Init(1, &client_buffer_id_); | 912 cmd->Init(1, &client_buffer_id_); |
| 913 EXPECT_EQ(error::kInvalidArguments, | 913 EXPECT_EQ(error::kInvalidArguments, |
| 914 ExecuteImmediateCmd(*cmd, sizeof(&client_buffer_id_))); | 914 ExecuteImmediateCmd(*cmd, sizeof(&client_buffer_id_))); |
| 915 } | 915 } |
| 916 | 916 |
| 917 TEST_P(GLES2DecoderTest1, GenerateMipmapValidArgs) { | 917 TEST_F(GLES2DecoderTest1, GenerateMipmapValidArgs) { |
| 918 EXPECT_CALL(*gl_, GenerateMipmapEXT(GL_TEXTURE_2D)); | 918 EXPECT_CALL(*gl_, GenerateMipmapEXT(GL_TEXTURE_2D)); |
| 919 SpecializedSetup<cmds::GenerateMipmap, 0>(true); | 919 SpecializedSetup<cmds::GenerateMipmap, 0>(true); |
| 920 cmds::GenerateMipmap cmd; | 920 cmds::GenerateMipmap cmd; |
| 921 cmd.Init(GL_TEXTURE_2D); | 921 cmd.Init(GL_TEXTURE_2D); |
| 922 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 922 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 923 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 923 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 924 } | 924 } |
| 925 | 925 |
| 926 TEST_P(GLES2DecoderTest1, GenerateMipmapInvalidArgs0_0) { | 926 TEST_F(GLES2DecoderTest1, GenerateMipmapInvalidArgs0_0) { |
| 927 EXPECT_CALL(*gl_, GenerateMipmapEXT(_)).Times(0); | 927 EXPECT_CALL(*gl_, GenerateMipmapEXT(_)).Times(0); |
| 928 SpecializedSetup<cmds::GenerateMipmap, 0>(false); | 928 SpecializedSetup<cmds::GenerateMipmap, 0>(false); |
| 929 cmds::GenerateMipmap cmd; | 929 cmds::GenerateMipmap cmd; |
| 930 cmd.Init(GL_TEXTURE_1D); | 930 cmd.Init(GL_TEXTURE_1D); |
| 931 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 931 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 932 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 932 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 933 } | 933 } |
| 934 | 934 |
| 935 TEST_P(GLES2DecoderTest1, GenerateMipmapInvalidArgs0_1) { | 935 TEST_F(GLES2DecoderTest1, GenerateMipmapInvalidArgs0_1) { |
| 936 EXPECT_CALL(*gl_, GenerateMipmapEXT(_)).Times(0); | 936 EXPECT_CALL(*gl_, GenerateMipmapEXT(_)).Times(0); |
| 937 SpecializedSetup<cmds::GenerateMipmap, 0>(false); | 937 SpecializedSetup<cmds::GenerateMipmap, 0>(false); |
| 938 cmds::GenerateMipmap cmd; | 938 cmds::GenerateMipmap cmd; |
| 939 cmd.Init(GL_TEXTURE_3D); | 939 cmd.Init(GL_TEXTURE_3D); |
| 940 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 940 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 941 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 941 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 942 } | 942 } |
| 943 | 943 |
| 944 TEST_P(GLES2DecoderTest1, GenFramebuffersValidArgs) { | 944 TEST_F(GLES2DecoderTest1, GenFramebuffersValidArgs) { |
| 945 EXPECT_CALL(*gl_, GenFramebuffersEXT(1, _)) | 945 EXPECT_CALL(*gl_, GenFramebuffersEXT(1, _)) |
| 946 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 946 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 947 GetSharedMemoryAs<GLuint*>()[0] = kNewClientId; | 947 GetSharedMemoryAs<GLuint*>()[0] = kNewClientId; |
| 948 SpecializedSetup<cmds::GenFramebuffers, 0>(true); | 948 SpecializedSetup<cmds::GenFramebuffers, 0>(true); |
| 949 cmds::GenFramebuffers cmd; | 949 cmds::GenFramebuffers cmd; |
| 950 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 950 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 951 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 951 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 952 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 952 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 953 EXPECT_TRUE(GetFramebuffer(kNewClientId) != NULL); | 953 EXPECT_TRUE(GetFramebuffer(kNewClientId) != NULL); |
| 954 } | 954 } |
| 955 | 955 |
| 956 TEST_P(GLES2DecoderTest1, GenFramebuffersInvalidArgs) { | 956 TEST_F(GLES2DecoderTest1, GenFramebuffersInvalidArgs) { |
| 957 EXPECT_CALL(*gl_, GenFramebuffersEXT(_, _)).Times(0); | 957 EXPECT_CALL(*gl_, GenFramebuffersEXT(_, _)).Times(0); |
| 958 GetSharedMemoryAs<GLuint*>()[0] = client_framebuffer_id_; | 958 GetSharedMemoryAs<GLuint*>()[0] = client_framebuffer_id_; |
| 959 SpecializedSetup<cmds::GenFramebuffers, 0>(false); | 959 SpecializedSetup<cmds::GenFramebuffers, 0>(false); |
| 960 cmds::GenFramebuffers cmd; | 960 cmds::GenFramebuffers cmd; |
| 961 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 961 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 962 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); | 962 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); |
| 963 } | 963 } |
| 964 | 964 |
| 965 TEST_P(GLES2DecoderTest1, GenFramebuffersImmediateValidArgs) { | 965 TEST_F(GLES2DecoderTest1, GenFramebuffersImmediateValidArgs) { |
| 966 EXPECT_CALL(*gl_, GenFramebuffersEXT(1, _)) | 966 EXPECT_CALL(*gl_, GenFramebuffersEXT(1, _)) |
| 967 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 967 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 968 cmds::GenFramebuffersImmediate* cmd = | 968 cmds::GenFramebuffersImmediate* cmd = |
| 969 GetImmediateAs<cmds::GenFramebuffersImmediate>(); | 969 GetImmediateAs<cmds::GenFramebuffersImmediate>(); |
| 970 GLuint temp = kNewClientId; | 970 GLuint temp = kNewClientId; |
| 971 SpecializedSetup<cmds::GenFramebuffersImmediate, 0>(true); | 971 SpecializedSetup<cmds::GenFramebuffersImmediate, 0>(true); |
| 972 cmd->Init(1, &temp); | 972 cmd->Init(1, &temp); |
| 973 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(*cmd, sizeof(temp))); | 973 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(*cmd, sizeof(temp))); |
| 974 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 974 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 975 EXPECT_TRUE(GetFramebuffer(kNewClientId) != NULL); | 975 EXPECT_TRUE(GetFramebuffer(kNewClientId) != NULL); |
| 976 } | 976 } |
| 977 | 977 |
| 978 TEST_P(GLES2DecoderTest1, GenFramebuffersImmediateInvalidArgs) { | 978 TEST_F(GLES2DecoderTest1, GenFramebuffersImmediateInvalidArgs) { |
| 979 EXPECT_CALL(*gl_, GenFramebuffersEXT(_, _)).Times(0); | 979 EXPECT_CALL(*gl_, GenFramebuffersEXT(_, _)).Times(0); |
| 980 cmds::GenFramebuffersImmediate* cmd = | 980 cmds::GenFramebuffersImmediate* cmd = |
| 981 GetImmediateAs<cmds::GenFramebuffersImmediate>(); | 981 GetImmediateAs<cmds::GenFramebuffersImmediate>(); |
| 982 SpecializedSetup<cmds::GenFramebuffersImmediate, 0>(false); | 982 SpecializedSetup<cmds::GenFramebuffersImmediate, 0>(false); |
| 983 cmd->Init(1, &client_framebuffer_id_); | 983 cmd->Init(1, &client_framebuffer_id_); |
| 984 EXPECT_EQ(error::kInvalidArguments, | 984 EXPECT_EQ(error::kInvalidArguments, |
| 985 ExecuteImmediateCmd(*cmd, sizeof(&client_framebuffer_id_))); | 985 ExecuteImmediateCmd(*cmd, sizeof(&client_framebuffer_id_))); |
| 986 } | 986 } |
| 987 | 987 |
| 988 TEST_P(GLES2DecoderTest1, GenRenderbuffersValidArgs) { | 988 TEST_F(GLES2DecoderTest1, GenRenderbuffersValidArgs) { |
| 989 EXPECT_CALL(*gl_, GenRenderbuffersEXT(1, _)) | 989 EXPECT_CALL(*gl_, GenRenderbuffersEXT(1, _)) |
| 990 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 990 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 991 GetSharedMemoryAs<GLuint*>()[0] = kNewClientId; | 991 GetSharedMemoryAs<GLuint*>()[0] = kNewClientId; |
| 992 SpecializedSetup<cmds::GenRenderbuffers, 0>(true); | 992 SpecializedSetup<cmds::GenRenderbuffers, 0>(true); |
| 993 cmds::GenRenderbuffers cmd; | 993 cmds::GenRenderbuffers cmd; |
| 994 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 994 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 995 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 995 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 996 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 996 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 997 EXPECT_TRUE(GetRenderbuffer(kNewClientId) != NULL); | 997 EXPECT_TRUE(GetRenderbuffer(kNewClientId) != NULL); |
| 998 } | 998 } |
| 999 | 999 |
| 1000 TEST_P(GLES2DecoderTest1, GenRenderbuffersInvalidArgs) { | 1000 TEST_F(GLES2DecoderTest1, GenRenderbuffersInvalidArgs) { |
| 1001 EXPECT_CALL(*gl_, GenRenderbuffersEXT(_, _)).Times(0); | 1001 EXPECT_CALL(*gl_, GenRenderbuffersEXT(_, _)).Times(0); |
| 1002 GetSharedMemoryAs<GLuint*>()[0] = client_renderbuffer_id_; | 1002 GetSharedMemoryAs<GLuint*>()[0] = client_renderbuffer_id_; |
| 1003 SpecializedSetup<cmds::GenRenderbuffers, 0>(false); | 1003 SpecializedSetup<cmds::GenRenderbuffers, 0>(false); |
| 1004 cmds::GenRenderbuffers cmd; | 1004 cmds::GenRenderbuffers cmd; |
| 1005 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 1005 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 1006 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); | 1006 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); |
| 1007 } | 1007 } |
| 1008 | 1008 |
| 1009 TEST_P(GLES2DecoderTest1, GenRenderbuffersImmediateValidArgs) { | 1009 TEST_F(GLES2DecoderTest1, GenRenderbuffersImmediateValidArgs) { |
| 1010 EXPECT_CALL(*gl_, GenRenderbuffersEXT(1, _)) | 1010 EXPECT_CALL(*gl_, GenRenderbuffersEXT(1, _)) |
| 1011 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 1011 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 1012 cmds::GenRenderbuffersImmediate* cmd = | 1012 cmds::GenRenderbuffersImmediate* cmd = |
| 1013 GetImmediateAs<cmds::GenRenderbuffersImmediate>(); | 1013 GetImmediateAs<cmds::GenRenderbuffersImmediate>(); |
| 1014 GLuint temp = kNewClientId; | 1014 GLuint temp = kNewClientId; |
| 1015 SpecializedSetup<cmds::GenRenderbuffersImmediate, 0>(true); | 1015 SpecializedSetup<cmds::GenRenderbuffersImmediate, 0>(true); |
| 1016 cmd->Init(1, &temp); | 1016 cmd->Init(1, &temp); |
| 1017 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(*cmd, sizeof(temp))); | 1017 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(*cmd, sizeof(temp))); |
| 1018 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1018 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1019 EXPECT_TRUE(GetRenderbuffer(kNewClientId) != NULL); | 1019 EXPECT_TRUE(GetRenderbuffer(kNewClientId) != NULL); |
| 1020 } | 1020 } |
| 1021 | 1021 |
| 1022 TEST_P(GLES2DecoderTest1, GenRenderbuffersImmediateInvalidArgs) { | 1022 TEST_F(GLES2DecoderTest1, GenRenderbuffersImmediateInvalidArgs) { |
| 1023 EXPECT_CALL(*gl_, GenRenderbuffersEXT(_, _)).Times(0); | 1023 EXPECT_CALL(*gl_, GenRenderbuffersEXT(_, _)).Times(0); |
| 1024 cmds::GenRenderbuffersImmediate* cmd = | 1024 cmds::GenRenderbuffersImmediate* cmd = |
| 1025 GetImmediateAs<cmds::GenRenderbuffersImmediate>(); | 1025 GetImmediateAs<cmds::GenRenderbuffersImmediate>(); |
| 1026 SpecializedSetup<cmds::GenRenderbuffersImmediate, 0>(false); | 1026 SpecializedSetup<cmds::GenRenderbuffersImmediate, 0>(false); |
| 1027 cmd->Init(1, &client_renderbuffer_id_); | 1027 cmd->Init(1, &client_renderbuffer_id_); |
| 1028 EXPECT_EQ(error::kInvalidArguments, | 1028 EXPECT_EQ(error::kInvalidArguments, |
| 1029 ExecuteImmediateCmd(*cmd, sizeof(&client_renderbuffer_id_))); | 1029 ExecuteImmediateCmd(*cmd, sizeof(&client_renderbuffer_id_))); |
| 1030 } | 1030 } |
| 1031 | 1031 |
| 1032 TEST_P(GLES2DecoderTest1, GenTexturesValidArgs) { | 1032 TEST_F(GLES2DecoderTest1, GenTexturesValidArgs) { |
| 1033 EXPECT_CALL(*gl_, GenTextures(1, _)) | 1033 EXPECT_CALL(*gl_, GenTextures(1, _)) |
| 1034 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 1034 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 1035 GetSharedMemoryAs<GLuint*>()[0] = kNewClientId; | 1035 GetSharedMemoryAs<GLuint*>()[0] = kNewClientId; |
| 1036 SpecializedSetup<cmds::GenTextures, 0>(true); | 1036 SpecializedSetup<cmds::GenTextures, 0>(true); |
| 1037 cmds::GenTextures cmd; | 1037 cmds::GenTextures cmd; |
| 1038 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 1038 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 1039 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1039 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1040 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1040 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1041 EXPECT_TRUE(GetTexture(kNewClientId) != NULL); | 1041 EXPECT_TRUE(GetTexture(kNewClientId) != NULL); |
| 1042 } | 1042 } |
| 1043 | 1043 |
| 1044 TEST_P(GLES2DecoderTest1, GenTexturesInvalidArgs) { | 1044 TEST_F(GLES2DecoderTest1, GenTexturesInvalidArgs) { |
| 1045 EXPECT_CALL(*gl_, GenTextures(_, _)).Times(0); | 1045 EXPECT_CALL(*gl_, GenTextures(_, _)).Times(0); |
| 1046 GetSharedMemoryAs<GLuint*>()[0] = client_texture_id_; | 1046 GetSharedMemoryAs<GLuint*>()[0] = client_texture_id_; |
| 1047 SpecializedSetup<cmds::GenTextures, 0>(false); | 1047 SpecializedSetup<cmds::GenTextures, 0>(false); |
| 1048 cmds::GenTextures cmd; | 1048 cmds::GenTextures cmd; |
| 1049 cmd.Init(1, shared_memory_id_, shared_memory_offset_); | 1049 cmd.Init(1, shared_memory_id_, shared_memory_offset_); |
| 1050 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); | 1050 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); |
| 1051 } | 1051 } |
| 1052 | 1052 |
| 1053 TEST_P(GLES2DecoderTest1, GenTexturesImmediateValidArgs) { | 1053 TEST_F(GLES2DecoderTest1, GenTexturesImmediateValidArgs) { |
| 1054 EXPECT_CALL(*gl_, GenTextures(1, _)) | 1054 EXPECT_CALL(*gl_, GenTextures(1, _)) |
| 1055 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); | 1055 .WillOnce(SetArgumentPointee<1>(kNewServiceId)); |
| 1056 cmds::GenTexturesImmediate* cmd = | 1056 cmds::GenTexturesImmediate* cmd = |
| 1057 GetImmediateAs<cmds::GenTexturesImmediate>(); | 1057 GetImmediateAs<cmds::GenTexturesImmediate>(); |
| 1058 GLuint temp = kNewClientId; | 1058 GLuint temp = kNewClientId; |
| 1059 SpecializedSetup<cmds::GenTexturesImmediate, 0>(true); | 1059 SpecializedSetup<cmds::GenTexturesImmediate, 0>(true); |
| 1060 cmd->Init(1, &temp); | 1060 cmd->Init(1, &temp); |
| 1061 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(*cmd, sizeof(temp))); | 1061 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(*cmd, sizeof(temp))); |
| 1062 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1062 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1063 EXPECT_TRUE(GetTexture(kNewClientId) != NULL); | 1063 EXPECT_TRUE(GetTexture(kNewClientId) != NULL); |
| 1064 } | 1064 } |
| 1065 | 1065 |
| 1066 TEST_P(GLES2DecoderTest1, GenTexturesImmediateInvalidArgs) { | 1066 TEST_F(GLES2DecoderTest1, GenTexturesImmediateInvalidArgs) { |
| 1067 EXPECT_CALL(*gl_, GenTextures(_, _)).Times(0); | 1067 EXPECT_CALL(*gl_, GenTextures(_, _)).Times(0); |
| 1068 cmds::GenTexturesImmediate* cmd = | 1068 cmds::GenTexturesImmediate* cmd = |
| 1069 GetImmediateAs<cmds::GenTexturesImmediate>(); | 1069 GetImmediateAs<cmds::GenTexturesImmediate>(); |
| 1070 SpecializedSetup<cmds::GenTexturesImmediate, 0>(false); | 1070 SpecializedSetup<cmds::GenTexturesImmediate, 0>(false); |
| 1071 cmd->Init(1, &client_texture_id_); | 1071 cmd->Init(1, &client_texture_id_); |
| 1072 EXPECT_EQ(error::kInvalidArguments, | 1072 EXPECT_EQ(error::kInvalidArguments, |
| 1073 ExecuteImmediateCmd(*cmd, sizeof(&client_texture_id_))); | 1073 ExecuteImmediateCmd(*cmd, sizeof(&client_texture_id_))); |
| 1074 } | 1074 } |
| 1075 // TODO(gman): GetActiveAttrib | 1075 // TODO(gman): GetActiveAttrib |
| 1076 | 1076 |
| 1077 // TODO(gman): GetActiveUniform | 1077 // TODO(gman): GetActiveUniform |
| 1078 | 1078 |
| 1079 // TODO(gman): GetAttachedShaders | 1079 // TODO(gman): GetAttachedShaders |
| 1080 | 1080 |
| 1081 // TODO(gman): GetAttribLocation | 1081 // TODO(gman): GetAttribLocation |
| 1082 | 1082 |
| 1083 // TODO(gman): GetAttribLocationBucket | 1083 // TODO(gman): GetAttribLocationBucket |
| 1084 | 1084 |
| 1085 TEST_P(GLES2DecoderTest1, GetBooleanvValidArgs) { | 1085 TEST_F(GLES2DecoderTest1, GetBooleanvValidArgs) { |
| 1086 EXPECT_CALL(*gl_, GetError()) | 1086 EXPECT_CALL(*gl_, GetError()) |
| 1087 .WillOnce(Return(GL_NO_ERROR)) | 1087 .WillOnce(Return(GL_NO_ERROR)) |
| 1088 .WillOnce(Return(GL_NO_ERROR)) | 1088 .WillOnce(Return(GL_NO_ERROR)) |
| 1089 .RetiresOnSaturation(); | 1089 .RetiresOnSaturation(); |
| 1090 SpecializedSetup<cmds::GetBooleanv, 0>(true); | 1090 SpecializedSetup<cmds::GetBooleanv, 0>(true); |
| 1091 typedef cmds::GetBooleanv::Result Result; | 1091 typedef cmds::GetBooleanv::Result Result; |
| 1092 Result* result = static_cast<Result*>(shared_memory_address_); | 1092 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1093 EXPECT_CALL(*gl_, GetBooleanv(GL_ACTIVE_TEXTURE, result->GetData())); | 1093 EXPECT_CALL(*gl_, GetBooleanv(GL_ACTIVE_TEXTURE, result->GetData())); |
| 1094 result->size = 0; | 1094 result->size = 0; |
| 1095 cmds::GetBooleanv cmd; | 1095 cmds::GetBooleanv cmd; |
| 1096 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, shared_memory_offset_); | 1096 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, shared_memory_offset_); |
| 1097 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1097 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1098 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_ACTIVE_TEXTURE), | 1098 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_ACTIVE_TEXTURE), |
| 1099 result->GetNumResults()); | 1099 result->GetNumResults()); |
| 1100 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1100 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1101 } | 1101 } |
| 1102 | 1102 |
| 1103 TEST_P(GLES2DecoderTest1, GetBooleanvInvalidArgs0_0) { | 1103 TEST_F(GLES2DecoderTest1, GetBooleanvInvalidArgs0_0) { |
| 1104 EXPECT_CALL(*gl_, GetBooleanv(_, _)).Times(0); | 1104 EXPECT_CALL(*gl_, GetBooleanv(_, _)).Times(0); |
| 1105 SpecializedSetup<cmds::GetBooleanv, 0>(false); | 1105 SpecializedSetup<cmds::GetBooleanv, 0>(false); |
| 1106 cmds::GetBooleanv::Result* result = | 1106 cmds::GetBooleanv::Result* result = |
| 1107 static_cast<cmds::GetBooleanv::Result*>(shared_memory_address_); | 1107 static_cast<cmds::GetBooleanv::Result*>(shared_memory_address_); |
| 1108 result->size = 0; | 1108 result->size = 0; |
| 1109 cmds::GetBooleanv cmd; | 1109 cmds::GetBooleanv cmd; |
| 1110 cmd.Init(GL_FOG_HINT, shared_memory_id_, shared_memory_offset_); | 1110 cmd.Init(GL_FOG_HINT, shared_memory_id_, shared_memory_offset_); |
| 1111 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1111 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1112 EXPECT_EQ(0u, result->size); | 1112 EXPECT_EQ(0u, result->size); |
| 1113 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1113 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1114 } | 1114 } |
| 1115 | 1115 |
| 1116 TEST_P(GLES2DecoderTest1, GetBooleanvInvalidArgs1_0) { | 1116 TEST_F(GLES2DecoderTest1, GetBooleanvInvalidArgs1_0) { |
| 1117 EXPECT_CALL(*gl_, GetBooleanv(_, _)).Times(0); | 1117 EXPECT_CALL(*gl_, GetBooleanv(_, _)).Times(0); |
| 1118 SpecializedSetup<cmds::GetBooleanv, 0>(false); | 1118 SpecializedSetup<cmds::GetBooleanv, 0>(false); |
| 1119 cmds::GetBooleanv::Result* result = | 1119 cmds::GetBooleanv::Result* result = |
| 1120 static_cast<cmds::GetBooleanv::Result*>(shared_memory_address_); | 1120 static_cast<cmds::GetBooleanv::Result*>(shared_memory_address_); |
| 1121 result->size = 0; | 1121 result->size = 0; |
| 1122 cmds::GetBooleanv cmd; | 1122 cmds::GetBooleanv cmd; |
| 1123 cmd.Init(GL_ACTIVE_TEXTURE, kInvalidSharedMemoryId, 0); | 1123 cmd.Init(GL_ACTIVE_TEXTURE, kInvalidSharedMemoryId, 0); |
| 1124 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1124 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1125 EXPECT_EQ(0u, result->size); | 1125 EXPECT_EQ(0u, result->size); |
| 1126 } | 1126 } |
| 1127 | 1127 |
| 1128 TEST_P(GLES2DecoderTest1, GetBooleanvInvalidArgs1_1) { | 1128 TEST_F(GLES2DecoderTest1, GetBooleanvInvalidArgs1_1) { |
| 1129 EXPECT_CALL(*gl_, GetBooleanv(_, _)).Times(0); | 1129 EXPECT_CALL(*gl_, GetBooleanv(_, _)).Times(0); |
| 1130 SpecializedSetup<cmds::GetBooleanv, 0>(false); | 1130 SpecializedSetup<cmds::GetBooleanv, 0>(false); |
| 1131 cmds::GetBooleanv::Result* result = | 1131 cmds::GetBooleanv::Result* result = |
| 1132 static_cast<cmds::GetBooleanv::Result*>(shared_memory_address_); | 1132 static_cast<cmds::GetBooleanv::Result*>(shared_memory_address_); |
| 1133 result->size = 0; | 1133 result->size = 0; |
| 1134 cmds::GetBooleanv cmd; | 1134 cmds::GetBooleanv cmd; |
| 1135 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, kInvalidSharedMemoryOffset); | 1135 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, kInvalidSharedMemoryOffset); |
| 1136 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1136 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1137 EXPECT_EQ(0u, result->size); | 1137 EXPECT_EQ(0u, result->size); |
| 1138 } | 1138 } |
| 1139 | 1139 |
| 1140 TEST_P(GLES2DecoderTest1, GetBufferParameterivValidArgs) { | 1140 TEST_F(GLES2DecoderTest1, GetBufferParameterivValidArgs) { |
| 1141 SpecializedSetup<cmds::GetBufferParameteriv, 0>(true); | 1141 SpecializedSetup<cmds::GetBufferParameteriv, 0>(true); |
| 1142 typedef cmds::GetBufferParameteriv::Result Result; | 1142 typedef cmds::GetBufferParameteriv::Result Result; |
| 1143 Result* result = static_cast<Result*>(shared_memory_address_); | 1143 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1144 result->size = 0; | 1144 result->size = 0; |
| 1145 cmds::GetBufferParameteriv cmd; | 1145 cmds::GetBufferParameteriv cmd; |
| 1146 cmd.Init(GL_ARRAY_BUFFER, | 1146 cmd.Init(GL_ARRAY_BUFFER, |
| 1147 GL_BUFFER_SIZE, | 1147 GL_BUFFER_SIZE, |
| 1148 shared_memory_id_, | 1148 shared_memory_id_, |
| 1149 shared_memory_offset_); | 1149 shared_memory_offset_); |
| 1150 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1150 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1151 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_BUFFER_SIZE), | 1151 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_BUFFER_SIZE), |
| 1152 result->GetNumResults()); | 1152 result->GetNumResults()); |
| 1153 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1153 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1154 } | 1154 } |
| 1155 | 1155 |
| 1156 TEST_P(GLES2DecoderTest1, GetBufferParameterivInvalidArgs0_0) { | 1156 TEST_F(GLES2DecoderTest1, GetBufferParameterivInvalidArgs0_0) { |
| 1157 EXPECT_CALL(*gl_, GetBufferParameteriv(_, _, _)).Times(0); | 1157 EXPECT_CALL(*gl_, GetBufferParameteriv(_, _, _)).Times(0); |
| 1158 SpecializedSetup<cmds::GetBufferParameteriv, 0>(false); | 1158 SpecializedSetup<cmds::GetBufferParameteriv, 0>(false); |
| 1159 cmds::GetBufferParameteriv::Result* result = | 1159 cmds::GetBufferParameteriv::Result* result = |
| 1160 static_cast<cmds::GetBufferParameteriv::Result*>(shared_memory_address_); | 1160 static_cast<cmds::GetBufferParameteriv::Result*>(shared_memory_address_); |
| 1161 result->size = 0; | 1161 result->size = 0; |
| 1162 cmds::GetBufferParameteriv cmd; | 1162 cmds::GetBufferParameteriv cmd; |
| 1163 cmd.Init(GL_RENDERBUFFER, | 1163 cmd.Init(GL_RENDERBUFFER, |
| 1164 GL_BUFFER_SIZE, | 1164 GL_BUFFER_SIZE, |
| 1165 shared_memory_id_, | 1165 shared_memory_id_, |
| 1166 shared_memory_offset_); | 1166 shared_memory_offset_); |
| 1167 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1167 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1168 EXPECT_EQ(0u, result->size); | 1168 EXPECT_EQ(0u, result->size); |
| 1169 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1169 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1170 } | 1170 } |
| 1171 | 1171 |
| 1172 TEST_P(GLES2DecoderTest1, GetBufferParameterivInvalidArgs1_0) { | 1172 TEST_F(GLES2DecoderTest1, GetBufferParameterivInvalidArgs1_0) { |
| 1173 EXPECT_CALL(*gl_, GetBufferParameteriv(_, _, _)).Times(0); | 1173 EXPECT_CALL(*gl_, GetBufferParameteriv(_, _, _)).Times(0); |
| 1174 SpecializedSetup<cmds::GetBufferParameteriv, 0>(false); | 1174 SpecializedSetup<cmds::GetBufferParameteriv, 0>(false); |
| 1175 cmds::GetBufferParameteriv::Result* result = | 1175 cmds::GetBufferParameteriv::Result* result = |
| 1176 static_cast<cmds::GetBufferParameteriv::Result*>(shared_memory_address_); | 1176 static_cast<cmds::GetBufferParameteriv::Result*>(shared_memory_address_); |
| 1177 result->size = 0; | 1177 result->size = 0; |
| 1178 cmds::GetBufferParameteriv cmd; | 1178 cmds::GetBufferParameteriv cmd; |
| 1179 cmd.Init(GL_ARRAY_BUFFER, | 1179 cmd.Init(GL_ARRAY_BUFFER, |
| 1180 GL_PIXEL_PACK_BUFFER, | 1180 GL_PIXEL_PACK_BUFFER, |
| 1181 shared_memory_id_, | 1181 shared_memory_id_, |
| 1182 shared_memory_offset_); | 1182 shared_memory_offset_); |
| 1183 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1183 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1184 EXPECT_EQ(0u, result->size); | 1184 EXPECT_EQ(0u, result->size); |
| 1185 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1185 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1186 } | 1186 } |
| 1187 | 1187 |
| 1188 TEST_P(GLES2DecoderTest1, GetBufferParameterivInvalidArgs2_0) { | 1188 TEST_F(GLES2DecoderTest1, GetBufferParameterivInvalidArgs2_0) { |
| 1189 EXPECT_CALL(*gl_, GetBufferParameteriv(_, _, _)).Times(0); | 1189 EXPECT_CALL(*gl_, GetBufferParameteriv(_, _, _)).Times(0); |
| 1190 SpecializedSetup<cmds::GetBufferParameteriv, 0>(false); | 1190 SpecializedSetup<cmds::GetBufferParameteriv, 0>(false); |
| 1191 cmds::GetBufferParameteriv::Result* result = | 1191 cmds::GetBufferParameteriv::Result* result = |
| 1192 static_cast<cmds::GetBufferParameteriv::Result*>(shared_memory_address_); | 1192 static_cast<cmds::GetBufferParameteriv::Result*>(shared_memory_address_); |
| 1193 result->size = 0; | 1193 result->size = 0; |
| 1194 cmds::GetBufferParameteriv cmd; | 1194 cmds::GetBufferParameteriv cmd; |
| 1195 cmd.Init(GL_ARRAY_BUFFER, GL_BUFFER_SIZE, kInvalidSharedMemoryId, 0); | 1195 cmd.Init(GL_ARRAY_BUFFER, GL_BUFFER_SIZE, kInvalidSharedMemoryId, 0); |
| 1196 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1196 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1197 EXPECT_EQ(0u, result->size); | 1197 EXPECT_EQ(0u, result->size); |
| 1198 } | 1198 } |
| 1199 | 1199 |
| 1200 TEST_P(GLES2DecoderTest1, GetBufferParameterivInvalidArgs2_1) { | 1200 TEST_F(GLES2DecoderTest1, GetBufferParameterivInvalidArgs2_1) { |
| 1201 EXPECT_CALL(*gl_, GetBufferParameteriv(_, _, _)).Times(0); | 1201 EXPECT_CALL(*gl_, GetBufferParameteriv(_, _, _)).Times(0); |
| 1202 SpecializedSetup<cmds::GetBufferParameteriv, 0>(false); | 1202 SpecializedSetup<cmds::GetBufferParameteriv, 0>(false); |
| 1203 cmds::GetBufferParameteriv::Result* result = | 1203 cmds::GetBufferParameteriv::Result* result = |
| 1204 static_cast<cmds::GetBufferParameteriv::Result*>(shared_memory_address_); | 1204 static_cast<cmds::GetBufferParameteriv::Result*>(shared_memory_address_); |
| 1205 result->size = 0; | 1205 result->size = 0; |
| 1206 cmds::GetBufferParameteriv cmd; | 1206 cmds::GetBufferParameteriv cmd; |
| 1207 cmd.Init(GL_ARRAY_BUFFER, | 1207 cmd.Init(GL_ARRAY_BUFFER, |
| 1208 GL_BUFFER_SIZE, | 1208 GL_BUFFER_SIZE, |
| 1209 shared_memory_id_, | 1209 shared_memory_id_, |
| 1210 kInvalidSharedMemoryOffset); | 1210 kInvalidSharedMemoryOffset); |
| 1211 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1211 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1212 EXPECT_EQ(0u, result->size); | 1212 EXPECT_EQ(0u, result->size); |
| 1213 } | 1213 } |
| 1214 | 1214 |
| 1215 TEST_P(GLES2DecoderTest1, GetErrorValidArgs) { | 1215 TEST_F(GLES2DecoderTest1, GetErrorValidArgs) { |
| 1216 EXPECT_CALL(*gl_, GetError()); | 1216 EXPECT_CALL(*gl_, GetError()); |
| 1217 SpecializedSetup<cmds::GetError, 0>(true); | 1217 SpecializedSetup<cmds::GetError, 0>(true); |
| 1218 cmds::GetError cmd; | 1218 cmds::GetError cmd; |
| 1219 cmd.Init(shared_memory_id_, shared_memory_offset_); | 1219 cmd.Init(shared_memory_id_, shared_memory_offset_); |
| 1220 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1220 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1221 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1221 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1222 } | 1222 } |
| 1223 | 1223 |
| 1224 TEST_P(GLES2DecoderTest1, GetErrorInvalidArgsBadSharedMemoryId) { | 1224 TEST_F(GLES2DecoderTest1, GetErrorInvalidArgsBadSharedMemoryId) { |
| 1225 EXPECT_CALL(*gl_, GetError()).Times(0); | 1225 EXPECT_CALL(*gl_, GetError()).Times(0); |
| 1226 SpecializedSetup<cmds::GetError, 0>(false); | 1226 SpecializedSetup<cmds::GetError, 0>(false); |
| 1227 cmds::GetError cmd; | 1227 cmds::GetError cmd; |
| 1228 cmd.Init(kInvalidSharedMemoryId, shared_memory_offset_); | 1228 cmd.Init(kInvalidSharedMemoryId, shared_memory_offset_); |
| 1229 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1229 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1230 cmd.Init(shared_memory_id_, kInvalidSharedMemoryOffset); | 1230 cmd.Init(shared_memory_id_, kInvalidSharedMemoryOffset); |
| 1231 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1231 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1232 } | 1232 } |
| 1233 | 1233 |
| 1234 TEST_P(GLES2DecoderTest1, GetFloatvValidArgs) { | 1234 TEST_F(GLES2DecoderTest1, GetFloatvValidArgs) { |
| 1235 EXPECT_CALL(*gl_, GetError()) | 1235 EXPECT_CALL(*gl_, GetError()) |
| 1236 .WillOnce(Return(GL_NO_ERROR)) | 1236 .WillOnce(Return(GL_NO_ERROR)) |
| 1237 .WillOnce(Return(GL_NO_ERROR)) | 1237 .WillOnce(Return(GL_NO_ERROR)) |
| 1238 .RetiresOnSaturation(); | 1238 .RetiresOnSaturation(); |
| 1239 SpecializedSetup<cmds::GetFloatv, 0>(true); | 1239 SpecializedSetup<cmds::GetFloatv, 0>(true); |
| 1240 typedef cmds::GetFloatv::Result Result; | 1240 typedef cmds::GetFloatv::Result Result; |
| 1241 Result* result = static_cast<Result*>(shared_memory_address_); | 1241 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1242 EXPECT_CALL(*gl_, GetFloatv(GL_ACTIVE_TEXTURE, result->GetData())); | 1242 EXPECT_CALL(*gl_, GetFloatv(GL_ACTIVE_TEXTURE, result->GetData())); |
| 1243 result->size = 0; | 1243 result->size = 0; |
| 1244 cmds::GetFloatv cmd; | 1244 cmds::GetFloatv cmd; |
| 1245 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, shared_memory_offset_); | 1245 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, shared_memory_offset_); |
| 1246 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1246 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1247 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_ACTIVE_TEXTURE), | 1247 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_ACTIVE_TEXTURE), |
| 1248 result->GetNumResults()); | 1248 result->GetNumResults()); |
| 1249 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1249 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1250 } | 1250 } |
| 1251 | 1251 |
| 1252 TEST_P(GLES2DecoderTest1, GetFloatvInvalidArgs0_0) { | 1252 TEST_F(GLES2DecoderTest1, GetFloatvInvalidArgs0_0) { |
| 1253 EXPECT_CALL(*gl_, GetFloatv(_, _)).Times(0); | 1253 EXPECT_CALL(*gl_, GetFloatv(_, _)).Times(0); |
| 1254 SpecializedSetup<cmds::GetFloatv, 0>(false); | 1254 SpecializedSetup<cmds::GetFloatv, 0>(false); |
| 1255 cmds::GetFloatv::Result* result = | 1255 cmds::GetFloatv::Result* result = |
| 1256 static_cast<cmds::GetFloatv::Result*>(shared_memory_address_); | 1256 static_cast<cmds::GetFloatv::Result*>(shared_memory_address_); |
| 1257 result->size = 0; | 1257 result->size = 0; |
| 1258 cmds::GetFloatv cmd; | 1258 cmds::GetFloatv cmd; |
| 1259 cmd.Init(GL_FOG_HINT, shared_memory_id_, shared_memory_offset_); | 1259 cmd.Init(GL_FOG_HINT, shared_memory_id_, shared_memory_offset_); |
| 1260 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1260 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1261 EXPECT_EQ(0u, result->size); | 1261 EXPECT_EQ(0u, result->size); |
| 1262 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1262 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1263 } | 1263 } |
| 1264 | 1264 |
| 1265 TEST_P(GLES2DecoderTest1, GetFloatvInvalidArgs1_0) { | 1265 TEST_F(GLES2DecoderTest1, GetFloatvInvalidArgs1_0) { |
| 1266 EXPECT_CALL(*gl_, GetFloatv(_, _)).Times(0); | 1266 EXPECT_CALL(*gl_, GetFloatv(_, _)).Times(0); |
| 1267 SpecializedSetup<cmds::GetFloatv, 0>(false); | 1267 SpecializedSetup<cmds::GetFloatv, 0>(false); |
| 1268 cmds::GetFloatv::Result* result = | 1268 cmds::GetFloatv::Result* result = |
| 1269 static_cast<cmds::GetFloatv::Result*>(shared_memory_address_); | 1269 static_cast<cmds::GetFloatv::Result*>(shared_memory_address_); |
| 1270 result->size = 0; | 1270 result->size = 0; |
| 1271 cmds::GetFloatv cmd; | 1271 cmds::GetFloatv cmd; |
| 1272 cmd.Init(GL_ACTIVE_TEXTURE, kInvalidSharedMemoryId, 0); | 1272 cmd.Init(GL_ACTIVE_TEXTURE, kInvalidSharedMemoryId, 0); |
| 1273 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1273 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1274 EXPECT_EQ(0u, result->size); | 1274 EXPECT_EQ(0u, result->size); |
| 1275 } | 1275 } |
| 1276 | 1276 |
| 1277 TEST_P(GLES2DecoderTest1, GetFloatvInvalidArgs1_1) { | 1277 TEST_F(GLES2DecoderTest1, GetFloatvInvalidArgs1_1) { |
| 1278 EXPECT_CALL(*gl_, GetFloatv(_, _)).Times(0); | 1278 EXPECT_CALL(*gl_, GetFloatv(_, _)).Times(0); |
| 1279 SpecializedSetup<cmds::GetFloatv, 0>(false); | 1279 SpecializedSetup<cmds::GetFloatv, 0>(false); |
| 1280 cmds::GetFloatv::Result* result = | 1280 cmds::GetFloatv::Result* result = |
| 1281 static_cast<cmds::GetFloatv::Result*>(shared_memory_address_); | 1281 static_cast<cmds::GetFloatv::Result*>(shared_memory_address_); |
| 1282 result->size = 0; | 1282 result->size = 0; |
| 1283 cmds::GetFloatv cmd; | 1283 cmds::GetFloatv cmd; |
| 1284 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, kInvalidSharedMemoryOffset); | 1284 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, kInvalidSharedMemoryOffset); |
| 1285 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1285 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1286 EXPECT_EQ(0u, result->size); | 1286 EXPECT_EQ(0u, result->size); |
| 1287 } | 1287 } |
| 1288 | 1288 |
| 1289 TEST_P(GLES2DecoderTest1, GetFramebufferAttachmentParameterivValidArgs) { | 1289 TEST_F(GLES2DecoderTest1, GetFramebufferAttachmentParameterivValidArgs) { |
| 1290 EXPECT_CALL(*gl_, GetError()) | 1290 EXPECT_CALL(*gl_, GetError()) |
| 1291 .WillOnce(Return(GL_NO_ERROR)) | 1291 .WillOnce(Return(GL_NO_ERROR)) |
| 1292 .WillOnce(Return(GL_NO_ERROR)) | 1292 .WillOnce(Return(GL_NO_ERROR)) |
| 1293 .RetiresOnSaturation(); | 1293 .RetiresOnSaturation(); |
| 1294 SpecializedSetup<cmds::GetFramebufferAttachmentParameteriv, 0>(true); | 1294 SpecializedSetup<cmds::GetFramebufferAttachmentParameteriv, 0>(true); |
| 1295 typedef cmds::GetFramebufferAttachmentParameteriv::Result Result; | 1295 typedef cmds::GetFramebufferAttachmentParameteriv::Result Result; |
| 1296 Result* result = static_cast<Result*>(shared_memory_address_); | 1296 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1297 EXPECT_CALL(*gl_, | 1297 EXPECT_CALL(*gl_, |
| 1298 GetFramebufferAttachmentParameterivEXT( | 1298 GetFramebufferAttachmentParameterivEXT( |
| 1299 GL_FRAMEBUFFER, | 1299 GL_FRAMEBUFFER, |
| 1300 GL_COLOR_ATTACHMENT0, | 1300 GL_COLOR_ATTACHMENT0, |
| 1301 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, | 1301 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, |
| 1302 result->GetData())); | 1302 result->GetData())); |
| 1303 result->size = 0; | 1303 result->size = 0; |
| 1304 cmds::GetFramebufferAttachmentParameteriv cmd; | 1304 cmds::GetFramebufferAttachmentParameteriv cmd; |
| 1305 cmd.Init(GL_FRAMEBUFFER, | 1305 cmd.Init(GL_FRAMEBUFFER, |
| 1306 GL_COLOR_ATTACHMENT0, | 1306 GL_COLOR_ATTACHMENT0, |
| 1307 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, | 1307 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, |
| 1308 shared_memory_id_, | 1308 shared_memory_id_, |
| 1309 shared_memory_offset_); | 1309 shared_memory_offset_); |
| 1310 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1310 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1311 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned( | 1311 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned( |
| 1312 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE), | 1312 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE), |
| 1313 result->GetNumResults()); | 1313 result->GetNumResults()); |
| 1314 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1314 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1315 } | 1315 } |
| 1316 | 1316 |
| 1317 TEST_P(GLES2DecoderTest1, GetFramebufferAttachmentParameterivInvalidArgs0_0) { | 1317 TEST_F(GLES2DecoderTest1, GetFramebufferAttachmentParameterivInvalidArgs0_0) { |
| 1318 EXPECT_CALL(*gl_, GetFramebufferAttachmentParameterivEXT(_, _, _, _)) | 1318 EXPECT_CALL(*gl_, GetFramebufferAttachmentParameterivEXT(_, _, _, _)) |
| 1319 .Times(0); | 1319 .Times(0); |
| 1320 SpecializedSetup<cmds::GetFramebufferAttachmentParameteriv, 0>(false); | 1320 SpecializedSetup<cmds::GetFramebufferAttachmentParameteriv, 0>(false); |
| 1321 cmds::GetFramebufferAttachmentParameteriv::Result* result = | 1321 cmds::GetFramebufferAttachmentParameteriv::Result* result = |
| 1322 static_cast<cmds::GetFramebufferAttachmentParameteriv::Result*>( | 1322 static_cast<cmds::GetFramebufferAttachmentParameteriv::Result*>( |
| 1323 shared_memory_address_); | 1323 shared_memory_address_); |
| 1324 result->size = 0; | 1324 result->size = 0; |
| 1325 cmds::GetFramebufferAttachmentParameteriv cmd; | 1325 cmds::GetFramebufferAttachmentParameteriv cmd; |
| 1326 cmd.Init(GL_DRAW_FRAMEBUFFER, | 1326 cmd.Init(GL_DRAW_FRAMEBUFFER, |
| 1327 GL_COLOR_ATTACHMENT0, | 1327 GL_COLOR_ATTACHMENT0, |
| 1328 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, | 1328 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, |
| 1329 shared_memory_id_, | 1329 shared_memory_id_, |
| 1330 shared_memory_offset_); | 1330 shared_memory_offset_); |
| 1331 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1331 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1332 EXPECT_EQ(0u, result->size); | 1332 EXPECT_EQ(0u, result->size); |
| 1333 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1333 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1334 } | 1334 } |
| 1335 | 1335 |
| 1336 TEST_P(GLES2DecoderTest1, GetFramebufferAttachmentParameterivInvalidArgs0_1) { | 1336 TEST_F(GLES2DecoderTest1, GetFramebufferAttachmentParameterivInvalidArgs0_1) { |
| 1337 EXPECT_CALL(*gl_, GetFramebufferAttachmentParameterivEXT(_, _, _, _)) | 1337 EXPECT_CALL(*gl_, GetFramebufferAttachmentParameterivEXT(_, _, _, _)) |
| 1338 .Times(0); | 1338 .Times(0); |
| 1339 SpecializedSetup<cmds::GetFramebufferAttachmentParameteriv, 0>(false); | 1339 SpecializedSetup<cmds::GetFramebufferAttachmentParameteriv, 0>(false); |
| 1340 cmds::GetFramebufferAttachmentParameteriv::Result* result = | 1340 cmds::GetFramebufferAttachmentParameteriv::Result* result = |
| 1341 static_cast<cmds::GetFramebufferAttachmentParameteriv::Result*>( | 1341 static_cast<cmds::GetFramebufferAttachmentParameteriv::Result*>( |
| 1342 shared_memory_address_); | 1342 shared_memory_address_); |
| 1343 result->size = 0; | 1343 result->size = 0; |
| 1344 cmds::GetFramebufferAttachmentParameteriv cmd; | 1344 cmds::GetFramebufferAttachmentParameteriv cmd; |
| 1345 cmd.Init(GL_READ_FRAMEBUFFER, | 1345 cmd.Init(GL_READ_FRAMEBUFFER, |
| 1346 GL_COLOR_ATTACHMENT0, | 1346 GL_COLOR_ATTACHMENT0, |
| 1347 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, | 1347 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, |
| 1348 shared_memory_id_, | 1348 shared_memory_id_, |
| 1349 shared_memory_offset_); | 1349 shared_memory_offset_); |
| 1350 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1350 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1351 EXPECT_EQ(0u, result->size); | 1351 EXPECT_EQ(0u, result->size); |
| 1352 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1352 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1353 } | 1353 } |
| 1354 | 1354 |
| 1355 TEST_P(GLES2DecoderTest1, GetFramebufferAttachmentParameterivInvalidArgs3_0) { | 1355 TEST_F(GLES2DecoderTest1, GetFramebufferAttachmentParameterivInvalidArgs3_0) { |
| 1356 EXPECT_CALL(*gl_, GetFramebufferAttachmentParameterivEXT(_, _, _, _)) | 1356 EXPECT_CALL(*gl_, GetFramebufferAttachmentParameterivEXT(_, _, _, _)) |
| 1357 .Times(0); | 1357 .Times(0); |
| 1358 SpecializedSetup<cmds::GetFramebufferAttachmentParameteriv, 0>(false); | 1358 SpecializedSetup<cmds::GetFramebufferAttachmentParameteriv, 0>(false); |
| 1359 cmds::GetFramebufferAttachmentParameteriv::Result* result = | 1359 cmds::GetFramebufferAttachmentParameteriv::Result* result = |
| 1360 static_cast<cmds::GetFramebufferAttachmentParameteriv::Result*>( | 1360 static_cast<cmds::GetFramebufferAttachmentParameteriv::Result*>( |
| 1361 shared_memory_address_); | 1361 shared_memory_address_); |
| 1362 result->size = 0; | 1362 result->size = 0; |
| 1363 cmds::GetFramebufferAttachmentParameteriv cmd; | 1363 cmds::GetFramebufferAttachmentParameteriv cmd; |
| 1364 cmd.Init(GL_FRAMEBUFFER, | 1364 cmd.Init(GL_FRAMEBUFFER, |
| 1365 GL_COLOR_ATTACHMENT0, | 1365 GL_COLOR_ATTACHMENT0, |
| 1366 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, | 1366 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, |
| 1367 kInvalidSharedMemoryId, | 1367 kInvalidSharedMemoryId, |
| 1368 0); | 1368 0); |
| 1369 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1369 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1370 EXPECT_EQ(0u, result->size); | 1370 EXPECT_EQ(0u, result->size); |
| 1371 } | 1371 } |
| 1372 | 1372 |
| 1373 TEST_P(GLES2DecoderTest1, GetFramebufferAttachmentParameterivInvalidArgs3_1) { | 1373 TEST_F(GLES2DecoderTest1, GetFramebufferAttachmentParameterivInvalidArgs3_1) { |
| 1374 EXPECT_CALL(*gl_, GetFramebufferAttachmentParameterivEXT(_, _, _, _)) | 1374 EXPECT_CALL(*gl_, GetFramebufferAttachmentParameterivEXT(_, _, _, _)) |
| 1375 .Times(0); | 1375 .Times(0); |
| 1376 SpecializedSetup<cmds::GetFramebufferAttachmentParameteriv, 0>(false); | 1376 SpecializedSetup<cmds::GetFramebufferAttachmentParameteriv, 0>(false); |
| 1377 cmds::GetFramebufferAttachmentParameteriv::Result* result = | 1377 cmds::GetFramebufferAttachmentParameteriv::Result* result = |
| 1378 static_cast<cmds::GetFramebufferAttachmentParameteriv::Result*>( | 1378 static_cast<cmds::GetFramebufferAttachmentParameteriv::Result*>( |
| 1379 shared_memory_address_); | 1379 shared_memory_address_); |
| 1380 result->size = 0; | 1380 result->size = 0; |
| 1381 cmds::GetFramebufferAttachmentParameteriv cmd; | 1381 cmds::GetFramebufferAttachmentParameteriv cmd; |
| 1382 cmd.Init(GL_FRAMEBUFFER, | 1382 cmd.Init(GL_FRAMEBUFFER, |
| 1383 GL_COLOR_ATTACHMENT0, | 1383 GL_COLOR_ATTACHMENT0, |
| 1384 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, | 1384 GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, |
| 1385 shared_memory_id_, | 1385 shared_memory_id_, |
| 1386 kInvalidSharedMemoryOffset); | 1386 kInvalidSharedMemoryOffset); |
| 1387 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1387 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1388 EXPECT_EQ(0u, result->size); | 1388 EXPECT_EQ(0u, result->size); |
| 1389 } | 1389 } |
| 1390 | 1390 |
| 1391 TEST_P(GLES2DecoderTest1, GetIntegervValidArgs) { | 1391 TEST_F(GLES2DecoderTest1, GetIntegervValidArgs) { |
| 1392 EXPECT_CALL(*gl_, GetError()) | 1392 EXPECT_CALL(*gl_, GetError()) |
| 1393 .WillOnce(Return(GL_NO_ERROR)) | 1393 .WillOnce(Return(GL_NO_ERROR)) |
| 1394 .WillOnce(Return(GL_NO_ERROR)) | 1394 .WillOnce(Return(GL_NO_ERROR)) |
| 1395 .RetiresOnSaturation(); | 1395 .RetiresOnSaturation(); |
| 1396 SpecializedSetup<cmds::GetIntegerv, 0>(true); | 1396 SpecializedSetup<cmds::GetIntegerv, 0>(true); |
| 1397 typedef cmds::GetIntegerv::Result Result; | 1397 typedef cmds::GetIntegerv::Result Result; |
| 1398 Result* result = static_cast<Result*>(shared_memory_address_); | 1398 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1399 EXPECT_CALL(*gl_, GetIntegerv(GL_ACTIVE_TEXTURE, result->GetData())); | 1399 EXPECT_CALL(*gl_, GetIntegerv(GL_ACTIVE_TEXTURE, result->GetData())); |
| 1400 result->size = 0; | 1400 result->size = 0; |
| 1401 cmds::GetIntegerv cmd; | 1401 cmds::GetIntegerv cmd; |
| 1402 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, shared_memory_offset_); | 1402 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, shared_memory_offset_); |
| 1403 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1403 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1404 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_ACTIVE_TEXTURE), | 1404 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_ACTIVE_TEXTURE), |
| 1405 result->GetNumResults()); | 1405 result->GetNumResults()); |
| 1406 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1406 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1407 } | 1407 } |
| 1408 | 1408 |
| 1409 TEST_P(GLES2DecoderTest1, GetIntegervInvalidArgs0_0) { | 1409 TEST_F(GLES2DecoderTest1, GetIntegervInvalidArgs0_0) { |
| 1410 EXPECT_CALL(*gl_, GetIntegerv(_, _)).Times(0); | 1410 EXPECT_CALL(*gl_, GetIntegerv(_, _)).Times(0); |
| 1411 SpecializedSetup<cmds::GetIntegerv, 0>(false); | 1411 SpecializedSetup<cmds::GetIntegerv, 0>(false); |
| 1412 cmds::GetIntegerv::Result* result = | 1412 cmds::GetIntegerv::Result* result = |
| 1413 static_cast<cmds::GetIntegerv::Result*>(shared_memory_address_); | 1413 static_cast<cmds::GetIntegerv::Result*>(shared_memory_address_); |
| 1414 result->size = 0; | 1414 result->size = 0; |
| 1415 cmds::GetIntegerv cmd; | 1415 cmds::GetIntegerv cmd; |
| 1416 cmd.Init(GL_FOG_HINT, shared_memory_id_, shared_memory_offset_); | 1416 cmd.Init(GL_FOG_HINT, shared_memory_id_, shared_memory_offset_); |
| 1417 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1417 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1418 EXPECT_EQ(0u, result->size); | 1418 EXPECT_EQ(0u, result->size); |
| 1419 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1419 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1420 } | 1420 } |
| 1421 | 1421 |
| 1422 TEST_P(GLES2DecoderTest1, GetIntegervInvalidArgs1_0) { | 1422 TEST_F(GLES2DecoderTest1, GetIntegervInvalidArgs1_0) { |
| 1423 EXPECT_CALL(*gl_, GetIntegerv(_, _)).Times(0); | 1423 EXPECT_CALL(*gl_, GetIntegerv(_, _)).Times(0); |
| 1424 SpecializedSetup<cmds::GetIntegerv, 0>(false); | 1424 SpecializedSetup<cmds::GetIntegerv, 0>(false); |
| 1425 cmds::GetIntegerv::Result* result = | 1425 cmds::GetIntegerv::Result* result = |
| 1426 static_cast<cmds::GetIntegerv::Result*>(shared_memory_address_); | 1426 static_cast<cmds::GetIntegerv::Result*>(shared_memory_address_); |
| 1427 result->size = 0; | 1427 result->size = 0; |
| 1428 cmds::GetIntegerv cmd; | 1428 cmds::GetIntegerv cmd; |
| 1429 cmd.Init(GL_ACTIVE_TEXTURE, kInvalidSharedMemoryId, 0); | 1429 cmd.Init(GL_ACTIVE_TEXTURE, kInvalidSharedMemoryId, 0); |
| 1430 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1430 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1431 EXPECT_EQ(0u, result->size); | 1431 EXPECT_EQ(0u, result->size); |
| 1432 } | 1432 } |
| 1433 | 1433 |
| 1434 TEST_P(GLES2DecoderTest1, GetIntegervInvalidArgs1_1) { | 1434 TEST_F(GLES2DecoderTest1, GetIntegervInvalidArgs1_1) { |
| 1435 EXPECT_CALL(*gl_, GetIntegerv(_, _)).Times(0); | 1435 EXPECT_CALL(*gl_, GetIntegerv(_, _)).Times(0); |
| 1436 SpecializedSetup<cmds::GetIntegerv, 0>(false); | 1436 SpecializedSetup<cmds::GetIntegerv, 0>(false); |
| 1437 cmds::GetIntegerv::Result* result = | 1437 cmds::GetIntegerv::Result* result = |
| 1438 static_cast<cmds::GetIntegerv::Result*>(shared_memory_address_); | 1438 static_cast<cmds::GetIntegerv::Result*>(shared_memory_address_); |
| 1439 result->size = 0; | 1439 result->size = 0; |
| 1440 cmds::GetIntegerv cmd; | 1440 cmds::GetIntegerv cmd; |
| 1441 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, kInvalidSharedMemoryOffset); | 1441 cmd.Init(GL_ACTIVE_TEXTURE, shared_memory_id_, kInvalidSharedMemoryOffset); |
| 1442 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1442 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1443 EXPECT_EQ(0u, result->size); | 1443 EXPECT_EQ(0u, result->size); |
| 1444 } | 1444 } |
| 1445 | 1445 |
| 1446 TEST_P(GLES2DecoderTest1, GetProgramivValidArgs) { | 1446 TEST_F(GLES2DecoderTest1, GetProgramivValidArgs) { |
| 1447 SpecializedSetup<cmds::GetProgramiv, 0>(true); | 1447 SpecializedSetup<cmds::GetProgramiv, 0>(true); |
| 1448 typedef cmds::GetProgramiv::Result Result; | 1448 typedef cmds::GetProgramiv::Result Result; |
| 1449 Result* result = static_cast<Result*>(shared_memory_address_); | 1449 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1450 result->size = 0; | 1450 result->size = 0; |
| 1451 cmds::GetProgramiv cmd; | 1451 cmds::GetProgramiv cmd; |
| 1452 cmd.Init(client_program_id_, | 1452 cmd.Init(client_program_id_, |
| 1453 GL_DELETE_STATUS, | 1453 GL_DELETE_STATUS, |
| 1454 shared_memory_id_, | 1454 shared_memory_id_, |
| 1455 shared_memory_offset_); | 1455 shared_memory_offset_); |
| 1456 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1456 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1457 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_DELETE_STATUS), | 1457 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_DELETE_STATUS), |
| 1458 result->GetNumResults()); | 1458 result->GetNumResults()); |
| 1459 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1459 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1460 } | 1460 } |
| 1461 | 1461 |
| 1462 TEST_P(GLES2DecoderTest1, GetProgramivInvalidArgs2_0) { | 1462 TEST_F(GLES2DecoderTest1, GetProgramivInvalidArgs2_0) { |
| 1463 EXPECT_CALL(*gl_, GetProgramiv(_, _, _)).Times(0); | 1463 EXPECT_CALL(*gl_, GetProgramiv(_, _, _)).Times(0); |
| 1464 SpecializedSetup<cmds::GetProgramiv, 0>(false); | 1464 SpecializedSetup<cmds::GetProgramiv, 0>(false); |
| 1465 cmds::GetProgramiv::Result* result = | 1465 cmds::GetProgramiv::Result* result = |
| 1466 static_cast<cmds::GetProgramiv::Result*>(shared_memory_address_); | 1466 static_cast<cmds::GetProgramiv::Result*>(shared_memory_address_); |
| 1467 result->size = 0; | 1467 result->size = 0; |
| 1468 cmds::GetProgramiv cmd; | 1468 cmds::GetProgramiv cmd; |
| 1469 cmd.Init(client_program_id_, GL_DELETE_STATUS, kInvalidSharedMemoryId, 0); | 1469 cmd.Init(client_program_id_, GL_DELETE_STATUS, kInvalidSharedMemoryId, 0); |
| 1470 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1470 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1471 EXPECT_EQ(0u, result->size); | 1471 EXPECT_EQ(0u, result->size); |
| 1472 } | 1472 } |
| 1473 | 1473 |
| 1474 TEST_P(GLES2DecoderTest1, GetProgramivInvalidArgs2_1) { | 1474 TEST_F(GLES2DecoderTest1, GetProgramivInvalidArgs2_1) { |
| 1475 EXPECT_CALL(*gl_, GetProgramiv(_, _, _)).Times(0); | 1475 EXPECT_CALL(*gl_, GetProgramiv(_, _, _)).Times(0); |
| 1476 SpecializedSetup<cmds::GetProgramiv, 0>(false); | 1476 SpecializedSetup<cmds::GetProgramiv, 0>(false); |
| 1477 cmds::GetProgramiv::Result* result = | 1477 cmds::GetProgramiv::Result* result = |
| 1478 static_cast<cmds::GetProgramiv::Result*>(shared_memory_address_); | 1478 static_cast<cmds::GetProgramiv::Result*>(shared_memory_address_); |
| 1479 result->size = 0; | 1479 result->size = 0; |
| 1480 cmds::GetProgramiv cmd; | 1480 cmds::GetProgramiv cmd; |
| 1481 cmd.Init(client_program_id_, | 1481 cmd.Init(client_program_id_, |
| 1482 GL_DELETE_STATUS, | 1482 GL_DELETE_STATUS, |
| 1483 shared_memory_id_, | 1483 shared_memory_id_, |
| 1484 kInvalidSharedMemoryOffset); | 1484 kInvalidSharedMemoryOffset); |
| 1485 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1485 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1486 EXPECT_EQ(0u, result->size); | 1486 EXPECT_EQ(0u, result->size); |
| 1487 } | 1487 } |
| 1488 | 1488 |
| 1489 TEST_P(GLES2DecoderTest1, GetProgramInfoLogValidArgs) { | 1489 TEST_F(GLES2DecoderTest1, GetProgramInfoLogValidArgs) { |
| 1490 const char* kInfo = "hello"; | 1490 const char* kInfo = "hello"; |
| 1491 const uint32 kBucketId = 123; | 1491 const uint32 kBucketId = 123; |
| 1492 SpecializedSetup<cmds::GetProgramInfoLog, 0>(true); | 1492 SpecializedSetup<cmds::GetProgramInfoLog, 0>(true); |
| 1493 | 1493 |
| 1494 cmds::GetProgramInfoLog cmd; | 1494 cmds::GetProgramInfoLog cmd; |
| 1495 cmd.Init(client_program_id_, kBucketId); | 1495 cmd.Init(client_program_id_, kBucketId); |
| 1496 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1496 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1497 CommonDecoder::Bucket* bucket = decoder_->GetBucket(kBucketId); | 1497 CommonDecoder::Bucket* bucket = decoder_->GetBucket(kBucketId); |
| 1498 ASSERT_TRUE(bucket != NULL); | 1498 ASSERT_TRUE(bucket != NULL); |
| 1499 EXPECT_EQ(strlen(kInfo) + 1, bucket->size()); | 1499 EXPECT_EQ(strlen(kInfo) + 1, bucket->size()); |
| 1500 EXPECT_EQ(0, | 1500 EXPECT_EQ(0, |
| 1501 memcmp(bucket->GetData(0, bucket->size()), kInfo, bucket->size())); | 1501 memcmp(bucket->GetData(0, bucket->size()), kInfo, bucket->size())); |
| 1502 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1502 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1503 } | 1503 } |
| 1504 | 1504 |
| 1505 TEST_P(GLES2DecoderTest1, GetProgramInfoLogInvalidArgs) { | 1505 TEST_F(GLES2DecoderTest1, GetProgramInfoLogInvalidArgs) { |
| 1506 const uint32 kBucketId = 123; | 1506 const uint32 kBucketId = 123; |
| 1507 cmds::GetProgramInfoLog cmd; | 1507 cmds::GetProgramInfoLog cmd; |
| 1508 cmd.Init(kInvalidClientId, kBucketId); | 1508 cmd.Init(kInvalidClientId, kBucketId); |
| 1509 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1509 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1510 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); | 1510 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
| 1511 } | 1511 } |
| 1512 | 1512 |
| 1513 TEST_P(GLES2DecoderTest1, GetRenderbufferParameterivValidArgs) { | 1513 TEST_F(GLES2DecoderTest1, GetRenderbufferParameterivValidArgs) { |
| 1514 EXPECT_CALL(*gl_, GetError()) | 1514 EXPECT_CALL(*gl_, GetError()) |
| 1515 .WillOnce(Return(GL_NO_ERROR)) | 1515 .WillOnce(Return(GL_NO_ERROR)) |
| 1516 .WillOnce(Return(GL_NO_ERROR)) | 1516 .WillOnce(Return(GL_NO_ERROR)) |
| 1517 .RetiresOnSaturation(); | 1517 .RetiresOnSaturation(); |
| 1518 SpecializedSetup<cmds::GetRenderbufferParameteriv, 0>(true); | 1518 SpecializedSetup<cmds::GetRenderbufferParameteriv, 0>(true); |
| 1519 typedef cmds::GetRenderbufferParameteriv::Result Result; | 1519 typedef cmds::GetRenderbufferParameteriv::Result Result; |
| 1520 Result* result = static_cast<Result*>(shared_memory_address_); | 1520 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1521 EXPECT_CALL( | 1521 EXPECT_CALL( |
| 1522 *gl_, | 1522 *gl_, |
| 1523 GetRenderbufferParameterivEXT( | 1523 GetRenderbufferParameterivEXT( |
| 1524 GL_RENDERBUFFER, GL_RENDERBUFFER_RED_SIZE, result->GetData())); | 1524 GL_RENDERBUFFER, GL_RENDERBUFFER_RED_SIZE, result->GetData())); |
| 1525 result->size = 0; | 1525 result->size = 0; |
| 1526 cmds::GetRenderbufferParameteriv cmd; | 1526 cmds::GetRenderbufferParameteriv cmd; |
| 1527 cmd.Init(GL_RENDERBUFFER, | 1527 cmd.Init(GL_RENDERBUFFER, |
| 1528 GL_RENDERBUFFER_RED_SIZE, | 1528 GL_RENDERBUFFER_RED_SIZE, |
| 1529 shared_memory_id_, | 1529 shared_memory_id_, |
| 1530 shared_memory_offset_); | 1530 shared_memory_offset_); |
| 1531 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1531 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1532 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned( | 1532 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned( |
| 1533 GL_RENDERBUFFER_RED_SIZE), | 1533 GL_RENDERBUFFER_RED_SIZE), |
| 1534 result->GetNumResults()); | 1534 result->GetNumResults()); |
| 1535 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1535 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1536 } | 1536 } |
| 1537 | 1537 |
| 1538 TEST_P(GLES2DecoderTest1, GetRenderbufferParameterivInvalidArgs0_0) { | 1538 TEST_F(GLES2DecoderTest1, GetRenderbufferParameterivInvalidArgs0_0) { |
| 1539 EXPECT_CALL(*gl_, GetRenderbufferParameterivEXT(_, _, _)).Times(0); | 1539 EXPECT_CALL(*gl_, GetRenderbufferParameterivEXT(_, _, _)).Times(0); |
| 1540 SpecializedSetup<cmds::GetRenderbufferParameteriv, 0>(false); | 1540 SpecializedSetup<cmds::GetRenderbufferParameteriv, 0>(false); |
| 1541 cmds::GetRenderbufferParameteriv::Result* result = | 1541 cmds::GetRenderbufferParameteriv::Result* result = |
| 1542 static_cast<cmds::GetRenderbufferParameteriv::Result*>( | 1542 static_cast<cmds::GetRenderbufferParameteriv::Result*>( |
| 1543 shared_memory_address_); | 1543 shared_memory_address_); |
| 1544 result->size = 0; | 1544 result->size = 0; |
| 1545 cmds::GetRenderbufferParameteriv cmd; | 1545 cmds::GetRenderbufferParameteriv cmd; |
| 1546 cmd.Init(GL_FRAMEBUFFER, | 1546 cmd.Init(GL_FRAMEBUFFER, |
| 1547 GL_RENDERBUFFER_RED_SIZE, | 1547 GL_RENDERBUFFER_RED_SIZE, |
| 1548 shared_memory_id_, | 1548 shared_memory_id_, |
| 1549 shared_memory_offset_); | 1549 shared_memory_offset_); |
| 1550 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1550 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1551 EXPECT_EQ(0u, result->size); | 1551 EXPECT_EQ(0u, result->size); |
| 1552 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1552 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1553 } | 1553 } |
| 1554 | 1554 |
| 1555 TEST_P(GLES2DecoderTest1, GetRenderbufferParameterivInvalidArgs2_0) { | 1555 TEST_F(GLES2DecoderTest1, GetRenderbufferParameterivInvalidArgs2_0) { |
| 1556 EXPECT_CALL(*gl_, GetRenderbufferParameterivEXT(_, _, _)).Times(0); | 1556 EXPECT_CALL(*gl_, GetRenderbufferParameterivEXT(_, _, _)).Times(0); |
| 1557 SpecializedSetup<cmds::GetRenderbufferParameteriv, 0>(false); | 1557 SpecializedSetup<cmds::GetRenderbufferParameteriv, 0>(false); |
| 1558 cmds::GetRenderbufferParameteriv::Result* result = | 1558 cmds::GetRenderbufferParameteriv::Result* result = |
| 1559 static_cast<cmds::GetRenderbufferParameteriv::Result*>( | 1559 static_cast<cmds::GetRenderbufferParameteriv::Result*>( |
| 1560 shared_memory_address_); | 1560 shared_memory_address_); |
| 1561 result->size = 0; | 1561 result->size = 0; |
| 1562 cmds::GetRenderbufferParameteriv cmd; | 1562 cmds::GetRenderbufferParameteriv cmd; |
| 1563 cmd.Init( | 1563 cmd.Init( |
| 1564 GL_RENDERBUFFER, GL_RENDERBUFFER_RED_SIZE, kInvalidSharedMemoryId, 0); | 1564 GL_RENDERBUFFER, GL_RENDERBUFFER_RED_SIZE, kInvalidSharedMemoryId, 0); |
| 1565 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1565 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1566 EXPECT_EQ(0u, result->size); | 1566 EXPECT_EQ(0u, result->size); |
| 1567 } | 1567 } |
| 1568 | 1568 |
| 1569 TEST_P(GLES2DecoderTest1, GetRenderbufferParameterivInvalidArgs2_1) { | 1569 TEST_F(GLES2DecoderTest1, GetRenderbufferParameterivInvalidArgs2_1) { |
| 1570 EXPECT_CALL(*gl_, GetRenderbufferParameterivEXT(_, _, _)).Times(0); | 1570 EXPECT_CALL(*gl_, GetRenderbufferParameterivEXT(_, _, _)).Times(0); |
| 1571 SpecializedSetup<cmds::GetRenderbufferParameteriv, 0>(false); | 1571 SpecializedSetup<cmds::GetRenderbufferParameteriv, 0>(false); |
| 1572 cmds::GetRenderbufferParameteriv::Result* result = | 1572 cmds::GetRenderbufferParameteriv::Result* result = |
| 1573 static_cast<cmds::GetRenderbufferParameteriv::Result*>( | 1573 static_cast<cmds::GetRenderbufferParameteriv::Result*>( |
| 1574 shared_memory_address_); | 1574 shared_memory_address_); |
| 1575 result->size = 0; | 1575 result->size = 0; |
| 1576 cmds::GetRenderbufferParameteriv cmd; | 1576 cmds::GetRenderbufferParameteriv cmd; |
| 1577 cmd.Init(GL_RENDERBUFFER, | 1577 cmd.Init(GL_RENDERBUFFER, |
| 1578 GL_RENDERBUFFER_RED_SIZE, | 1578 GL_RENDERBUFFER_RED_SIZE, |
| 1579 shared_memory_id_, | 1579 shared_memory_id_, |
| 1580 kInvalidSharedMemoryOffset); | 1580 kInvalidSharedMemoryOffset); |
| 1581 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1581 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1582 EXPECT_EQ(0u, result->size); | 1582 EXPECT_EQ(0u, result->size); |
| 1583 } | 1583 } |
| 1584 | 1584 |
| 1585 TEST_P(GLES2DecoderTest1, GetShaderivValidArgs) { | 1585 TEST_F(GLES2DecoderTest1, GetShaderivValidArgs) { |
| 1586 EXPECT_CALL(*gl_, GetError()) | 1586 EXPECT_CALL(*gl_, GetError()) |
| 1587 .WillOnce(Return(GL_NO_ERROR)) | 1587 .WillOnce(Return(GL_NO_ERROR)) |
| 1588 .WillOnce(Return(GL_NO_ERROR)) | 1588 .WillOnce(Return(GL_NO_ERROR)) |
| 1589 .RetiresOnSaturation(); | 1589 .RetiresOnSaturation(); |
| 1590 SpecializedSetup<cmds::GetShaderiv, 0>(true); | 1590 SpecializedSetup<cmds::GetShaderiv, 0>(true); |
| 1591 typedef cmds::GetShaderiv::Result Result; | 1591 typedef cmds::GetShaderiv::Result Result; |
| 1592 Result* result = static_cast<Result*>(shared_memory_address_); | 1592 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1593 EXPECT_CALL(*gl_, | 1593 EXPECT_CALL(*gl_, |
| 1594 GetShaderiv(kServiceShaderId, GL_SHADER_TYPE, result->GetData())); | 1594 GetShaderiv(kServiceShaderId, GL_SHADER_TYPE, result->GetData())); |
| 1595 result->size = 0; | 1595 result->size = 0; |
| 1596 cmds::GetShaderiv cmd; | 1596 cmds::GetShaderiv cmd; |
| 1597 cmd.Init(client_shader_id_, | 1597 cmd.Init(client_shader_id_, |
| 1598 GL_SHADER_TYPE, | 1598 GL_SHADER_TYPE, |
| 1599 shared_memory_id_, | 1599 shared_memory_id_, |
| 1600 shared_memory_offset_); | 1600 shared_memory_offset_); |
| 1601 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1601 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1602 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_SHADER_TYPE), | 1602 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_SHADER_TYPE), |
| 1603 result->GetNumResults()); | 1603 result->GetNumResults()); |
| 1604 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1604 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1605 } | 1605 } |
| 1606 | 1606 |
| 1607 TEST_P(GLES2DecoderTest1, GetShaderivInvalidArgs2_0) { | 1607 TEST_F(GLES2DecoderTest1, GetShaderivInvalidArgs2_0) { |
| 1608 EXPECT_CALL(*gl_, GetShaderiv(_, _, _)).Times(0); | 1608 EXPECT_CALL(*gl_, GetShaderiv(_, _, _)).Times(0); |
| 1609 SpecializedSetup<cmds::GetShaderiv, 0>(false); | 1609 SpecializedSetup<cmds::GetShaderiv, 0>(false); |
| 1610 cmds::GetShaderiv::Result* result = | 1610 cmds::GetShaderiv::Result* result = |
| 1611 static_cast<cmds::GetShaderiv::Result*>(shared_memory_address_); | 1611 static_cast<cmds::GetShaderiv::Result*>(shared_memory_address_); |
| 1612 result->size = 0; | 1612 result->size = 0; |
| 1613 cmds::GetShaderiv cmd; | 1613 cmds::GetShaderiv cmd; |
| 1614 cmd.Init(client_shader_id_, GL_SHADER_TYPE, kInvalidSharedMemoryId, 0); | 1614 cmd.Init(client_shader_id_, GL_SHADER_TYPE, kInvalidSharedMemoryId, 0); |
| 1615 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1615 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1616 EXPECT_EQ(0u, result->size); | 1616 EXPECT_EQ(0u, result->size); |
| 1617 } | 1617 } |
| 1618 | 1618 |
| 1619 TEST_P(GLES2DecoderTest1, GetShaderivInvalidArgs2_1) { | 1619 TEST_F(GLES2DecoderTest1, GetShaderivInvalidArgs2_1) { |
| 1620 EXPECT_CALL(*gl_, GetShaderiv(_, _, _)).Times(0); | 1620 EXPECT_CALL(*gl_, GetShaderiv(_, _, _)).Times(0); |
| 1621 SpecializedSetup<cmds::GetShaderiv, 0>(false); | 1621 SpecializedSetup<cmds::GetShaderiv, 0>(false); |
| 1622 cmds::GetShaderiv::Result* result = | 1622 cmds::GetShaderiv::Result* result = |
| 1623 static_cast<cmds::GetShaderiv::Result*>(shared_memory_address_); | 1623 static_cast<cmds::GetShaderiv::Result*>(shared_memory_address_); |
| 1624 result->size = 0; | 1624 result->size = 0; |
| 1625 cmds::GetShaderiv cmd; | 1625 cmds::GetShaderiv cmd; |
| 1626 cmd.Init(client_shader_id_, | 1626 cmd.Init(client_shader_id_, |
| 1627 GL_SHADER_TYPE, | 1627 GL_SHADER_TYPE, |
| 1628 shared_memory_id_, | 1628 shared_memory_id_, |
| 1629 kInvalidSharedMemoryOffset); | 1629 kInvalidSharedMemoryOffset); |
| 1630 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1630 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1631 EXPECT_EQ(0u, result->size); | 1631 EXPECT_EQ(0u, result->size); |
| 1632 } | 1632 } |
| 1633 // TODO(gman): GetShaderInfoLog | 1633 // TODO(gman): GetShaderInfoLog |
| 1634 // TODO(gman): GetShaderPrecisionFormat | 1634 // TODO(gman): GetShaderPrecisionFormat |
| 1635 | 1635 |
| 1636 // TODO(gman): GetShaderSource | 1636 // TODO(gman): GetShaderSource |
| 1637 // TODO(gman): GetString | 1637 // TODO(gman): GetString |
| 1638 | 1638 |
| 1639 TEST_P(GLES2DecoderTest1, GetTexParameterfvValidArgs) { | 1639 TEST_F(GLES2DecoderTest1, GetTexParameterfvValidArgs) { |
| 1640 EXPECT_CALL(*gl_, GetError()) | 1640 EXPECT_CALL(*gl_, GetError()) |
| 1641 .WillOnce(Return(GL_NO_ERROR)) | 1641 .WillOnce(Return(GL_NO_ERROR)) |
| 1642 .WillOnce(Return(GL_NO_ERROR)) | 1642 .WillOnce(Return(GL_NO_ERROR)) |
| 1643 .RetiresOnSaturation(); | 1643 .RetiresOnSaturation(); |
| 1644 SpecializedSetup<cmds::GetTexParameterfv, 0>(true); | 1644 SpecializedSetup<cmds::GetTexParameterfv, 0>(true); |
| 1645 typedef cmds::GetTexParameterfv::Result Result; | 1645 typedef cmds::GetTexParameterfv::Result Result; |
| 1646 Result* result = static_cast<Result*>(shared_memory_address_); | 1646 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1647 EXPECT_CALL(*gl_, | 1647 EXPECT_CALL(*gl_, |
| 1648 GetTexParameterfv( | 1648 GetTexParameterfv( |
| 1649 GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, result->GetData())); | 1649 GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, result->GetData())); |
| 1650 result->size = 0; | 1650 result->size = 0; |
| 1651 cmds::GetTexParameterfv cmd; | 1651 cmds::GetTexParameterfv cmd; |
| 1652 cmd.Init(GL_TEXTURE_2D, | 1652 cmd.Init(GL_TEXTURE_2D, |
| 1653 GL_TEXTURE_MAG_FILTER, | 1653 GL_TEXTURE_MAG_FILTER, |
| 1654 shared_memory_id_, | 1654 shared_memory_id_, |
| 1655 shared_memory_offset_); | 1655 shared_memory_offset_); |
| 1656 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1656 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1657 EXPECT_EQ( | 1657 EXPECT_EQ( |
| 1658 decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_TEXTURE_MAG_FILTER), | 1658 decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_TEXTURE_MAG_FILTER), |
| 1659 result->GetNumResults()); | 1659 result->GetNumResults()); |
| 1660 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1660 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1661 } | 1661 } |
| 1662 | 1662 |
| 1663 TEST_P(GLES2DecoderTest1, GetTexParameterfvInvalidArgs0_0) { | 1663 TEST_F(GLES2DecoderTest1, GetTexParameterfvInvalidArgs0_0) { |
| 1664 EXPECT_CALL(*gl_, GetTexParameterfv(_, _, _)).Times(0); | 1664 EXPECT_CALL(*gl_, GetTexParameterfv(_, _, _)).Times(0); |
| 1665 SpecializedSetup<cmds::GetTexParameterfv, 0>(false); | 1665 SpecializedSetup<cmds::GetTexParameterfv, 0>(false); |
| 1666 cmds::GetTexParameterfv::Result* result = | 1666 cmds::GetTexParameterfv::Result* result = |
| 1667 static_cast<cmds::GetTexParameterfv::Result*>(shared_memory_address_); | 1667 static_cast<cmds::GetTexParameterfv::Result*>(shared_memory_address_); |
| 1668 result->size = 0; | 1668 result->size = 0; |
| 1669 cmds::GetTexParameterfv cmd; | 1669 cmds::GetTexParameterfv cmd; |
| 1670 cmd.Init(GL_PROXY_TEXTURE_CUBE_MAP, | 1670 cmd.Init(GL_PROXY_TEXTURE_CUBE_MAP, |
| 1671 GL_TEXTURE_MAG_FILTER, | 1671 GL_TEXTURE_MAG_FILTER, |
| 1672 shared_memory_id_, | 1672 shared_memory_id_, |
| 1673 shared_memory_offset_); | 1673 shared_memory_offset_); |
| 1674 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1674 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1675 EXPECT_EQ(0u, result->size); | 1675 EXPECT_EQ(0u, result->size); |
| 1676 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1676 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1677 } | 1677 } |
| 1678 | 1678 |
| 1679 TEST_P(GLES2DecoderTest1, GetTexParameterfvInvalidArgs1_0) { | 1679 TEST_F(GLES2DecoderTest1, GetTexParameterfvInvalidArgs1_0) { |
| 1680 EXPECT_CALL(*gl_, GetTexParameterfv(_, _, _)).Times(0); | 1680 EXPECT_CALL(*gl_, GetTexParameterfv(_, _, _)).Times(0); |
| 1681 SpecializedSetup<cmds::GetTexParameterfv, 0>(false); | 1681 SpecializedSetup<cmds::GetTexParameterfv, 0>(false); |
| 1682 cmds::GetTexParameterfv::Result* result = | 1682 cmds::GetTexParameterfv::Result* result = |
| 1683 static_cast<cmds::GetTexParameterfv::Result*>(shared_memory_address_); | 1683 static_cast<cmds::GetTexParameterfv::Result*>(shared_memory_address_); |
| 1684 result->size = 0; | 1684 result->size = 0; |
| 1685 cmds::GetTexParameterfv cmd; | 1685 cmds::GetTexParameterfv cmd; |
| 1686 cmd.Init(GL_TEXTURE_2D, | 1686 cmd.Init(GL_TEXTURE_2D, |
| 1687 GL_GENERATE_MIPMAP, | 1687 GL_GENERATE_MIPMAP, |
| 1688 shared_memory_id_, | 1688 shared_memory_id_, |
| 1689 shared_memory_offset_); | 1689 shared_memory_offset_); |
| 1690 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1690 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1691 EXPECT_EQ(0u, result->size); | 1691 EXPECT_EQ(0u, result->size); |
| 1692 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1692 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1693 } | 1693 } |
| 1694 | 1694 |
| 1695 TEST_P(GLES2DecoderTest1, GetTexParameterfvInvalidArgs2_0) { | 1695 TEST_F(GLES2DecoderTest1, GetTexParameterfvInvalidArgs2_0) { |
| 1696 EXPECT_CALL(*gl_, GetTexParameterfv(_, _, _)).Times(0); | 1696 EXPECT_CALL(*gl_, GetTexParameterfv(_, _, _)).Times(0); |
| 1697 SpecializedSetup<cmds::GetTexParameterfv, 0>(false); | 1697 SpecializedSetup<cmds::GetTexParameterfv, 0>(false); |
| 1698 cmds::GetTexParameterfv::Result* result = | 1698 cmds::GetTexParameterfv::Result* result = |
| 1699 static_cast<cmds::GetTexParameterfv::Result*>(shared_memory_address_); | 1699 static_cast<cmds::GetTexParameterfv::Result*>(shared_memory_address_); |
| 1700 result->size = 0; | 1700 result->size = 0; |
| 1701 cmds::GetTexParameterfv cmd; | 1701 cmds::GetTexParameterfv cmd; |
| 1702 cmd.Init(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, kInvalidSharedMemoryId, 0); | 1702 cmd.Init(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, kInvalidSharedMemoryId, 0); |
| 1703 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1703 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1704 EXPECT_EQ(0u, result->size); | 1704 EXPECT_EQ(0u, result->size); |
| 1705 } | 1705 } |
| 1706 | 1706 |
| 1707 TEST_P(GLES2DecoderTest1, GetTexParameterfvInvalidArgs2_1) { | 1707 TEST_F(GLES2DecoderTest1, GetTexParameterfvInvalidArgs2_1) { |
| 1708 EXPECT_CALL(*gl_, GetTexParameterfv(_, _, _)).Times(0); | 1708 EXPECT_CALL(*gl_, GetTexParameterfv(_, _, _)).Times(0); |
| 1709 SpecializedSetup<cmds::GetTexParameterfv, 0>(false); | 1709 SpecializedSetup<cmds::GetTexParameterfv, 0>(false); |
| 1710 cmds::GetTexParameterfv::Result* result = | 1710 cmds::GetTexParameterfv::Result* result = |
| 1711 static_cast<cmds::GetTexParameterfv::Result*>(shared_memory_address_); | 1711 static_cast<cmds::GetTexParameterfv::Result*>(shared_memory_address_); |
| 1712 result->size = 0; | 1712 result->size = 0; |
| 1713 cmds::GetTexParameterfv cmd; | 1713 cmds::GetTexParameterfv cmd; |
| 1714 cmd.Init(GL_TEXTURE_2D, | 1714 cmd.Init(GL_TEXTURE_2D, |
| 1715 GL_TEXTURE_MAG_FILTER, | 1715 GL_TEXTURE_MAG_FILTER, |
| 1716 shared_memory_id_, | 1716 shared_memory_id_, |
| 1717 kInvalidSharedMemoryOffset); | 1717 kInvalidSharedMemoryOffset); |
| 1718 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1718 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1719 EXPECT_EQ(0u, result->size); | 1719 EXPECT_EQ(0u, result->size); |
| 1720 } | 1720 } |
| 1721 | 1721 |
| 1722 TEST_P(GLES2DecoderTest1, GetTexParameterivValidArgs) { | 1722 TEST_F(GLES2DecoderTest1, GetTexParameterivValidArgs) { |
| 1723 EXPECT_CALL(*gl_, GetError()) | 1723 EXPECT_CALL(*gl_, GetError()) |
| 1724 .WillOnce(Return(GL_NO_ERROR)) | 1724 .WillOnce(Return(GL_NO_ERROR)) |
| 1725 .WillOnce(Return(GL_NO_ERROR)) | 1725 .WillOnce(Return(GL_NO_ERROR)) |
| 1726 .RetiresOnSaturation(); | 1726 .RetiresOnSaturation(); |
| 1727 SpecializedSetup<cmds::GetTexParameteriv, 0>(true); | 1727 SpecializedSetup<cmds::GetTexParameteriv, 0>(true); |
| 1728 typedef cmds::GetTexParameteriv::Result Result; | 1728 typedef cmds::GetTexParameteriv::Result Result; |
| 1729 Result* result = static_cast<Result*>(shared_memory_address_); | 1729 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1730 EXPECT_CALL(*gl_, | 1730 EXPECT_CALL(*gl_, |
| 1731 GetTexParameteriv( | 1731 GetTexParameteriv( |
| 1732 GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, result->GetData())); | 1732 GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, result->GetData())); |
| 1733 result->size = 0; | 1733 result->size = 0; |
| 1734 cmds::GetTexParameteriv cmd; | 1734 cmds::GetTexParameteriv cmd; |
| 1735 cmd.Init(GL_TEXTURE_2D, | 1735 cmd.Init(GL_TEXTURE_2D, |
| 1736 GL_TEXTURE_MAG_FILTER, | 1736 GL_TEXTURE_MAG_FILTER, |
| 1737 shared_memory_id_, | 1737 shared_memory_id_, |
| 1738 shared_memory_offset_); | 1738 shared_memory_offset_); |
| 1739 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1739 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1740 EXPECT_EQ( | 1740 EXPECT_EQ( |
| 1741 decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_TEXTURE_MAG_FILTER), | 1741 decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_TEXTURE_MAG_FILTER), |
| 1742 result->GetNumResults()); | 1742 result->GetNumResults()); |
| 1743 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1743 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1744 } | 1744 } |
| 1745 | 1745 |
| 1746 TEST_P(GLES2DecoderTest1, GetTexParameterivInvalidArgs0_0) { | 1746 TEST_F(GLES2DecoderTest1, GetTexParameterivInvalidArgs0_0) { |
| 1747 EXPECT_CALL(*gl_, GetTexParameteriv(_, _, _)).Times(0); | 1747 EXPECT_CALL(*gl_, GetTexParameteriv(_, _, _)).Times(0); |
| 1748 SpecializedSetup<cmds::GetTexParameteriv, 0>(false); | 1748 SpecializedSetup<cmds::GetTexParameteriv, 0>(false); |
| 1749 cmds::GetTexParameteriv::Result* result = | 1749 cmds::GetTexParameteriv::Result* result = |
| 1750 static_cast<cmds::GetTexParameteriv::Result*>(shared_memory_address_); | 1750 static_cast<cmds::GetTexParameteriv::Result*>(shared_memory_address_); |
| 1751 result->size = 0; | 1751 result->size = 0; |
| 1752 cmds::GetTexParameteriv cmd; | 1752 cmds::GetTexParameteriv cmd; |
| 1753 cmd.Init(GL_PROXY_TEXTURE_CUBE_MAP, | 1753 cmd.Init(GL_PROXY_TEXTURE_CUBE_MAP, |
| 1754 GL_TEXTURE_MAG_FILTER, | 1754 GL_TEXTURE_MAG_FILTER, |
| 1755 shared_memory_id_, | 1755 shared_memory_id_, |
| 1756 shared_memory_offset_); | 1756 shared_memory_offset_); |
| 1757 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1757 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1758 EXPECT_EQ(0u, result->size); | 1758 EXPECT_EQ(0u, result->size); |
| 1759 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1759 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1760 } | 1760 } |
| 1761 | 1761 |
| 1762 TEST_P(GLES2DecoderTest1, GetTexParameterivInvalidArgs1_0) { | 1762 TEST_F(GLES2DecoderTest1, GetTexParameterivInvalidArgs1_0) { |
| 1763 EXPECT_CALL(*gl_, GetTexParameteriv(_, _, _)).Times(0); | 1763 EXPECT_CALL(*gl_, GetTexParameteriv(_, _, _)).Times(0); |
| 1764 SpecializedSetup<cmds::GetTexParameteriv, 0>(false); | 1764 SpecializedSetup<cmds::GetTexParameteriv, 0>(false); |
| 1765 cmds::GetTexParameteriv::Result* result = | 1765 cmds::GetTexParameteriv::Result* result = |
| 1766 static_cast<cmds::GetTexParameteriv::Result*>(shared_memory_address_); | 1766 static_cast<cmds::GetTexParameteriv::Result*>(shared_memory_address_); |
| 1767 result->size = 0; | 1767 result->size = 0; |
| 1768 cmds::GetTexParameteriv cmd; | 1768 cmds::GetTexParameteriv cmd; |
| 1769 cmd.Init(GL_TEXTURE_2D, | 1769 cmd.Init(GL_TEXTURE_2D, |
| 1770 GL_GENERATE_MIPMAP, | 1770 GL_GENERATE_MIPMAP, |
| 1771 shared_memory_id_, | 1771 shared_memory_id_, |
| 1772 shared_memory_offset_); | 1772 shared_memory_offset_); |
| 1773 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1773 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1774 EXPECT_EQ(0u, result->size); | 1774 EXPECT_EQ(0u, result->size); |
| 1775 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1775 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1776 } | 1776 } |
| 1777 | 1777 |
| 1778 TEST_P(GLES2DecoderTest1, GetTexParameterivInvalidArgs2_0) { | 1778 TEST_F(GLES2DecoderTest1, GetTexParameterivInvalidArgs2_0) { |
| 1779 EXPECT_CALL(*gl_, GetTexParameteriv(_, _, _)).Times(0); | 1779 EXPECT_CALL(*gl_, GetTexParameteriv(_, _, _)).Times(0); |
| 1780 SpecializedSetup<cmds::GetTexParameteriv, 0>(false); | 1780 SpecializedSetup<cmds::GetTexParameteriv, 0>(false); |
| 1781 cmds::GetTexParameteriv::Result* result = | 1781 cmds::GetTexParameteriv::Result* result = |
| 1782 static_cast<cmds::GetTexParameteriv::Result*>(shared_memory_address_); | 1782 static_cast<cmds::GetTexParameteriv::Result*>(shared_memory_address_); |
| 1783 result->size = 0; | 1783 result->size = 0; |
| 1784 cmds::GetTexParameteriv cmd; | 1784 cmds::GetTexParameteriv cmd; |
| 1785 cmd.Init(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, kInvalidSharedMemoryId, 0); | 1785 cmd.Init(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, kInvalidSharedMemoryId, 0); |
| 1786 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1786 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1787 EXPECT_EQ(0u, result->size); | 1787 EXPECT_EQ(0u, result->size); |
| 1788 } | 1788 } |
| 1789 | 1789 |
| 1790 TEST_P(GLES2DecoderTest1, GetTexParameterivInvalidArgs2_1) { | 1790 TEST_F(GLES2DecoderTest1, GetTexParameterivInvalidArgs2_1) { |
| 1791 EXPECT_CALL(*gl_, GetTexParameteriv(_, _, _)).Times(0); | 1791 EXPECT_CALL(*gl_, GetTexParameteriv(_, _, _)).Times(0); |
| 1792 SpecializedSetup<cmds::GetTexParameteriv, 0>(false); | 1792 SpecializedSetup<cmds::GetTexParameteriv, 0>(false); |
| 1793 cmds::GetTexParameteriv::Result* result = | 1793 cmds::GetTexParameteriv::Result* result = |
| 1794 static_cast<cmds::GetTexParameteriv::Result*>(shared_memory_address_); | 1794 static_cast<cmds::GetTexParameteriv::Result*>(shared_memory_address_); |
| 1795 result->size = 0; | 1795 result->size = 0; |
| 1796 cmds::GetTexParameteriv cmd; | 1796 cmds::GetTexParameteriv cmd; |
| 1797 cmd.Init(GL_TEXTURE_2D, | 1797 cmd.Init(GL_TEXTURE_2D, |
| 1798 GL_TEXTURE_MAG_FILTER, | 1798 GL_TEXTURE_MAG_FILTER, |
| 1799 shared_memory_id_, | 1799 shared_memory_id_, |
| 1800 kInvalidSharedMemoryOffset); | 1800 kInvalidSharedMemoryOffset); |
| 1801 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1801 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1802 EXPECT_EQ(0u, result->size); | 1802 EXPECT_EQ(0u, result->size); |
| 1803 } | 1803 } |
| 1804 // TODO(gman): GetUniformfv | 1804 // TODO(gman): GetUniformfv |
| 1805 | 1805 |
| 1806 // TODO(gman): GetUniformiv | 1806 // TODO(gman): GetUniformiv |
| 1807 | 1807 |
| 1808 // TODO(gman): GetUniformLocation | 1808 // TODO(gman): GetUniformLocation |
| 1809 | 1809 |
| 1810 // TODO(gman): GetUniformLocationBucket | 1810 // TODO(gman): GetUniformLocationBucket |
| 1811 | 1811 |
| 1812 TEST_P(GLES2DecoderTest1, GetVertexAttribfvValidArgs) { | 1812 TEST_F(GLES2DecoderTest1, GetVertexAttribfvValidArgs) { |
| 1813 SpecializedSetup<cmds::GetVertexAttribfv, 0>(true); | 1813 SpecializedSetup<cmds::GetVertexAttribfv, 0>(true); |
| 1814 typedef cmds::GetVertexAttribfv::Result Result; | 1814 typedef cmds::GetVertexAttribfv::Result Result; |
| 1815 Result* result = static_cast<Result*>(shared_memory_address_); | 1815 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1816 result->size = 0; | 1816 result->size = 0; |
| 1817 cmds::GetVertexAttribfv cmd; | 1817 cmds::GetVertexAttribfv cmd; |
| 1818 cmd.Init(1, | 1818 cmd.Init(1, |
| 1819 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, | 1819 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, |
| 1820 shared_memory_id_, | 1820 shared_memory_id_, |
| 1821 shared_memory_offset_); | 1821 shared_memory_offset_); |
| 1822 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1822 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1823 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned( | 1823 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned( |
| 1824 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED), | 1824 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED), |
| 1825 result->GetNumResults()); | 1825 result->GetNumResults()); |
| 1826 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1826 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1827 } | 1827 } |
| 1828 | 1828 |
| 1829 TEST_P(GLES2DecoderTest1, GetVertexAttribfvInvalidArgs2_0) { | 1829 TEST_F(GLES2DecoderTest1, GetVertexAttribfvInvalidArgs2_0) { |
| 1830 EXPECT_CALL(*gl_, GetVertexAttribfv(_, _, _)).Times(0); | 1830 EXPECT_CALL(*gl_, GetVertexAttribfv(_, _, _)).Times(0); |
| 1831 SpecializedSetup<cmds::GetVertexAttribfv, 0>(false); | 1831 SpecializedSetup<cmds::GetVertexAttribfv, 0>(false); |
| 1832 cmds::GetVertexAttribfv::Result* result = | 1832 cmds::GetVertexAttribfv::Result* result = |
| 1833 static_cast<cmds::GetVertexAttribfv::Result*>(shared_memory_address_); | 1833 static_cast<cmds::GetVertexAttribfv::Result*>(shared_memory_address_); |
| 1834 result->size = 0; | 1834 result->size = 0; |
| 1835 cmds::GetVertexAttribfv cmd; | 1835 cmds::GetVertexAttribfv cmd; |
| 1836 cmd.Init(1, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, kInvalidSharedMemoryId, 0); | 1836 cmd.Init(1, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, kInvalidSharedMemoryId, 0); |
| 1837 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1837 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1838 EXPECT_EQ(0u, result->size); | 1838 EXPECT_EQ(0u, result->size); |
| 1839 } | 1839 } |
| 1840 | 1840 |
| 1841 TEST_P(GLES2DecoderTest1, GetVertexAttribfvInvalidArgs2_1) { | 1841 TEST_F(GLES2DecoderTest1, GetVertexAttribfvInvalidArgs2_1) { |
| 1842 EXPECT_CALL(*gl_, GetVertexAttribfv(_, _, _)).Times(0); | 1842 EXPECT_CALL(*gl_, GetVertexAttribfv(_, _, _)).Times(0); |
| 1843 SpecializedSetup<cmds::GetVertexAttribfv, 0>(false); | 1843 SpecializedSetup<cmds::GetVertexAttribfv, 0>(false); |
| 1844 cmds::GetVertexAttribfv::Result* result = | 1844 cmds::GetVertexAttribfv::Result* result = |
| 1845 static_cast<cmds::GetVertexAttribfv::Result*>(shared_memory_address_); | 1845 static_cast<cmds::GetVertexAttribfv::Result*>(shared_memory_address_); |
| 1846 result->size = 0; | 1846 result->size = 0; |
| 1847 cmds::GetVertexAttribfv cmd; | 1847 cmds::GetVertexAttribfv cmd; |
| 1848 cmd.Init(1, | 1848 cmd.Init(1, |
| 1849 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, | 1849 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, |
| 1850 shared_memory_id_, | 1850 shared_memory_id_, |
| 1851 kInvalidSharedMemoryOffset); | 1851 kInvalidSharedMemoryOffset); |
| 1852 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1852 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1853 EXPECT_EQ(0u, result->size); | 1853 EXPECT_EQ(0u, result->size); |
| 1854 } | 1854 } |
| 1855 | 1855 |
| 1856 TEST_P(GLES2DecoderTest1, GetVertexAttribivValidArgs) { | 1856 TEST_F(GLES2DecoderTest1, GetVertexAttribivValidArgs) { |
| 1857 SpecializedSetup<cmds::GetVertexAttribiv, 0>(true); | 1857 SpecializedSetup<cmds::GetVertexAttribiv, 0>(true); |
| 1858 typedef cmds::GetVertexAttribiv::Result Result; | 1858 typedef cmds::GetVertexAttribiv::Result Result; |
| 1859 Result* result = static_cast<Result*>(shared_memory_address_); | 1859 Result* result = static_cast<Result*>(shared_memory_address_); |
| 1860 result->size = 0; | 1860 result->size = 0; |
| 1861 cmds::GetVertexAttribiv cmd; | 1861 cmds::GetVertexAttribiv cmd; |
| 1862 cmd.Init(1, | 1862 cmd.Init(1, |
| 1863 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, | 1863 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, |
| 1864 shared_memory_id_, | 1864 shared_memory_id_, |
| 1865 shared_memory_offset_); | 1865 shared_memory_offset_); |
| 1866 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1866 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1867 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned( | 1867 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned( |
| 1868 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED), | 1868 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED), |
| 1869 result->GetNumResults()); | 1869 result->GetNumResults()); |
| 1870 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1870 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1871 } | 1871 } |
| 1872 | 1872 |
| 1873 TEST_P(GLES2DecoderTest1, GetVertexAttribivInvalidArgs2_0) { | 1873 TEST_F(GLES2DecoderTest1, GetVertexAttribivInvalidArgs2_0) { |
| 1874 EXPECT_CALL(*gl_, GetVertexAttribiv(_, _, _)).Times(0); | 1874 EXPECT_CALL(*gl_, GetVertexAttribiv(_, _, _)).Times(0); |
| 1875 SpecializedSetup<cmds::GetVertexAttribiv, 0>(false); | 1875 SpecializedSetup<cmds::GetVertexAttribiv, 0>(false); |
| 1876 cmds::GetVertexAttribiv::Result* result = | 1876 cmds::GetVertexAttribiv::Result* result = |
| 1877 static_cast<cmds::GetVertexAttribiv::Result*>(shared_memory_address_); | 1877 static_cast<cmds::GetVertexAttribiv::Result*>(shared_memory_address_); |
| 1878 result->size = 0; | 1878 result->size = 0; |
| 1879 cmds::GetVertexAttribiv cmd; | 1879 cmds::GetVertexAttribiv cmd; |
| 1880 cmd.Init(1, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, kInvalidSharedMemoryId, 0); | 1880 cmd.Init(1, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, kInvalidSharedMemoryId, 0); |
| 1881 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1881 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1882 EXPECT_EQ(0u, result->size); | 1882 EXPECT_EQ(0u, result->size); |
| 1883 } | 1883 } |
| 1884 | 1884 |
| 1885 TEST_P(GLES2DecoderTest1, GetVertexAttribivInvalidArgs2_1) { | 1885 TEST_F(GLES2DecoderTest1, GetVertexAttribivInvalidArgs2_1) { |
| 1886 EXPECT_CALL(*gl_, GetVertexAttribiv(_, _, _)).Times(0); | 1886 EXPECT_CALL(*gl_, GetVertexAttribiv(_, _, _)).Times(0); |
| 1887 SpecializedSetup<cmds::GetVertexAttribiv, 0>(false); | 1887 SpecializedSetup<cmds::GetVertexAttribiv, 0>(false); |
| 1888 cmds::GetVertexAttribiv::Result* result = | 1888 cmds::GetVertexAttribiv::Result* result = |
| 1889 static_cast<cmds::GetVertexAttribiv::Result*>(shared_memory_address_); | 1889 static_cast<cmds::GetVertexAttribiv::Result*>(shared_memory_address_); |
| 1890 result->size = 0; | 1890 result->size = 0; |
| 1891 cmds::GetVertexAttribiv cmd; | 1891 cmds::GetVertexAttribiv cmd; |
| 1892 cmd.Init(1, | 1892 cmd.Init(1, |
| 1893 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, | 1893 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, |
| 1894 shared_memory_id_, | 1894 shared_memory_id_, |
| 1895 kInvalidSharedMemoryOffset); | 1895 kInvalidSharedMemoryOffset); |
| 1896 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1896 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1897 EXPECT_EQ(0u, result->size); | 1897 EXPECT_EQ(0u, result->size); |
| 1898 } | 1898 } |
| 1899 // TODO(gman): GetVertexAttribPointerv | 1899 // TODO(gman): GetVertexAttribPointerv |
| 1900 | 1900 |
| 1901 TEST_P(GLES2DecoderTest1, HintValidArgs) { | 1901 TEST_F(GLES2DecoderTest1, HintValidArgs) { |
| 1902 EXPECT_CALL(*gl_, Hint(GL_GENERATE_MIPMAP_HINT, GL_FASTEST)); | 1902 EXPECT_CALL(*gl_, Hint(GL_GENERATE_MIPMAP_HINT, GL_FASTEST)); |
| 1903 SpecializedSetup<cmds::Hint, 0>(true); | 1903 SpecializedSetup<cmds::Hint, 0>(true); |
| 1904 cmds::Hint cmd; | 1904 cmds::Hint cmd; |
| 1905 cmd.Init(GL_GENERATE_MIPMAP_HINT, GL_FASTEST); | 1905 cmd.Init(GL_GENERATE_MIPMAP_HINT, GL_FASTEST); |
| 1906 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1906 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1907 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1907 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1908 } | 1908 } |
| 1909 | 1909 |
| 1910 TEST_P(GLES2DecoderTest1, HintInvalidArgs0_0) { | 1910 TEST_F(GLES2DecoderTest1, HintInvalidArgs0_0) { |
| 1911 EXPECT_CALL(*gl_, Hint(_, _)).Times(0); | 1911 EXPECT_CALL(*gl_, Hint(_, _)).Times(0); |
| 1912 SpecializedSetup<cmds::Hint, 0>(false); | 1912 SpecializedSetup<cmds::Hint, 0>(false); |
| 1913 cmds::Hint cmd; | 1913 cmds::Hint cmd; |
| 1914 cmd.Init(GL_PERSPECTIVE_CORRECTION_HINT, GL_FASTEST); | 1914 cmd.Init(GL_PERSPECTIVE_CORRECTION_HINT, GL_FASTEST); |
| 1915 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1915 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1916 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1916 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1917 } | 1917 } |
| 1918 | 1918 |
| 1919 TEST_P(GLES2DecoderTest1, IsBufferValidArgs) { | 1919 TEST_F(GLES2DecoderTest1, IsBufferValidArgs) { |
| 1920 SpecializedSetup<cmds::IsBuffer, 0>(true); | 1920 SpecializedSetup<cmds::IsBuffer, 0>(true); |
| 1921 cmds::IsBuffer cmd; | 1921 cmds::IsBuffer cmd; |
| 1922 cmd.Init(client_buffer_id_, shared_memory_id_, shared_memory_offset_); | 1922 cmd.Init(client_buffer_id_, shared_memory_id_, shared_memory_offset_); |
| 1923 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1923 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1924 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1924 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1925 } | 1925 } |
| 1926 | 1926 |
| 1927 TEST_P(GLES2DecoderTest1, IsBufferInvalidArgsBadSharedMemoryId) { | 1927 TEST_F(GLES2DecoderTest1, IsBufferInvalidArgsBadSharedMemoryId) { |
| 1928 SpecializedSetup<cmds::IsBuffer, 0>(false); | 1928 SpecializedSetup<cmds::IsBuffer, 0>(false); |
| 1929 cmds::IsBuffer cmd; | 1929 cmds::IsBuffer cmd; |
| 1930 cmd.Init(client_buffer_id_, kInvalidSharedMemoryId, shared_memory_offset_); | 1930 cmd.Init(client_buffer_id_, kInvalidSharedMemoryId, shared_memory_offset_); |
| 1931 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1931 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1932 cmd.Init(client_buffer_id_, shared_memory_id_, kInvalidSharedMemoryOffset); | 1932 cmd.Init(client_buffer_id_, shared_memory_id_, kInvalidSharedMemoryOffset); |
| 1933 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1933 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1934 } | 1934 } |
| 1935 | 1935 |
| 1936 TEST_P(GLES2DecoderTest1, IsEnabledValidArgs) { | 1936 TEST_F(GLES2DecoderTest1, IsEnabledValidArgs) { |
| 1937 SpecializedSetup<cmds::IsEnabled, 0>(true); | 1937 SpecializedSetup<cmds::IsEnabled, 0>(true); |
| 1938 cmds::IsEnabled cmd; | 1938 cmds::IsEnabled cmd; |
| 1939 cmd.Init(GL_BLEND, shared_memory_id_, shared_memory_offset_); | 1939 cmd.Init(GL_BLEND, shared_memory_id_, shared_memory_offset_); |
| 1940 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1940 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1941 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1941 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1942 } | 1942 } |
| 1943 | 1943 |
| 1944 TEST_P(GLES2DecoderTest1, IsEnabledInvalidArgs0_0) { | 1944 TEST_F(GLES2DecoderTest1, IsEnabledInvalidArgs0_0) { |
| 1945 EXPECT_CALL(*gl_, IsEnabled(_)).Times(0); | 1945 EXPECT_CALL(*gl_, IsEnabled(_)).Times(0); |
| 1946 SpecializedSetup<cmds::IsEnabled, 0>(false); | 1946 SpecializedSetup<cmds::IsEnabled, 0>(false); |
| 1947 cmds::IsEnabled cmd; | 1947 cmds::IsEnabled cmd; |
| 1948 cmd.Init(GL_CLIP_PLANE0, shared_memory_id_, shared_memory_offset_); | 1948 cmd.Init(GL_CLIP_PLANE0, shared_memory_id_, shared_memory_offset_); |
| 1949 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1949 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1950 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1950 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1951 } | 1951 } |
| 1952 | 1952 |
| 1953 TEST_P(GLES2DecoderTest1, IsEnabledInvalidArgs0_1) { | 1953 TEST_F(GLES2DecoderTest1, IsEnabledInvalidArgs0_1) { |
| 1954 EXPECT_CALL(*gl_, IsEnabled(_)).Times(0); | 1954 EXPECT_CALL(*gl_, IsEnabled(_)).Times(0); |
| 1955 SpecializedSetup<cmds::IsEnabled, 0>(false); | 1955 SpecializedSetup<cmds::IsEnabled, 0>(false); |
| 1956 cmds::IsEnabled cmd; | 1956 cmds::IsEnabled cmd; |
| 1957 cmd.Init(GL_POINT_SPRITE, shared_memory_id_, shared_memory_offset_); | 1957 cmd.Init(GL_POINT_SPRITE, shared_memory_id_, shared_memory_offset_); |
| 1958 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1958 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1959 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); | 1959 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); |
| 1960 } | 1960 } |
| 1961 | 1961 |
| 1962 TEST_P(GLES2DecoderTest1, IsEnabledInvalidArgsBadSharedMemoryId) { | 1962 TEST_F(GLES2DecoderTest1, IsEnabledInvalidArgsBadSharedMemoryId) { |
| 1963 SpecializedSetup<cmds::IsEnabled, 0>(false); | 1963 SpecializedSetup<cmds::IsEnabled, 0>(false); |
| 1964 cmds::IsEnabled cmd; | 1964 cmds::IsEnabled cmd; |
| 1965 cmd.Init(GL_BLEND, kInvalidSharedMemoryId, shared_memory_offset_); | 1965 cmd.Init(GL_BLEND, kInvalidSharedMemoryId, shared_memory_offset_); |
| 1966 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1966 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1967 cmd.Init(GL_BLEND, shared_memory_id_, kInvalidSharedMemoryOffset); | 1967 cmd.Init(GL_BLEND, shared_memory_id_, kInvalidSharedMemoryOffset); |
| 1968 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1968 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1969 } | 1969 } |
| 1970 | 1970 |
| 1971 TEST_P(GLES2DecoderTest1, IsFramebufferValidArgs) { | 1971 TEST_F(GLES2DecoderTest1, IsFramebufferValidArgs) { |
| 1972 SpecializedSetup<cmds::IsFramebuffer, 0>(true); | 1972 SpecializedSetup<cmds::IsFramebuffer, 0>(true); |
| 1973 cmds::IsFramebuffer cmd; | 1973 cmds::IsFramebuffer cmd; |
| 1974 cmd.Init(client_framebuffer_id_, shared_memory_id_, shared_memory_offset_); | 1974 cmd.Init(client_framebuffer_id_, shared_memory_id_, shared_memory_offset_); |
| 1975 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1975 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1976 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1976 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1977 } | 1977 } |
| 1978 | 1978 |
| 1979 TEST_P(GLES2DecoderTest1, IsFramebufferInvalidArgsBadSharedMemoryId) { | 1979 TEST_F(GLES2DecoderTest1, IsFramebufferInvalidArgsBadSharedMemoryId) { |
| 1980 SpecializedSetup<cmds::IsFramebuffer, 0>(false); | 1980 SpecializedSetup<cmds::IsFramebuffer, 0>(false); |
| 1981 cmds::IsFramebuffer cmd; | 1981 cmds::IsFramebuffer cmd; |
| 1982 cmd.Init( | 1982 cmd.Init( |
| 1983 client_framebuffer_id_, kInvalidSharedMemoryId, shared_memory_offset_); | 1983 client_framebuffer_id_, kInvalidSharedMemoryId, shared_memory_offset_); |
| 1984 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1984 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1985 cmd.Init( | 1985 cmd.Init( |
| 1986 client_framebuffer_id_, shared_memory_id_, kInvalidSharedMemoryOffset); | 1986 client_framebuffer_id_, shared_memory_id_, kInvalidSharedMemoryOffset); |
| 1987 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 1987 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 1988 } | 1988 } |
| 1989 | 1989 |
| 1990 TEST_P(GLES2DecoderTest1, IsProgramValidArgs) { | 1990 TEST_F(GLES2DecoderTest1, IsProgramValidArgs) { |
| 1991 SpecializedSetup<cmds::IsProgram, 0>(true); | 1991 SpecializedSetup<cmds::IsProgram, 0>(true); |
| 1992 cmds::IsProgram cmd; | 1992 cmds::IsProgram cmd; |
| 1993 cmd.Init(client_program_id_, shared_memory_id_, shared_memory_offset_); | 1993 cmd.Init(client_program_id_, shared_memory_id_, shared_memory_offset_); |
| 1994 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 1994 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 1995 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1995 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
| 1996 } | 1996 } |
| 1997 | 1997 |
| 1998 TEST_P(GLES2DecoderTest1, IsProgramInvalidArgsBadSharedMemoryId) { | 1998 TEST_F(GLES2DecoderTest1, IsProgramInvalidArgsBadSharedMemoryId) { |
| 1999 SpecializedSetup<cmds::IsProgram, 0>(false); | 1999 SpecializedSetup<cmds::IsProgram, 0>(false); |
| 2000 cmds::IsProgram cmd; | 2000 cmds::IsProgram cmd; |
| 2001 cmd.Init(client_program_id_, kInvalidSharedMemoryId, shared_memory_offset_); | 2001 cmd.Init(client_program_id_, kInvalidSharedMemoryId, shared_memory_offset_); |
| 2002 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 2002 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 2003 cmd.Init(client_program_id_, shared_memory_id_, kInvalidSharedMemoryOffset); | 2003 cmd.Init(client_program_id_, shared_memory_id_, kInvalidSharedMemoryOffset); |
| 2004 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); | 2004 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); |
| 2005 } | 2005 } |
| 2006 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_1_AUTOGEN_H_ | 2006 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_1_AUTOGEN_H_ |
| OLD | NEW |