Index: gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc |
=================================================================== |
--- gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc (revision 98483) |
+++ gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc (working copy) |
@@ -96,7 +96,8 @@ |
false, // has stencil |
false, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
SetupDefaultProgram(); |
} |
}; |
@@ -3190,7 +3191,8 @@ |
false, // has stencil |
true, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
EXPECT_CALL(*gl_, GetError()) |
.WillOnce(Return(GL_NO_ERROR)) |
@@ -3220,7 +3222,8 @@ |
false, // has stencil |
false, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
EXPECT_CALL(*gl_, GetError()) |
.WillOnce(Return(GL_NO_ERROR)) |
@@ -3250,7 +3253,8 @@ |
false, // has stencil |
false, // request alpha |
true, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
EXPECT_CALL(*gl_, GetError()) |
.WillOnce(Return(GL_NO_ERROR)) |
@@ -3280,7 +3284,8 @@ |
false, // has stencil |
false, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
EXPECT_CALL(*gl_, GetError()) |
.WillOnce(Return(GL_NO_ERROR)) |
@@ -3310,7 +3315,8 @@ |
true, // has stencil |
false, // request alpha |
false, // request depth |
- true); // request stencil |
+ true, // request stencil |
+ true); // bind generates resource |
EXPECT_CALL(*gl_, GetError()) |
.WillOnce(Return(GL_NO_ERROR)) |
@@ -3340,7 +3346,8 @@ |
true, // has stencil |
false, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
EXPECT_CALL(*gl_, GetError()) |
.WillOnce(Return(GL_NO_ERROR)) |
@@ -3370,7 +3377,8 @@ |
false, // has stencil |
false, // request alpha |
true, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
Enable cmd; |
cmd.Init(GL_DEPTH_TEST); |
@@ -3426,7 +3434,8 @@ |
false, // has stencil |
false, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
Enable cmd; |
cmd.Init(GL_DEPTH_TEST); |
@@ -3482,7 +3491,8 @@ |
true, // has stencil |
false, // request alpha |
false, // request depth |
- true); // request stencil |
+ true, // request stencil |
+ true); // bind generates resource |
Enable cmd; |
cmd.Init(GL_STENCIL_TEST); |
@@ -3538,7 +3548,8 @@ |
true, // has stencil |
false, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
Enable cmd; |
cmd.Init(GL_STENCIL_TEST); |
@@ -3594,7 +3605,8 @@ |
true, // has stencil |
false, // request alpha |
true, // request depth |
- true); // request stencil |
+ true, // request stencil |
+ true); // bind generates resource |
EXPECT_CALL(*gl_, GetError()) |
.WillOnce(Return(GL_NO_ERROR)) |
@@ -3637,7 +3649,8 @@ |
true, // has stencil |
false, // request alpha |
true, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
EXPECT_CALL(*gl_, GetError()) |
.WillOnce(Return(GL_NO_ERROR)) |
@@ -3680,7 +3693,8 @@ |
false, // has stencil |
false, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_, |
kServiceRenderbufferId); |
DoBindFramebuffer(GL_FRAMEBUFFER, client_framebuffer_id_, |
@@ -3756,7 +3770,8 @@ |
false, // has stencil |
false, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_, |
kServiceRenderbufferId); |
DoBindFramebuffer(GL_FRAMEBUFFER, client_framebuffer_id_, |
@@ -4107,7 +4122,8 @@ |
false, // has stencil |
false, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_, |
kServiceRenderbufferId); |
EXPECT_CALL(*gl_, GetError()) |
@@ -4169,7 +4185,8 @@ |
false, // has stencil |
false, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
EXPECT_CALL(*gl_, GetError()) |
.WillOnce(Return(GL_NO_ERROR)) |
@@ -4225,7 +4242,8 @@ |
false, // has stencil |
false, // request alpha |
false, // request depth |
- false); // request stencil |
+ false, // request stencil |
+ true); // bind generates resource |
EXPECT_CALL(*gl_, GetError()) |
.WillOnce(Return(GL_NO_ERROR)) |
@@ -4276,7 +4294,7 @@ |
GetProgramInfoCHROMIUM cmd; |
cmd.Init(kInvalidClientId, kBucketId); |
EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
- EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
+ EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
bucket = decoder_->GetBucket(kBucketId); |
ASSERT_TRUE(bucket != NULL); |
EXPECT_EQ(sizeof(ProgramInfoHeader), bucket->size()); |
@@ -4288,6 +4306,38 @@ |
EXPECT_EQ(0u, info->num_uniforms); |
} |
+TEST_F(GLES2DecoderManualInitTest, BindGeneratesResourceFalse) { |
+ InitDecoder( |
+ "", // extensions |
+ false, // has alpha |
+ false, // has depth |
+ false, // has stencil |
+ false, // request alpha |
+ false, // request depth |
+ false, // request stencil |
+ false); // bind generates resource |
+ |
+ BindTexture cmd1; |
+ cmd1.Init(GL_TEXTURE_2D, kInvalidClientId); |
+ EXPECT_EQ(error::kNoError, ExecuteCmd(cmd1)); |
+ EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
+ |
+ BindBuffer cmd2; |
+ cmd2.Init(GL_ARRAY_BUFFER, kInvalidClientId); |
+ EXPECT_EQ(error::kNoError, ExecuteCmd(cmd2)); |
+ EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
+ |
+ BindFramebuffer cmd3; |
+ cmd3.Init(GL_FRAMEBUFFER, kInvalidClientId); |
+ EXPECT_EQ(error::kNoError, ExecuteCmd(cmd3)); |
+ EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
+ |
+ BindRenderbuffer cmd4; |
+ cmd4.Init(GL_RENDERBUFFER, kInvalidClientId); |
+ EXPECT_EQ(error::kNoError, ExecuteCmd(cmd4)); |
+ EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
+} |
+ |
// TODO(gman): Complete this test. |
// TEST_F(GLES2DecoderTest, CompressedTexImage2DGLError) { |
// } |