| Index: gpu/command_buffer/service/texture_manager_unittest.cc
|
| diff --git a/gpu/command_buffer/service/texture_manager_unittest.cc b/gpu/command_buffer/service/texture_manager_unittest.cc
|
| index 54e15df8cb1aa6a82bf66d9ea3f2147ae20ab42c..356453d046f0a0790351abde3dc8c1341b7e5f5e 100644
|
| --- a/gpu/command_buffer/service/texture_manager_unittest.cc
|
| +++ b/gpu/command_buffer/service/texture_manager_unittest.cc
|
| @@ -21,8 +21,10 @@ class TextureManagerTest : public testing::Test {
|
| public:
|
| static const GLint kMaxTextureSize = 16;
|
| static const GLint kMaxCubeMapTextureSize = 8;
|
| + static const GLint kMaxExternalTextureSize = 16;
|
| static const GLint kMax2dLevels = 5;
|
| static const GLint kMaxCubeMapLevels = 4;
|
| + static const GLint kMaxExternalLevels = 1;
|
|
|
| static const GLuint kServiceBlackTexture2dId = 701;
|
| static const GLuint kServiceBlackTextureCubemapId = 702;
|
| @@ -43,8 +45,8 @@ class TextureManagerTest : public testing::Test {
|
| gl_.reset(new ::testing::StrictMock< ::gfx::MockGLInterface>());
|
| ::gfx::GLInterface::SetGLInterface(gl_.get());
|
|
|
| - TestHelper::SetupTextureManagerInitExpectations(gl_.get());
|
| - manager_.Initialize();
|
| + TestHelper::SetupTextureManagerInitExpectations(gl_.get(), "");
|
| + manager_.Initialize(&feature_info_);
|
| }
|
|
|
| virtual void TearDown() {
|
| @@ -62,8 +64,10 @@ class TextureManagerTest : public testing::Test {
|
| #ifndef COMPILER_MSVC
|
| const GLint TextureManagerTest::kMaxTextureSize;
|
| const GLint TextureManagerTest::kMaxCubeMapTextureSize;
|
| +const GLint TextureManagerTest::kMaxExternalTextureSize;
|
| const GLint TextureManagerTest::kMax2dLevels;
|
| const GLint TextureManagerTest::kMaxCubeMapLevels;
|
| +const GLint TextureManagerTest::kMaxExternalLevels;
|
| const GLuint TextureManagerTest::kServiceBlackTexture2dId;
|
| const GLuint TextureManagerTest::kServiceBlackTextureCubemapId;
|
| const GLuint TextureManagerTest::kServiceDefaultTexture2dId;
|
| @@ -176,9 +180,37 @@ TEST_F(TextureManagerTest, MaxValues) {
|
| EXPECT_EQ(kMax2dLevels, manager_.MaxLevelsForTarget(GL_TEXTURE_2D));
|
| EXPECT_EQ(kMaxCubeMapLevels,
|
| manager_.MaxLevelsForTarget(GL_TEXTURE_CUBE_MAP));
|
| + EXPECT_EQ(kMaxCubeMapLevels,
|
| + manager_.MaxLevelsForTarget(GL_TEXTURE_CUBE_MAP_POSITIVE_X));
|
| + EXPECT_EQ(kMaxCubeMapLevels,
|
| + manager_.MaxLevelsForTarget(GL_TEXTURE_CUBE_MAP_NEGATIVE_X));
|
| + EXPECT_EQ(kMaxCubeMapLevels,
|
| + manager_.MaxLevelsForTarget(GL_TEXTURE_CUBE_MAP_POSITIVE_Y));
|
| + EXPECT_EQ(kMaxCubeMapLevels,
|
| + manager_.MaxLevelsForTarget(GL_TEXTURE_CUBE_MAP_NEGATIVE_Y));
|
| + EXPECT_EQ(kMaxCubeMapLevels,
|
| + manager_.MaxLevelsForTarget(GL_TEXTURE_CUBE_MAP_POSITIVE_Z));
|
| + EXPECT_EQ(kMaxCubeMapLevels,
|
| + manager_.MaxLevelsForTarget(GL_TEXTURE_CUBE_MAP_NEGATIVE_Z));
|
| + EXPECT_EQ(kMaxExternalLevels,
|
| + manager_.MaxLevelsForTarget(GL_TEXTURE_EXTERNAL_OES));
|
| EXPECT_EQ(kMaxTextureSize, manager_.MaxSizeForTarget(GL_TEXTURE_2D));
|
| EXPECT_EQ(kMaxCubeMapTextureSize,
|
| manager_.MaxSizeForTarget(GL_TEXTURE_CUBE_MAP));
|
| + EXPECT_EQ(kMaxCubeMapTextureSize,
|
| + manager_.MaxSizeForTarget(GL_TEXTURE_CUBE_MAP_POSITIVE_X));
|
| + EXPECT_EQ(kMaxCubeMapTextureSize,
|
| + manager_.MaxSizeForTarget(GL_TEXTURE_CUBE_MAP_NEGATIVE_X));
|
| + EXPECT_EQ(kMaxCubeMapTextureSize,
|
| + manager_.MaxSizeForTarget(GL_TEXTURE_CUBE_MAP_POSITIVE_Y));
|
| + EXPECT_EQ(kMaxCubeMapTextureSize,
|
| + manager_.MaxSizeForTarget(GL_TEXTURE_CUBE_MAP_NEGATIVE_Y));
|
| + EXPECT_EQ(kMaxCubeMapTextureSize,
|
| + manager_.MaxSizeForTarget(GL_TEXTURE_CUBE_MAP_POSITIVE_Z));
|
| + EXPECT_EQ(kMaxCubeMapTextureSize,
|
| + manager_.MaxSizeForTarget(GL_TEXTURE_CUBE_MAP_NEGATIVE_Z));
|
| + EXPECT_EQ(kMaxExternalTextureSize,
|
| + manager_.MaxSizeForTarget(GL_TEXTURE_EXTERNAL_OES));
|
| }
|
|
|
| TEST_F(TextureManagerTest, ValidForTarget) {
|
| @@ -650,6 +682,21 @@ TEST_F(TextureInfoTest, HalfFloatLinear) {
|
| manager.Destroy(false);
|
| }
|
|
|
| +TEST_F(TextureInfoTest, EGLImageExternal) {
|
| + TextureManager manager(kMaxTextureSize, kMaxCubeMapTextureSize);
|
| + TestHelper::SetupFeatureInfoInitExpectations(
|
| + gl_.get(), "GL_OES_EGL_image_external");
|
| + FeatureInfo feature_info;
|
| + feature_info.Initialize(NULL);
|
| + manager.CreateTextureInfo(&feature_info, kClient1Id, kService1Id);
|
| + TextureManager::TextureInfo* info = manager_.GetTextureInfo(kClient1Id);
|
| + ASSERT_TRUE(info != NULL);
|
| + manager.SetInfoTarget(info, GL_TEXTURE_EXTERNAL_OES);
|
| + EXPECT_EQ(static_cast<GLenum>(GL_TEXTURE_EXTERNAL_OES), info->target());
|
| + EXPECT_FALSE(info->CanGenerateMipmaps(&feature_info));
|
| + manager.Destroy(false);
|
| +}
|
| +
|
| } // namespace gles2
|
| } // namespace gpu
|
|
|
|
|