Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(174)

Unified Diff: gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc

Issue 221783002: Revert of gpu: Raise GL_OUT_OF_MEMORY when BeginQueryEXT fails to allocate. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc
index 16783b8e6fd08a6c33859cdecca099297e5057fd..6437648ac00ae793b707568c9a32af96b9f5127a 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc
@@ -71,14 +71,15 @@
GLES2DecoderTestWithExtensionsOnGLES2() {}
virtual void SetUp() {
- InitState init;
- init.extensions = GetParam();
- init.gl_version = "opengl es 2.0";
- init.has_alpha = true;
- init.has_depth = true;
- init.request_alpha = true;
- init.request_depth = true;
- InitDecoder(init);
+ InitDecoder(GetParam(), // extensions
+ "opengl es 2.0", // gl version
+ true, // has alpha
+ true, // has depth
+ false, // has stencil
+ true, // request alpha
+ true, // request depth
+ false, // request stencil
+ false); // bind generates resource
}
};
@@ -99,15 +100,16 @@
}
virtual void SetUp() {
- InitState init;
- init.extensions = "GL_ANGLE_instanced_arrays";
- init.gl_version = "opengl es 2.0";
- init.has_alpha = true;
- init.has_depth = true;
- init.request_alpha = true;
- init.request_depth = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ANGLE_instanced_arrays", // extensions
+ "opengl es 2.0", // gl version
+ true, // has alpha
+ true, // has depth
+ false, // has stencil
+ true, // request alpha
+ true, // request depth
+ false, // request stencil
+ true); // bind generates resource
SetupDefaultProgram();
}
};
@@ -123,10 +125,17 @@
command_line.AppendSwitchASCII(
switches::kGpuDriverBugWorkarounds,
base::IntToString(gpu::CLEAR_ALPHA_IN_READPIXELS));
- InitState init;
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoderWithCommandLine(init, &command_line);
+ InitDecoderWithCommandLine(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true, // bind generates resource
+ &command_line);
SetupDefaultProgram();
}
};
@@ -206,7 +215,6 @@
cmd.Init(GL_TRIANGLES, 0, kLargeCount);
EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
EXPECT_EQ(GL_OUT_OF_MEMORY, GetGLError());
- EXPECT_FALSE(GetDecoder()->WasContextLost());
}
// Tests when the math overflows (0x7FFFFFFF + 1 = 0x8000000 verts)
@@ -220,7 +228,6 @@
cmd.Init(GL_TRIANGLES, 0, kLargeCount);
EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
EXPECT_EQ(GL_OUT_OF_MEMORY, GetGLError());
- EXPECT_FALSE(GetDecoder()->WasContextLost());
}
// Tests when the driver returns an error
@@ -236,37 +243,6 @@
cmd.Init(GL_TRIANGLES, 0, kFakeLargeCount);
EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
EXPECT_EQ(GL_OUT_OF_MEMORY, GetGLError());
- EXPECT_FALSE(GetDecoder()->WasContextLost());
-}
-
-// Test that we lose context.
-TEST_F(GLES2DecoderManualInitTest, LoseContextWhenOOM) {
- InitState init;
- init.gl_version = "3.0";
- init.has_alpha = true;
- init.has_depth = true;
- init.request_alpha = true;
- init.request_depth = true;
- init.bind_generates_resource = true;
- init.lose_context_when_out_of_memory = true;
- InitDecoder(init);
- SetupDefaultProgram();
-
- const GLsizei kFakeLargeCount = 0x1234;
- SetupTexture();
- AddExpectationsForSimulatedAttrib0WithError(
- kFakeLargeCount, 0, GL_OUT_OF_MEMORY);
- EXPECT_CALL(*gl_, DrawArrays(_, _, _)).Times(0).RetiresOnSaturation();
- // Other contexts in the group should be lost also.
- EXPECT_CALL(*mock_decoder_, LoseContext(GL_UNKNOWN_CONTEXT_RESET_ARB))
- .Times(1)
- .RetiresOnSaturation();
- DrawArrays cmd;
- cmd.Init(GL_TRIANGLES, 0, kFakeLargeCount);
- // This context should be lost.
- EXPECT_EQ(error::kLostContext, ExecuteCmd(cmd));
- EXPECT_EQ(GL_OUT_OF_MEMORY, GetGLError());
- EXPECT_TRUE(decoder_->WasContextLost());
}
TEST_F(GLES2DecoderWithShaderTest, DrawArraysBadTextureUsesBlack) {
@@ -352,14 +328,17 @@
command_line.AppendSwitchASCII(
switches::kGpuDriverBugWorkarounds,
base::IntToString(gpu::INIT_VERTEX_ATTRIBUTES));
- InitState init;
- init.gl_version = "3.0";
- init.has_alpha = true;
- init.has_depth = true;
- init.request_alpha = true;
- init.request_depth = true;
- init.bind_generates_resource = true;
- InitDecoderWithCommandLine(init, &command_line);
+ InitDecoderWithCommandLine(
+ "", // extensions
+ "3.0", // gl version
+ true, // has alpha
+ true, // has depth
+ false, // has stencil
+ true, // request alpha
+ true, // request depth
+ false, // request stencil
+ true, // bind generates resource
+ &command_line);
SetupDefaultProgram();
SetupTexture();
SetupVertexBuffer();
@@ -1949,10 +1928,17 @@
command_line.AppendSwitchASCII(
switches::kGpuDriverBugWorkarounds,
base::IntToString(gpu::SET_TEXTURE_FILTER_BEFORE_GENERATING_MIPMAP));
- InitState init;
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoderWithCommandLine(init, &command_line);
+ InitDecoderWithCommandLine(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true, // bind generates resource
+ &command_line);
EXPECT_CALL(*gl_, GenerateMipmapEXT(_))
.Times(0);
@@ -2618,13 +2604,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ReadPixelsAsyncError) {
- InitState init;
- init.extensions = "GL_ARB_sync";
- init.gl_version = "opengl es 3.0";
- init.has_alpha = true;
- init.request_alpha = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ARB_sync", // extensions
+ "opengl es 3.0", // gl version
+ true, // has alpha
+ false, // has depth
+ false, // has stencil
+ true, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
typedef ReadPixels::Result Result;
Result* result = GetSharedMemoryAs<Result*>();
@@ -3903,12 +3892,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ActualAlphaMatchesRequestedAlpha) {
- InitState init;
- init.gl_version = "3.0";
- init.has_alpha = true;
- init.request_alpha = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ true, // has alpha
+ false, // has depth
+ false, // has stencil
+ true, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -3931,11 +3924,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ActualAlphaDoesNotMatchRequestedAlpha) {
- InitState init;
- init.gl_version = "3.0";
- init.has_alpha = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ true, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -3958,12 +3956,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ActualDepthMatchesRequestedDepth) {
- InitState init;
- init.gl_version = "3.0";
- init.has_depth = true;
- init.request_depth = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ true, // has depth
+ false, // has stencil
+ false, // request alpha
+ true, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -3986,11 +3988,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ActualDepthDoesNotMatchRequestedDepth) {
- InitState init;
- init.gl_version = "3.0";
- init.has_depth = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ true, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -4013,12 +4020,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ActualStencilMatchesRequestedStencil) {
- InitState init;
- init.gl_version = "3.0";
- init.has_stencil = true;
- init.request_stencil = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ true, // has stencil
+ false, // request alpha
+ false, // request depth
+ true, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -4041,11 +4052,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ActualStencilDoesNotMatchRequestedStencil) {
- InitState init;
- init.gl_version = "3.0";
- init.has_stencil = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ true, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -4068,12 +4084,16 @@
}
TEST_F(GLES2DecoderManualInitTest, DepthEnableWithDepth) {
- InitState init;
- init.gl_version = "3.0";
- init.has_depth = true;
- init.request_depth = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ true, // has depth
+ false, // has stencil
+ false, // request alpha
+ true, // request depth
+ false, // request stencil
+ true); // bind generates resource
Enable cmd;
cmd.Init(GL_DEPTH_TEST);
@@ -4127,11 +4147,16 @@
}
TEST_F(GLES2DecoderManualInitTest, DepthEnableWithoutRequestedDepth) {
- InitState init;
- init.gl_version = "3.0";
- init.has_depth = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ true, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
Enable cmd;
cmd.Init(GL_DEPTH_TEST);
@@ -4184,12 +4209,16 @@
}
TEST_F(GLES2DecoderManualInitTest, StencilEnableWithStencil) {
- InitState init;
- init.gl_version = "3.0";
- init.has_stencil = true;
- init.request_stencil = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ true, // has stencil
+ false, // request alpha
+ false, // request depth
+ true, // request stencil
+ true); // bind generates resource
Enable cmd;
cmd.Init(GL_STENCIL_TEST);
@@ -4242,11 +4271,16 @@
}
TEST_F(GLES2DecoderManualInitTest, StencilEnableWithoutRequestedStencil) {
- InitState init;
- init.gl_version = "3.0";
- init.has_stencil = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ true, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
Enable cmd;
cmd.Init(GL_STENCIL_TEST);
@@ -4299,15 +4333,16 @@
}
TEST_F(GLES2DecoderManualInitTest, PackedDepthStencilReportsCorrectValues) {
- InitState init;
- init.extensions = "GL_OES_packed_depth_stencil";
- init.gl_version = "opengl es 2.0";
- init.has_depth = true;
- init.has_stencil = true;
- init.request_depth = true;
- init.request_stencil = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_packed_depth_stencil", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ true, // has depth
+ true, // has stencil
+ false, // request alpha
+ true, // request depth
+ true, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -4343,14 +4378,16 @@
}
TEST_F(GLES2DecoderManualInitTest, PackedDepthStencilNoRequestedStencil) {
- InitState init;
- init.extensions = "GL_OES_packed_depth_stencil";
- init.gl_version = "opengl es 2.0";
- init.has_depth = true;
- init.has_stencil = true;
- init.request_depth = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_packed_depth_stencil", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ true, // has depth
+ true, // has stencil
+ false, // request alpha
+ true, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -4386,11 +4423,16 @@
}
TEST_F(GLES2DecoderManualInitTest, PackedDepthStencilRenderbufferDepth) {
- InitState init;
- init.extensions = "GL_OES_packed_depth_stencil";
- init.gl_version = "opengl es 2.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_packed_depth_stencil", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_,
kServiceRenderbufferId);
DoBindFramebuffer(GL_FRAMEBUFFER, client_framebuffer_id_,
@@ -4453,11 +4495,16 @@
}
TEST_F(GLES2DecoderManualInitTest, PackedDepthStencilRenderbufferStencil) {
- InitState init;
- init.extensions = "GL_OES_packed_depth_stencil";
- init.gl_version = "opengl es 2.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_packed_depth_stencil", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_,
kServiceRenderbufferId);
DoBindFramebuffer(GL_FRAMEBUFFER, client_framebuffer_id_,
@@ -4852,11 +4899,16 @@
TEST_F(GLES2DecoderManualInitTest,
RenderbufferStorageMultisampleCHROMIUMGLError) {
- InitState init;
- init.extensions = "GL_EXT_framebuffer_multisample";
- init.gl_version = "2.1";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_EXT_framebuffer_multisample", // extensions
+ "2.1", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_,
kServiceRenderbufferId);
EXPECT_CALL(*gl_, GetError())
@@ -4875,11 +4927,16 @@
TEST_F(GLES2DecoderManualInitTest,
RenderbufferStorageMultisampleCHROMIUMBadArgs) {
- InitState init;
- init.extensions = "GL_EXT_framebuffer_multisample";
- init.gl_version = "2.1";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_EXT_framebuffer_multisample", // extensions
+ "2.1", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_,
kServiceRenderbufferId);
EXPECT_CALL(*gl_, RenderbufferStorageMultisampleEXT(_, _, _, _, _))
@@ -4901,10 +4958,16 @@
}
TEST_F(GLES2DecoderManualInitTest, RenderbufferStorageMultisampleCHROMIUM) {
- InitState init;
- init.extensions = "GL_EXT_framebuffer_multisample";
- init.gl_version = "2.1";
- InitDecoder(init);
+ InitDecoder(
+ "GL_EXT_framebuffer_multisample", // extensions
+ "2.1", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_,
kServiceRenderbufferId);
InSequence sequence;
@@ -4932,11 +4995,16 @@
TEST_F(GLES2DecoderManualInitTest,
RenderbufferStorageMultisampleEXTNotSupported) {
- InitState init;
- init.extensions = "GL_EXT_framebuffer_multisample";
- init.gl_version = "2.1";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_EXT_framebuffer_multisample", // extensions
+ "2.1", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_,
kServiceRenderbufferId);
InSequence sequence;
@@ -5046,11 +5114,16 @@
}
TEST_F(GLES2DecoderManualInitTest, GetCompressedTextureFormats) {
- InitState init;
- init.extensions = "GL_EXT_texture_compression_s3tc";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_EXT_texture_compression_s3tc", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -5099,10 +5172,16 @@
}
TEST_F(GLES2DecoderManualInitTest, GetNoCompressedTextureFormats) {
- InitState init;
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -5138,11 +5217,16 @@
}
TEST_F(GLES2DecoderManualInitTest, CompressedTexImage2DBucketBadBucket) {
- InitState init;
- init.extensions = "GL_EXT_texture_compression_s3tc";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_EXT_texture_compression_s3tc", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
const uint32 kBadBucketId = 123;
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
@@ -5168,11 +5252,16 @@
} // anonymous namespace.
TEST_F(GLES2DecoderManualInitTest, CompressedTexImage2DS3TC) {
- InitState init;
- init.extensions = "GL_EXT_texture_compression_s3tc";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_EXT_texture_compression_s3tc", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
const uint32 kBucketId = 123;
CommonDecoder::Bucket* bucket = decoder_->CreateBucket(kBucketId);
ASSERT_TRUE(bucket != NULL);
@@ -5318,11 +5407,16 @@
}
TEST_F(GLES2DecoderManualInitTest, CompressedTexImage2DETC1) {
- InitState init;
- init.extensions = "GL_OES_compressed_ETC1_RGB8_texture";
- init.gl_version = "opengl es 2.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_compressed_ETC1_RGB8_texture", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
const uint32 kBucketId = 123;
CommonDecoder::Bucket* bucket = decoder_->CreateBucket(kBucketId);
ASSERT_TRUE(bucket != NULL);
@@ -5386,11 +5480,16 @@
}
TEST_F(GLES2DecoderManualInitTest, GetCompressedTextureFormatsETC1) {
- InitState init;
- init.extensions = "GL_OES_compressed_ETC1_RGB8_texture";
- init.gl_version = "opengl es 2.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_compressed_ETC1_RGB8_texture", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -5457,11 +5556,16 @@
}
TEST_F(GLES2DecoderManualInitTest, EGLImageExternalBindTexture) {
- InitState init;
- init.extensions = "GL_OES_EGL_image_external";
- init.gl_version = "opengl es 2.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_EGL_image_external", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, BindTexture(GL_TEXTURE_EXTERNAL_OES, kNewServiceId));
EXPECT_CALL(*gl_, GenTextures(1, _))
.WillOnce(SetArgumentPointee<1>(kNewServiceId));
@@ -5475,11 +5579,16 @@
}
TEST_F(GLES2DecoderManualInitTest, EGLImageExternalGetBinding) {
- InitState init;
- init.extensions = "GL_OES_EGL_image_external";
- init.gl_version = "opengl es 2.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_EGL_image_external", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindTexture(GL_TEXTURE_EXTERNAL_OES, client_texture_id_, kServiceTextureId);
EXPECT_CALL(*gl_, GetError())
@@ -5504,11 +5613,16 @@
}
TEST_F(GLES2DecoderManualInitTest, EGLImageExternalTextureDefaults) {
- InitState init;
- init.extensions = "GL_OES_EGL_image_external";
- init.gl_version = "opengl es 2.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_EGL_image_external", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindTexture(GL_TEXTURE_EXTERNAL_OES, client_texture_id_, kServiceTextureId);
TextureRef* texture_ref = GetTexture(client_texture_id_);
@@ -5521,11 +5635,17 @@
}
TEST_F(GLES2DecoderManualInitTest, EGLImageExternalTextureParam) {
- InitState init;
- init.extensions = "GL_OES_EGL_image_external";
- init.gl_version = "opengl es 2.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_EGL_image_external", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
+
DoBindTexture(GL_TEXTURE_EXTERNAL_OES, client_texture_id_, kServiceTextureId);
EXPECT_CALL(*gl_, TexParameteri(GL_TEXTURE_EXTERNAL_OES,
@@ -5575,11 +5695,17 @@
}
TEST_F(GLES2DecoderManualInitTest, EGLImageExternalTextureParamInvalid) {
- InitState init;
- init.extensions = "GL_OES_EGL_image_external";
- init.gl_version = "opengl es 2.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_EGL_image_external", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
+
DoBindTexture(GL_TEXTURE_EXTERNAL_OES, client_texture_id_, kServiceTextureId);
TexParameteri cmd;
@@ -5611,11 +5737,16 @@
}
TEST_F(GLES2DecoderManualInitTest, EGLImageExternalTexImage2DError) {
- InitState init;
- init.extensions = "GL_OES_EGL_image_external";
- init.gl_version = "opengl es 2.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_EGL_image_external", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
GLenum target = GL_TEXTURE_EXTERNAL_OES;
GLint level = 0;
@@ -5637,9 +5768,16 @@
}
TEST_F(GLES2DecoderManualInitTest, BindGeneratesResourceFalse) {
- InitState init;
- init.gl_version = "3.0";
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ 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);
@@ -5663,11 +5801,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ARBTextureRectangleBindTexture) {
- InitState init;
- init.extensions = "GL_ARB_texture_rectangle";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ARB_texture_rectangle", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, BindTexture(GL_TEXTURE_RECTANGLE_ARB, kNewServiceId));
EXPECT_CALL(*gl_, GenTextures(1, _))
.WillOnce(SetArgumentPointee<1>(kNewServiceId));
@@ -5681,11 +5824,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ARBTextureRectangleGetBinding) {
- InitState init;
- init.extensions = "GL_ARB_texture_rectangle";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ARB_texture_rectangle", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindTexture(
GL_TEXTURE_RECTANGLE_ARB, client_texture_id_, kServiceTextureId);
@@ -5711,11 +5859,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ARBTextureRectangleTextureDefaults) {
- InitState init;
- init.extensions = "GL_ARB_texture_rectangle";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ARB_texture_rectangle", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindTexture(
GL_TEXTURE_RECTANGLE_ARB, client_texture_id_, kServiceTextureId);
@@ -5728,11 +5881,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ARBTextureRectangleTextureParam) {
- InitState init;
- init.extensions = "GL_ARB_texture_rectangle";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ARB_texture_rectangle", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindTexture(
GL_TEXTURE_RECTANGLE_ARB, client_texture_id_, kServiceTextureId);
@@ -5783,11 +5941,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ARBTextureRectangleTextureParamInvalid) {
- InitState init;
- init.extensions = "GL_ARB_texture_rectangle";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ARB_texture_rectangle", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindTexture(
GL_TEXTURE_RECTANGLE_ARB, client_texture_id_, kServiceTextureId);
@@ -5820,11 +5983,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ARBTextureRectangleTexImage2DError) {
- InitState init;
- init.extensions = "GL_ARB_texture_rectangle";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ARB_texture_rectangle", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
GLenum target = GL_TEXTURE_RECTANGLE_ARB;
GLint level = 0;
@@ -5919,10 +6087,17 @@
command_line.AppendSwitchASCII(
switches::kGpuDriverBugWorkarounds,
base::IntToString(gpu::TEXSUBIMAGE2D_FASTER_THAN_TEXIMAGE2D));
- InitState init;
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoderWithCommandLine(init, &command_line);
+ InitDecoderWithCommandLine(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true, // bind generates resource
+ &command_line);
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
DoTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 2, 2, 0, GL_RGBA, GL_UNSIGNED_BYTE,
0, 0);
@@ -6204,11 +6379,16 @@
}
TEST_F(GLES2DecoderManualInitTest, CompressedImage2DMarksTextureAsCleared) {
- InitState init;
- init.extensions = "GL_EXT_texture_compression_s3tc";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_EXT_texture_compression_s3tc", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
EXPECT_CALL(*gl_, GetError())
@@ -6339,11 +6519,16 @@
TEST_F(GLES2DecoderManualInitTest,
UnClearedAttachmentsGetClearedOnReadPixelsAndDrawBufferGetsRestored) {
- InitState init;
- init.extensions = "GL_EXT_framebuffer_multisample";
- init.gl_version = "2.1";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_EXT_framebuffer_multisample", // extensions
+ "2.1", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
const GLuint kFBOClientTextureId = 4100;
const GLuint kFBOServiceTextureId = 4101;
@@ -6789,13 +6974,16 @@
}
TEST_F(GLES2DecoderManualInitTest, BeginEndQueryEXT) {
- InitState init;
- init.extensions = "GL_EXT_occlusion_query_boolean";
- init.gl_version = "opengl es 2.0";
- init.has_alpha = true;
- init.request_alpha = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_EXT_occlusion_query_boolean", // extensions
+ "opengl es 2.0", // gl version
+ true, // has alpha
+ false, // has depth
+ false, // has stencil
+ true, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
// Test end fails if no begin.
EndQueryEXT end_cmd;
@@ -6878,13 +7066,16 @@
uint32 shm_offset) {
// We need to reset the decoder on each iteration, because we lose the
// context every time.
- GLES2DecoderTestBase::InitState init;
- init.extensions = "GL_EXT_occlusion_query_boolean";
- init.gl_version = "opengl es 2.0";
- init.has_alpha = true;
- init.request_alpha = true;
- init.bind_generates_resource = true;
- test->InitDecoder(init);
+ test->InitDecoder(
+ "GL_EXT_occlusion_query_boolean", // extensions
+ "opengl es 2.0", // gl version
+ true, // has alpha
+ false, // has depth
+ false, // has stencil
+ true, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
::testing::StrictMock< ::gfx::MockGLInterface>* gl = test->GetGLMock();
BeginQueryEXT begin_cmd;
@@ -7150,15 +7341,16 @@
}
TEST_F(GLES2DecoderManualInitTest, DepthTextureBadArgs) {
- InitState init;
- init.extensions = "GL_ANGLE_depth_texture";
- init.gl_version = "opengl es 2.0";
- init.has_depth = true;
- init.has_stencil = true;
- init.request_depth = true;
- init.request_stencil = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ANGLE_depth_texture", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ true, // has depth
+ true, // has stencil
+ false, // request alpha
+ true, // request depth
+ true, // request stencil
+ true); // bind generates resource
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
// Check trying to upload data fails.
@@ -7202,15 +7394,16 @@
}
TEST_F(GLES2DecoderManualInitTest, GenerateMipmapDepthTexture) {
- InitState init;
- init.extensions = "GL_ANGLE_depth_texture";
- init.gl_version = "opengl es 2.0";
- init.has_depth = true;
- init.has_stencil = true;
- init.request_depth = true;
- init.request_stencil = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ANGLE_depth_texture", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ true, // has depth
+ true, // has stencil
+ false, // request alpha
+ true, // request depth
+ true, // request stencil
+ true); // bind generates resource
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
DoTexImage2D(GL_TEXTURE_2D, 0, GL_DEPTH_COMPONENT,
2, 2, 0, GL_DEPTH_COMPONENT, GL_UNSIGNED_INT,
@@ -7222,15 +7415,16 @@
}
TEST_F(GLES2DecoderManualInitTest, DrawClearsDepthTexture) {
- InitState init;
- init.extensions = "GL_ANGLE_depth_texture";
- init.gl_version = "opengl es 2.0";
- init.has_alpha = true;
- init.has_depth = true;
- init.request_alpha = true;
- init.request_depth = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ANGLE_depth_texture", // extensions
+ "opengl es 2.0", // gl version
+ true, // has alpha
+ true, // has depth
+ false, // has stencil
+ true, // request alpha
+ true, // request depth
+ false, // request stencil
+ true); // bind generates resource
SetupDefaultProgram();
SetupAllNeededVertexBuffers();
@@ -7353,11 +7547,16 @@
bool vertex_array_deleted_manually_;
virtual void SetUp() {
- InitState init;
- init.extensions = "GL_OES_vertex_array_object";
- init.gl_version = "opengl es 2.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_vertex_array_object", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
SetupDefaultProgram();
AddExpectationsForGenVertexArraysOES();
@@ -7499,10 +7698,16 @@
GLES2DecoderEmulatedVertexArraysOESTest() { }
virtual void SetUp() {
- InitState init;
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
SetupDefaultProgram();
AddExpectationsForGenVertexArraysOES();
@@ -7880,15 +8085,16 @@
}
TEST_F(GLES2DecoderManualInitTest, DrawWithGLImageExternal) {
- InitState init;
- init.extensions = "GL_OES_EGL_image_external";
- init.gl_version = "opengl es 2.0";
- init.has_alpha = true;
- init.has_depth = true;
- init.request_alpha = true;
- init.request_depth = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_EGL_image_external", // extensions
+ "opengl es 2.0", // gl version
+ true, // has alpha
+ true, // has depth
+ false, // has stencil
+ true, // request alpha
+ true, // request depth
+ false, // request stencil
+ true); // bind generates resource
TextureRef* texture_ref = GetTexture(client_texture_id_);
scoped_refptr<MockGLImage> image(new MockGLImage);
@@ -7954,11 +8160,16 @@
}
TEST_F(GLES2DecoderManualInitTest, GpuMemoryManagerCHROMIUM) {
- InitState init;
- init.extensions = "GL_ARB_texture_rectangle";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_ARB_texture_rectangle", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
Texture* texture = GetTexture(client_texture_id_)->texture();
EXPECT_TRUE(texture != NULL);
@@ -7990,11 +8201,12 @@
}
TEST_F(GLES2DecoderManualInitTest, AsyncPixelTransfers) {
- InitState init;
- init.extensions = "GL_CHROMIUM_async_pixel_transfers";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_CHROMIUM_async_pixel_transfers", // extensions
+ "3.0", // gl version
+ false, false, false, // has alpha/depth/stencil
+ false, false, false, // request alpha/depth/stencil
+ true); // bind generates resource
// Set up the texture.
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
@@ -8227,11 +8439,12 @@
}
TEST_F(GLES2DecoderManualInitTest, AsyncPixelTransferManager) {
- InitState init;
- init.extensions = "GL_CHROMIUM_async_pixel_transfers";
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_CHROMIUM_async_pixel_transfers", // extensions
+ "3.0", // gl version
+ false, false, false, // has alpha/depth/stencil
+ false, false, false, // request alpha/depth/stencil
+ true); // bind generates resource
// Set up the texture.
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
@@ -8331,10 +8544,16 @@
scoped_refptr<SizeOnlyMemoryTracker> memory_tracker =
new SizeOnlyMemoryTracker();
set_memory_tracker(memory_tracker.get());
- InitState init;
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
// Expect that initial size - size is 0.
EXPECT_EQ(0u, memory_tracker->GetPoolSize(MemoryTracker::kUnmanaged));
EXPECT_EQ(0u, memory_tracker->GetPoolSize(MemoryTracker::kManaged));
@@ -8344,10 +8563,16 @@
scoped_refptr<SizeOnlyMemoryTracker> memory_tracker =
new SizeOnlyMemoryTracker();
set_memory_tracker(memory_tracker.get());
- InitState init;
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
EXPECT_CALL(*memory_tracker.get(), EnsureGPUMemoryAvailable(128))
.WillOnce(Return(true)).RetiresOnSaturation();
@@ -8375,10 +8600,16 @@
scoped_refptr<SizeOnlyMemoryTracker> memory_tracker =
new SizeOnlyMemoryTracker();
set_memory_tracker(memory_tracker.get());
- InitState init;
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
// Check we get out of memory and no call to glTexStorage2DEXT
// if Ensure fails.
@@ -8401,12 +8632,16 @@
scoped_refptr<SizeOnlyMemoryTracker> memory_tracker =
new SizeOnlyMemoryTracker();
set_memory_tracker(memory_tracker.get());
- InitState init;
- init.gl_version = "3.0";
- init.has_alpha = true;
- init.request_alpha = true;
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ true, // has alpha
+ false, // has depth
+ false, // has stencil
+ true, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
EXPECT_CALL(*memory_tracker.get(), EnsureGPUMemoryAvailable(128))
.WillOnce(Return(true)).RetiresOnSaturation();
@@ -8435,10 +8670,16 @@
scoped_refptr<SizeOnlyMemoryTracker> memory_tracker =
new SizeOnlyMemoryTracker();
set_memory_tracker(memory_tracker.get());
- InitState init;
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_,
kServiceRenderbufferId);
EXPECT_CALL(*gl_, GetError())
@@ -8469,10 +8710,16 @@
scoped_refptr<SizeOnlyMemoryTracker> memory_tracker =
new SizeOnlyMemoryTracker();
set_memory_tracker(memory_tracker.get());
- InitState init;
- init.gl_version = "3.0";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
DoBindBuffer(GL_ARRAY_BUFFER, client_buffer_id_,
kServiceBufferId);
EXPECT_CALL(*gl_, GetError())
@@ -8554,9 +8801,15 @@
}
TEST_F(GLES2DecoderManualInitTest, InvalidateFramebufferBinding) {
- InitState init;
- init.gl_version = "opengl es 3.0";
- InitDecoder(init);
+ InitDecoder("", // extensions
+ "opengl es 3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
// EXPECT_EQ can't be used to compare function pointers
EXPECT_TRUE(
@@ -8568,10 +8821,15 @@
}
TEST_F(GLES2DecoderManualInitTest, DiscardFramebufferEXT) {
- InitState init;
- init.extensions = "GL_EXT_discard_framebuffer";
- init.gl_version = "opengl es 2.0";
- InitDecoder(init);
+ InitDecoder("GL_EXT_discard_framebuffer", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
// EXPECT_EQ can't be used to compare function pointers
EXPECT_TRUE(
@@ -8625,9 +8883,16 @@
}
TEST_F(GLES2DecoderRestoreStateTest, NullPreviousState) {
- InitState init;
- init.gl_version = "3.0";
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
SetupTexture();
InSequence sequence;
@@ -8653,14 +8918,21 @@
}
TEST_F(GLES2DecoderRestoreStateTest, WithPreviousState) {
- InitState init;
- init.gl_version = "3.0";
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
SetupTexture();
// Construct a previous ContextState with all texture bindings
// set to default textures.
- ContextState prev_state(NULL, NULL, NULL);
+ ContextState prev_state(NULL, NULL);
InitializeContextState(&prev_state, std::numeric_limits<uint32>::max(), 0);
InSequence sequence;
@@ -8677,9 +8949,16 @@
}
TEST_F(GLES2DecoderRestoreStateTest, ActiveUnit1) {
- InitState init;
- init.gl_version = "3.0";
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
// Bind a non-default texture to GL_TEXTURE1 unit.
EXPECT_CALL(*gl_, ActiveTexture(GL_TEXTURE1));
@@ -8691,7 +8970,7 @@
// Construct a previous ContextState with all texture bindings
// set to default textures.
- ContextState prev_state(NULL, NULL, NULL);
+ ContextState prev_state(NULL, NULL);
InitializeContextState(&prev_state, std::numeric_limits<uint32>::max(), 0);
InSequence sequence;
@@ -8708,9 +8987,16 @@
}
TEST_F(GLES2DecoderRestoreStateTest, NonDefaultUnit0) {
- InitState init;
- init.gl_version = "3.0";
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
// Bind a non-default texture to GL_TEXTURE1 unit.
EXPECT_CALL(*gl_, ActiveTexture(GL_TEXTURE1));
@@ -8724,7 +9010,7 @@
// Construct a previous ContextState with GL_TEXTURE_2D target in
// GL_TEXTURE0 unit bound to a non-default texture and the rest
// set to default textures.
- ContextState prev_state(NULL, NULL, NULL);
+ ContextState prev_state(NULL, NULL);
InitializeContextState(&prev_state, 0, kServiceTextureId);
InSequence sequence;
@@ -8746,9 +9032,16 @@
}
TEST_F(GLES2DecoderRestoreStateTest, NonDefaultUnit1) {
- InitState init;
- init.gl_version = "3.0";
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
// Bind a non-default texture to GL_TEXTURE0 unit.
SetupTexture();
@@ -8756,7 +9049,7 @@
// Construct a previous ContextState with GL_TEXTURE_2D target in
// GL_TEXTURE1 unit bound to a non-default texture and the rest
// set to default textures.
- ContextState prev_state(NULL, NULL, NULL);
+ ContextState prev_state(NULL, NULL);
InitializeContextState(&prev_state, 1, kServiceTextureId);
InSequence sequence;
@@ -8782,12 +9075,17 @@
command_line.AppendSwitchASCII(
switches::kGpuDriverBugWorkarounds,
base::IntToString(gpu::CLEAR_UNIFORMS_BEFORE_FIRST_PROGRAM_USE));
- InitState init;
- init.gl_version = "3.0";
- init.has_alpha = true;
- init.request_alpha = true;
- init.bind_generates_resource = true;
- InitDecoderWithCommandLine(init, &command_line);
+ InitDecoderWithCommandLine(
+ "", // extensions
+ "3.0", // gl version
+ true, // has alpha
+ false, // has depth
+ false, // has stencil
+ true, // request alpha
+ false, // request depth
+ false, // request stencil
+ true, // bind generates resource
+ &command_line);
{
static AttribInfo attribs[] = {
{ kAttrib1Name, kAttrib1Size, kAttrib1Type, kAttrib1Location, },
@@ -8824,10 +9122,15 @@
}
TEST_F(GLES2DecoderManualInitTest, TexImage2DFloatOnGLES2) {
- InitState init;
- init.extensions = "GL_OES_texture_float";
- init.gl_version = "opengl es 2.0";
- InitDecoder(init);
+ InitDecoder("GL_OES_texture_float", // extensions
+ "opengl es 2.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
DoTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 16, 17, 0, GL_RGBA, GL_FLOAT, 0, 0);
DoTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 16, 17, 0, GL_RGB, GL_FLOAT, 0, 0);
@@ -8840,10 +9143,15 @@
}
TEST_F(GLES2DecoderManualInitTest, TexImage2DFloatOnGLES3) {
- InitState init;
- init.extensions = "GL_OES_texture_float GL_EXT_color_buffer_float";
- init.gl_version = "opengl es 3.0";
- InitDecoder(init);
+ InitDecoder("GL_OES_texture_float GL_EXT_color_buffer_float", // extensions
+ "opengl es 3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
DoTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, 16, 17, 0, GL_RGBA, GL_FLOAT, 0, 0);
DoTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, 16, 17, 0, GL_RGB, GL_FLOAT, 0, 0);
@@ -8858,10 +9166,15 @@
}
TEST_F(GLES2DecoderManualInitTest, TexSubImage2DFloatOnGLES3) {
- InitState init;
- init.extensions = "GL_OES_texture_float GL_EXT_color_buffer_float";
- init.gl_version = "opengl es 3.0";
- InitDecoder(init);
+ InitDecoder("GL_OES_texture_float GL_EXT_color_buffer_float", // extensions
+ "opengl es 3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
const int kWidth = 8;
const int kHeight = 4;
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
@@ -8881,10 +9194,15 @@
}
TEST_F(GLES2DecoderManualInitTest, TexSubImage2DFloatDoesClearOnGLES3) {
- InitState init;
- init.extensions = "GL_OES_texture_float GL_EXT_color_buffer_float";
- init.gl_version = "opengl es 3.0";
- InitDecoder(init);
+ InitDecoder("GL_OES_texture_float GL_EXT_color_buffer_float", // extensions
+ "opengl es 3.0", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
const int kWidth = 8;
const int kHeight = 4;
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
@@ -8907,10 +9225,15 @@
}
TEST_F(GLES2DecoderManualInitTest, TexImage2DFloatConvertsFormatDesktop) {
- InitState init;
- init.extensions = "GL_ARB_texture_float";
- init.gl_version = "2.1";
- InitDecoder(init);
+ InitDecoder("GL_ARB_texture_float", // extensions
+ "2.1", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ false); // bind generates resource
DoBindTexture(GL_TEXTURE_2D, client_texture_id_, kServiceTextureId);
DoTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA32F, 16, 17, 0, GL_RGBA, GL_FLOAT, 0,
0);
@@ -8930,11 +9253,16 @@
}
TEST_F(GLES2DecoderManualInitTest, ReadFormatExtension) {
- InitState init;
- init.extensions = "GL_OES_read_format";
- init.gl_version = "2.1";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "GL_OES_read_format", // extensions
+ "2.1", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
@@ -8992,10 +9320,16 @@
}
TEST_F(GLES2DecoderManualInitTest, NoReadFormatExtension) {
- InitState init;
- init.gl_version = "2.1";
- init.bind_generates_resource = true;
- InitDecoder(init);
+ InitDecoder(
+ "", // extensions
+ "2.1", // gl version
+ false, // has alpha
+ false, // has depth
+ false, // has stencil
+ false, // request alpha
+ false, // request depth
+ false, // request stencil
+ true); // bind generates resource
EXPECT_CALL(*gl_, GetError())
.WillOnce(Return(GL_NO_ERROR))
« no previous file with comments | « gpu/command_buffer/service/gles2_cmd_decoder.cc ('k') | gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698