summaryrefslogtreecommitdiffstats
path: root/gpu/command_buffer/service/context_group_unittest.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gpu/command_buffer/service/context_group_unittest.cc')
-rw-r--r--gpu/command_buffer/service/context_group_unittest.cc121
1 files changed, 119 insertions, 2 deletions
diff --git a/gpu/command_buffer/service/context_group_unittest.cc b/gpu/command_buffer/service/context_group_unittest.cc
index be6888e..066da29 100644
--- a/gpu/command_buffer/service/context_group_unittest.cc
+++ b/gpu/command_buffer/service/context_group_unittest.cc
@@ -82,8 +82,37 @@ TEST_F(ContextGroupTest, InitializeNoExtensions) {
GL_COMPRESSED_RGB_S3TC_DXT1_EXT));
EXPECT_FALSE(group_.validators()->compressed_texture_format.IsValid(
GL_COMPRESSED_RGBA_S3TC_DXT1_EXT));
+ EXPECT_FALSE(group_.validators()->compressed_texture_format.IsValid(
+ GL_COMPRESSED_RGBA_S3TC_DXT3_EXT));
+ EXPECT_FALSE(group_.validators()->compressed_texture_format.IsValid(
+ GL_COMPRESSED_RGBA_S3TC_DXT5_EXT));
EXPECT_FALSE(group_.validators()->read_pixel_format.IsValid(
GL_BGRA_EXT));
+ EXPECT_FALSE(group_.validators()->texture_parameter.IsValid(
+ GL_TEXTURE_MAX_ANISOTROPY_EXT));
+ EXPECT_FALSE(group_.validators()->g_l_state.IsValid(
+ GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT));
+ EXPECT_FALSE(group_.validators()->frame_buffer_target.IsValid(
+ GL_READ_FRAMEBUFFER_EXT));
+ EXPECT_FALSE(group_.validators()->frame_buffer_target.IsValid(
+ GL_DRAW_FRAMEBUFFER_EXT));
+ EXPECT_FALSE(group_.validators()->g_l_state.IsValid(
+ GL_READ_FRAMEBUFFER_BINDING_EXT));
+ EXPECT_FALSE(group_.validators()->render_buffer_parameter.IsValid(
+ GL_MAX_SAMPLES_EXT));
+ EXPECT_FALSE(group_.validators()->texture_internal_format.IsValid(
+ GL_DEPTH_COMPONENT));
+ EXPECT_FALSE(group_.validators()->texture_format.IsValid(GL_DEPTH_COMPONENT));
+ EXPECT_FALSE(group_.validators()->pixel_type.IsValid(GL_UNSIGNED_SHORT));
+ EXPECT_FALSE(group_.validators()->pixel_type.IsValid(GL_UNSIGNED_INT));
+ EXPECT_FALSE(group_.validators()->render_buffer_format.IsValid(
+ GL_DEPTH24_STENCIL8));
+ EXPECT_FALSE(group_.validators()->texture_internal_format.IsValid(
+ GL_DEPTH_STENCIL));
+ EXPECT_FALSE(group_.validators()->texture_format.IsValid(
+ GL_DEPTH_STENCIL));
+ EXPECT_FALSE(group_.validators()->pixel_type.IsValid(
+ GL_UNSIGNED_INT_24_8));
}
TEST_F(ContextGroupTest, InitializeNPOTExtensionGLES) {
@@ -109,6 +138,10 @@ TEST_F(ContextGroupTest, InitializeDXTExtensionGLES2) {
GL_COMPRESSED_RGB_S3TC_DXT1_EXT));
EXPECT_TRUE(group_.validators()->compressed_texture_format.IsValid(
GL_COMPRESSED_RGBA_S3TC_DXT1_EXT));
+ EXPECT_FALSE(group_.validators()->compressed_texture_format.IsValid(
+ GL_COMPRESSED_RGBA_S3TC_DXT3_EXT));
+ EXPECT_FALSE(group_.validators()->compressed_texture_format.IsValid(
+ GL_COMPRESSED_RGBA_S3TC_DXT5_EXT));
}
TEST_F(ContextGroupTest, InitializeDXTExtensionGL) {
@@ -116,10 +149,16 @@ TEST_F(ContextGroupTest, InitializeDXTExtensionGL) {
group_.Initialize();
EXPECT_THAT(group_.extensions(),
HasSubstr("GL_EXT_texture_compression_dxt1"));
+ EXPECT_THAT(group_.extensions(),
+ HasSubstr("GL_EXT_texture_compression_s3tc"));
EXPECT_TRUE(group_.validators()->compressed_texture_format.IsValid(
GL_COMPRESSED_RGB_S3TC_DXT1_EXT));
EXPECT_TRUE(group_.validators()->compressed_texture_format.IsValid(
GL_COMPRESSED_RGBA_S3TC_DXT1_EXT));
+ EXPECT_TRUE(group_.validators()->compressed_texture_format.IsValid(
+ GL_COMPRESSED_RGBA_S3TC_DXT3_EXT));
+ EXPECT_TRUE(group_.validators()->compressed_texture_format.IsValid(
+ GL_COMPRESSED_RGBA_S3TC_DXT5_EXT));
}
TEST_F(ContextGroupTest, InitializeEXT_texture_format_BGRA8888GLES2) {
@@ -244,12 +283,90 @@ TEST_F(ContextGroupTest, InitializeEXT_framebuffer_multisample) {
GL_DRAW_FRAMEBUFFER_EXT));
EXPECT_TRUE(group_.validators()->g_l_state.IsValid(
GL_READ_FRAMEBUFFER_BINDING_EXT));
- EXPECT_TRUE(group_.validators()->g_l_state.IsValid(
- GL_DRAW_FRAMEBUFFER_BINDING_EXT));
EXPECT_TRUE(group_.validators()->render_buffer_parameter.IsValid(
GL_MAX_SAMPLES_EXT));
}
+TEST_F(ContextGroupTest, InitializeEXT_texture_filter_anisotropic) {
+ SetupInitExpectations("GL_EXT_texture_filter_anisotropic");
+ group_.Initialize();
+ EXPECT_THAT(group_.extensions(),
+ HasSubstr("GL_EXT_texture_filter_anisotropic"));
+ EXPECT_TRUE(group_.validators()->texture_parameter.IsValid(
+ GL_TEXTURE_MAX_ANISOTROPY_EXT));
+ EXPECT_TRUE(group_.validators()->g_l_state.IsValid(
+ GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT));
+}
+
+TEST_F(ContextGroupTest, InitializeEXT_ARB_depth_texture) {
+ SetupInitExpectations("GL_ARB_depth_texture");
+ group_.Initialize();
+ EXPECT_THAT(group_.extensions(),
+ HasSubstr("GL_GOOGLE_depth_texture"));
+ EXPECT_TRUE(group_.validators()->texture_internal_format.IsValid(
+ GL_DEPTH_COMPONENT));
+ EXPECT_TRUE(group_.validators()->texture_format.IsValid(GL_DEPTH_COMPONENT));
+ EXPECT_TRUE(group_.validators()->pixel_type.IsValid(GL_UNSIGNED_SHORT));
+ EXPECT_TRUE(group_.validators()->pixel_type.IsValid(GL_UNSIGNED_INT));
+}
+
+TEST_F(ContextGroupTest, InitializeOES_ARB_depth_texture) {
+ SetupInitExpectations("GL_OES_depth_texture");
+ group_.Initialize();
+ EXPECT_THAT(group_.extensions(),
+ HasSubstr("GL_GOOGLE_depth_texture"));
+ EXPECT_TRUE(group_.validators()->texture_internal_format.IsValid(
+ GL_DEPTH_COMPONENT));
+ EXPECT_TRUE(group_.validators()->texture_format.IsValid(GL_DEPTH_COMPONENT));
+ EXPECT_TRUE(group_.validators()->pixel_type.IsValid(GL_UNSIGNED_SHORT));
+ EXPECT_TRUE(group_.validators()->pixel_type.IsValid(GL_UNSIGNED_INT));
+}
+
+TEST_F(ContextGroupTest, InitializeEXT_packed_depth_stencil) {
+ SetupInitExpectations("GL_EXT_packed_depth_stencil");
+ group_.Initialize();
+ EXPECT_THAT(group_.extensions(),
+ HasSubstr("GL_OES_packed_depth_stencil"));
+ EXPECT_TRUE(group_.validators()->render_buffer_format.IsValid(
+ GL_DEPTH24_STENCIL8));
+ EXPECT_FALSE(group_.validators()->texture_internal_format.IsValid(
+ GL_DEPTH_COMPONENT));
+ EXPECT_FALSE(group_.validators()->texture_format.IsValid(GL_DEPTH_COMPONENT));
+ EXPECT_FALSE(group_.validators()->pixel_type.IsValid(GL_UNSIGNED_SHORT));
+ EXPECT_FALSE(group_.validators()->pixel_type.IsValid(GL_UNSIGNED_INT));
+}
+
+TEST_F(ContextGroupTest, InitializeOES_packed_depth_stencil) {
+ SetupInitExpectations("GL_OES_packed_depth_stencil");
+ group_.Initialize();
+ EXPECT_THAT(group_.extensions(),
+ HasSubstr("GL_OES_packed_depth_stencil"));
+ EXPECT_TRUE(group_.validators()->render_buffer_format.IsValid(
+ GL_DEPTH24_STENCIL8));
+ EXPECT_FALSE(group_.validators()->texture_internal_format.IsValid(
+ GL_DEPTH_COMPONENT));
+ EXPECT_FALSE(group_.validators()->texture_format.IsValid(GL_DEPTH_COMPONENT));
+ EXPECT_FALSE(group_.validators()->pixel_type.IsValid(GL_UNSIGNED_SHORT));
+ EXPECT_FALSE(group_.validators()->pixel_type.IsValid(GL_UNSIGNED_INT));
+}
+
+TEST_F(ContextGroupTest,
+ InitializeOES_packed_depth_stencil_and_GL_ARB_depth_texture) {
+ SetupInitExpectations("GL_OES_packed_depth_stencil GL_ARB_depth_texture");
+ group_.Initialize();
+ EXPECT_THAT(group_.extensions(),
+ HasSubstr("GL_OES_packed_depth_stencil"));
+ EXPECT_TRUE(group_.validators()->render_buffer_format.IsValid(
+ GL_DEPTH24_STENCIL8));
+ EXPECT_TRUE(group_.validators()->texture_internal_format.IsValid(
+ GL_DEPTH_STENCIL));
+ EXPECT_TRUE(group_.validators()->texture_format.IsValid(
+ GL_DEPTH_STENCIL));
+ EXPECT_TRUE(group_.validators()->pixel_type.IsValid(
+ GL_UNSIGNED_INT_24_8));
+}
+
+
} // namespace gles2
} // namespace gpu