| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "gpu/command_buffer/service/texture_manager.h" | 5 #include "gpu/command_buffer/service/texture_manager.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <memory> | 10 #include <memory> |
| (...skipping 767 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 778 manager_->SetTarget(texture_ref_.get(), GL_TEXTURE_2D); | 778 manager_->SetTarget(texture_ref_.get(), GL_TEXTURE_2D); |
| 779 EXPECT_FALSE(manager_->CanRender(texture_ref_.get())); | 779 EXPECT_FALSE(manager_->CanRender(texture_ref_.get())); |
| 780 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 0, GL_RGBA, 1, 1, 1, | 780 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 0, GL_RGBA, 1, 1, 1, |
| 781 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect(1, 1)); | 781 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect(1, 1)); |
| 782 EXPECT_TRUE(manager_->CanRender(texture_ref_.get())); | 782 EXPECT_TRUE(manager_->CanRender(texture_ref_.get())); |
| 783 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 0, GL_RGBA, 0, 0, 1, | 783 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 0, GL_RGBA, 0, 0, 1, |
| 784 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect()); | 784 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect()); |
| 785 EXPECT_FALSE(manager_->CanRender(texture_ref_.get())); | 785 EXPECT_FALSE(manager_->CanRender(texture_ref_.get())); |
| 786 } | 786 } |
| 787 | 787 |
| 788 TEST_F(TextureTest, CanRenderTo) { |
| 789 TestHelper::SetupFeatureInfoInitExpectations(gl_.get(), ""); |
| 790 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo()); |
| 791 feature_info->InitializeForTesting(); |
| 792 manager_->SetTarget(texture_ref_.get(), GL_TEXTURE_2D); |
| 793 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 0, GL_RGB, 1, 1, 1, |
| 794 0, GL_RGB, GL_UNSIGNED_BYTE, gfx::Rect(1, 1)); |
| 795 EXPECT_TRUE(texture_ref_->texture()->CanRenderTo(feature_info.get(), 0)); |
| 796 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 0, GL_RGBA, 0, 0, 1, |
| 797 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect()); |
| 798 EXPECT_TRUE(texture_ref_->texture()->CanRenderTo(feature_info.get(), 0)); |
| 799 } |
| 800 |
| 801 TEST_F(TextureTest, CanNotRenderTo) { |
| 802 TestHelper::SetupFeatureInfoInitExpectations(gl_.get(), ""); |
| 803 scoped_refptr<FeatureInfo> feature_info(new FeatureInfo()); |
| 804 feature_info->InitializeForTesting(); |
| 805 manager_->SetTarget(texture_ref_.get(), GL_TEXTURE_2D); |
| 806 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 0, GL_LUMINANCE, 1, |
| 807 1, 1, 0, GL_LUMINANCE, GL_UNSIGNED_BYTE, |
| 808 gfx::Rect(1, 1)); |
| 809 EXPECT_FALSE(texture_ref_->texture()->CanRenderTo(feature_info.get(), 0)); |
| 810 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 0, |
| 811 GL_LUMINANCE_ALPHA, 0, 0, 1, 0, GL_LUMINANCE_ALPHA, |
| 812 GL_UNSIGNED_BYTE, gfx::Rect()); |
| 813 EXPECT_FALSE(texture_ref_->texture()->CanRenderTo(feature_info.get(), 0)); |
| 814 } |
| 815 |
| 788 TEST_F(TextureTest, EstimatedSize) { | 816 TEST_F(TextureTest, EstimatedSize) { |
| 789 manager_->SetTarget(texture_ref_.get(), GL_TEXTURE_2D); | 817 manager_->SetTarget(texture_ref_.get(), GL_TEXTURE_2D); |
| 790 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 0, GL_RGBA, 8, 4, 1, | 818 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 0, GL_RGBA, 8, 4, 1, |
| 791 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect(8, 4)); | 819 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect(8, 4)); |
| 792 EXPECT_EQ(8u * 4u * 4u, texture_ref_->texture()->estimated_size()); | 820 EXPECT_EQ(8u * 4u * 4u, texture_ref_->texture()->estimated_size()); |
| 793 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 2, GL_RGBA, 8, 4, 1, | 821 manager_->SetLevelInfo(texture_ref_.get(), GL_TEXTURE_2D, 2, GL_RGBA, 8, 4, 1, |
| 794 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect(8, 4)); | 822 0, GL_RGBA, GL_UNSIGNED_BYTE, gfx::Rect(8, 4)); |
| 795 EXPECT_EQ(8u * 4u * 4u * 2u, texture_ref_->texture()->estimated_size()); | 823 EXPECT_EQ(8u * 4u * 4u * 2u, texture_ref_->texture()->estimated_size()); |
| 796 } | 824 } |
| 797 | 825 |
| (...skipping 1892 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2690 ExpectValid( | 2718 ExpectValid( |
| 2691 true, GL_DEPTH_STENCIL, GL_UNSIGNED_INT_24_8, GL_DEPTH24_STENCIL8); | 2719 true, GL_DEPTH_STENCIL, GL_UNSIGNED_INT_24_8, GL_DEPTH24_STENCIL8); |
| 2692 ExpectValid(true, GL_DEPTH_STENCIL, GL_FLOAT_32_UNSIGNED_INT_24_8_REV, | 2720 ExpectValid(true, GL_DEPTH_STENCIL, GL_FLOAT_32_UNSIGNED_INT_24_8_REV, |
| 2693 GL_DEPTH32F_STENCIL8); | 2721 GL_DEPTH32F_STENCIL8); |
| 2694 | 2722 |
| 2695 ExpectInvalid(true, GL_RGB_INTEGER, GL_INT, GL_RGBA8); | 2723 ExpectInvalid(true, GL_RGB_INTEGER, GL_INT, GL_RGBA8); |
| 2696 } | 2724 } |
| 2697 | 2725 |
| 2698 } // namespace gles2 | 2726 } // namespace gles2 |
| 2699 } // namespace gpu | 2727 } // namespace gpu |
| OLD | NEW |