| 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) {
|
| // }
|
|
|