| 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 dc01e7a10c31e056cecaf64a7e307c5c724476ec..4f026d12930c6a5b1f1d739c09d9b1eb177a754f 100644
|
| --- a/gpu/command_buffer/service/texture_manager_unittest.cc
|
| +++ b/gpu/command_buffer/service/texture_manager_unittest.cc
|
| @@ -47,12 +47,12 @@ class TextureTestHelper {
|
|
|
| class TextureManagerTest : public GpuServiceTest {
|
| public:
|
| - static const GLint kMaxTextureSize = 16;
|
| + static const GLint kMaxTextureSize = 32;
|
| static const GLint kMaxCubeMapTextureSize = 8;
|
| - static const GLint kMaxRectangleTextureSize = 16;
|
| - static const GLint kMaxExternalTextureSize = 16;
|
| + static const GLint kMaxRectangleTextureSize = 32;
|
| + static const GLint kMaxExternalTextureSize = 32;
|
| static const GLint kMax3DTextureSize = 256;
|
| - static const GLint kMax2dLevels = 5;
|
| + static const GLint kMax2dLevels = 6;
|
| static const GLint kMaxCubeMapLevels = 4;
|
| static const GLint kMaxExternalLevels = 1;
|
| static const bool kUseDefaultTextures = false;
|
| @@ -465,11 +465,11 @@ TEST_F(TextureManagerTest, ValidForTargetNPOT) {
|
|
|
| class TextureTestBase : public GpuServiceTest {
|
| public:
|
| - static const GLint kMaxTextureSize = 16;
|
| + static const GLint kMaxTextureSize = 32;
|
| static const GLint kMaxCubeMapTextureSize = 8;
|
| - static const GLint kMaxRectangleTextureSize = 16;
|
| + static const GLint kMaxRectangleTextureSize = 32;
|
| static const GLint kMax3DTextureSize = 256;
|
| - static const GLint kMax2dLevels = 5;
|
| + static const GLint kMax2dLevels = 6;
|
| static const GLint kMaxCubeMapLevels = 4;
|
| static const GLuint kClient1Id = 1;
|
| static const GLuint kService1Id = 11;
|
| @@ -684,6 +684,55 @@ TEST_F(TextureTest, POT2D) {
|
| EXPECT_FALSE(manager_->HaveUnrenderableTextures());
|
| }
|
|
|
| +TEST_F(TextureTest, BaseLevel) {
|
| + manager_->SetTarget(texture_ref_.get(), GL_TEXTURE_2D);
|
| + Texture* texture = texture_ref_->texture();
|
| + EXPECT_EQ(static_cast<GLenum>(GL_TEXTURE_2D), texture->target());
|
| + // Check Setting level 1 to POT
|
| + manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 1, GL_RGBA, 4, 4, 1,
|
| + 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect(4, 4));
|
| + SetParameter(
|
| + texture_ref_.get(), GL_TEXTURE_MIN_FILTER, GL_LINEAR, GL_NO_ERROR);
|
| + EXPECT_FALSE(manager_->CanRender(texture_ref_.get()));
|
| + EXPECT_TRUE(manager_->HaveUnrenderableTextures());
|
| + SetParameter(
|
| + texture_ref_.get(), GL_TEXTURE_BASE_LEVEL, 1, GL_NO_ERROR);
|
| + EXPECT_TRUE(manager_->CanRender(texture_ref_.get()));
|
| + EXPECT_FALSE(manager_->HaveUnrenderableTextures());
|
| +}
|
| +
|
| +TEST_F(TextureTest, BaseLevelMaxLevel) {
|
| + manager_->SetTarget(texture_ref_.get(), GL_TEXTURE_2D);
|
| + Texture* texture = texture_ref_->texture();
|
| + EXPECT_EQ(static_cast<GLenum>(GL_TEXTURE_2D), texture->target());
|
| + // Set up level 2, 3, 4.
|
| + manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 2, GL_RGBA, 8, 8, 1,
|
| + 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect(8, 8));
|
| + manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 3, GL_RGBA, 4, 4, 1,
|
| + 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect(4, 4));
|
| + manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 4, GL_RGBA, 2, 2, 1,
|
| + 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect(2, 2));
|
| + SetParameter(
|
| + texture_ref_.get(), GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR,
|
| + GL_NO_ERROR);
|
| + SetParameter(
|
| + texture_ref_.get(), GL_TEXTURE_MAG_FILTER, GL_LINEAR, GL_NO_ERROR);
|
| + EXPECT_FALSE(manager_->CanRender(texture_ref_.get()));
|
| + EXPECT_TRUE(manager_->HaveUnrenderableTextures());
|
| + SetParameter(
|
| + texture_ref_.get(), GL_TEXTURE_BASE_LEVEL, 2, GL_NO_ERROR);
|
| + EXPECT_FALSE(manager_->CanRender(texture_ref_.get()));
|
| + EXPECT_TRUE(manager_->HaveUnrenderableTextures());
|
| + SetParameter(
|
| + texture_ref_.get(), GL_TEXTURE_MAX_LEVEL, 4, GL_NO_ERROR);
|
| + EXPECT_TRUE(manager_->CanRender(texture_ref_.get()));
|
| + EXPECT_FALSE(manager_->HaveUnrenderableTextures());
|
| + SetParameter(
|
| + texture_ref_.get(), GL_TEXTURE_BASE_LEVEL, 0, GL_NO_ERROR);
|
| + EXPECT_FALSE(manager_->CanRender(texture_ref_.get()));
|
| + EXPECT_TRUE(manager_->HaveUnrenderableTextures());
|
| +}
|
| +
|
| TEST_F(TextureMemoryTrackerTest, MarkMipmapsGenerated) {
|
| manager_->SetTarget(texture_ref_.get(), GL_TEXTURE_2D);
|
| EXPECT_MEMORY_ALLOCATION_CHANGE(0, 64);
|
|
|