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/error_state_mock.h" | 5 #include "gpu/command_buffer/service/error_state_mock.h" |
6 #include "gpu/command_buffer/service/framebuffer_manager.h" | 6 #include "gpu/command_buffer/service/framebuffer_manager.h" |
7 #include "gpu/command_buffer/service/feature_info.h" | 7 #include "gpu/command_buffer/service/feature_info.h" |
8 #include "gpu/command_buffer/service/gpu_service_test.h" | 8 #include "gpu/command_buffer/service/gpu_service_test.h" |
9 #include "gpu/command_buffer/service/renderbuffer_manager.h" | 9 #include "gpu/command_buffer/service/renderbuffer_manager.h" |
10 #include "gpu/command_buffer/service/test_helper.h" | 10 #include "gpu/command_buffer/service/test_helper.h" |
(...skipping 16 matching lines...) Expand all Loading... |
27 const GLint kMaxSamples = 4; | 27 const GLint kMaxSamples = 4; |
28 const uint32 kMaxDrawBuffers = 16; | 28 const uint32 kMaxDrawBuffers = 16; |
29 const uint32 kMaxColorAttachments = 16; | 29 const uint32 kMaxColorAttachments = 16; |
30 const bool kUseDefaultTextures = false; | 30 const bool kUseDefaultTextures = false; |
31 | 31 |
32 } // namespace | 32 } // namespace |
33 | 33 |
34 class FramebufferManagerTest : public GpuServiceTest { | 34 class FramebufferManagerTest : public GpuServiceTest { |
35 public: | 35 public: |
36 FramebufferManagerTest() | 36 FramebufferManagerTest() |
37 : manager_(1, 1, ContextGroup::CONTEXT_TYPE_UNDEFINED, NULL), | 37 : manager_(1, 1, CONTEXT_TYPE_OPENGLES2, NULL), |
38 feature_info_(new FeatureInfo()) { | 38 feature_info_(new FeatureInfo()) { |
39 texture_manager_.reset(new TextureManager(NULL, | 39 texture_manager_.reset(new TextureManager(NULL, |
40 feature_info_.get(), | 40 feature_info_.get(), |
41 kMaxTextureSize, | 41 kMaxTextureSize, |
42 kMaxCubemapSize, | 42 kMaxCubemapSize, |
43 kMaxRectangleTextureSize, | 43 kMaxRectangleTextureSize, |
44 kMax3DTextureSize, | 44 kMax3DTextureSize, |
45 kUseDefaultTextures)); | 45 kUseDefaultTextures)); |
46 renderbuffer_manager_.reset(new RenderbufferManager(NULL, | 46 renderbuffer_manager_.reset(new RenderbufferManager(NULL, |
47 kMaxRenderbufferSize, | 47 kMaxRenderbufferSize, |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
103 // Check the resources were released. | 103 // Check the resources were released. |
104 framebuffer1 = manager_.GetFramebuffer(kClient1Id); | 104 framebuffer1 = manager_.GetFramebuffer(kClient1Id); |
105 ASSERT_TRUE(framebuffer1 == NULL); | 105 ASSERT_TRUE(framebuffer1 == NULL); |
106 } | 106 } |
107 | 107 |
108 class FramebufferInfoTestBase : public GpuServiceTest { | 108 class FramebufferInfoTestBase : public GpuServiceTest { |
109 public: | 109 public: |
110 static const GLuint kClient1Id = 1; | 110 static const GLuint kClient1Id = 1; |
111 static const GLuint kService1Id = 11; | 111 static const GLuint kService1Id = 11; |
112 | 112 |
113 explicit FramebufferInfoTestBase(ContextGroup::ContextType context_type) | 113 explicit FramebufferInfoTestBase(ContextType context_type) |
114 : manager_(kMaxDrawBuffers, | 114 : manager_(kMaxDrawBuffers, |
115 kMaxColorAttachments, | 115 kMaxColorAttachments, |
116 context_type, | 116 context_type, |
117 new FramebufferCompletenessCache), | 117 new FramebufferCompletenessCache), |
118 feature_info_(new FeatureInfo()) { | 118 feature_info_(new FeatureInfo()) { |
119 texture_manager_.reset(new TextureManager(NULL, | 119 texture_manager_.reset(new TextureManager(NULL, |
120 feature_info_.get(), | 120 feature_info_.get(), |
121 kMaxTextureSize, | 121 kMaxTextureSize, |
122 kMaxCubemapSize, | 122 kMaxCubemapSize, |
123 kMaxRectangleTextureSize, | 123 kMaxRectangleTextureSize, |
(...skipping 29 matching lines...) Expand all Loading... |
153 FramebufferManager manager_; | 153 FramebufferManager manager_; |
154 Framebuffer* framebuffer_; | 154 Framebuffer* framebuffer_; |
155 scoped_refptr<FeatureInfo> feature_info_; | 155 scoped_refptr<FeatureInfo> feature_info_; |
156 scoped_ptr<TextureManager> texture_manager_; | 156 scoped_ptr<TextureManager> texture_manager_; |
157 scoped_ptr<RenderbufferManager> renderbuffer_manager_; | 157 scoped_ptr<RenderbufferManager> renderbuffer_manager_; |
158 scoped_ptr<MockErrorState> error_state_; | 158 scoped_ptr<MockErrorState> error_state_; |
159 }; | 159 }; |
160 | 160 |
161 class FramebufferInfoTest : public FramebufferInfoTestBase { | 161 class FramebufferInfoTest : public FramebufferInfoTestBase { |
162 public: | 162 public: |
163 FramebufferInfoTest() | 163 FramebufferInfoTest() : FramebufferInfoTestBase(CONTEXT_TYPE_OPENGLES2) {} |
164 : FramebufferInfoTestBase(ContextGroup::CONTEXT_TYPE_UNDEFINED) { | |
165 } | |
166 }; | 164 }; |
167 | 165 |
168 // GCC requires these declarations, but MSVC requires they not be present | 166 // GCC requires these declarations, but MSVC requires they not be present |
169 #ifndef COMPILER_MSVC | 167 #ifndef COMPILER_MSVC |
170 const GLuint FramebufferInfoTestBase::kClient1Id; | 168 const GLuint FramebufferInfoTestBase::kClient1Id; |
171 const GLuint FramebufferInfoTestBase::kService1Id; | 169 const GLuint FramebufferInfoTestBase::kService1Id; |
172 #endif | 170 #endif |
173 | 171 |
174 TEST_F(FramebufferInfoTest, Basic) { | 172 TEST_F(FramebufferInfoTest, Basic) { |
175 EXPECT_EQ(kService1Id, framebuffer_->service_id()); | 173 EXPECT_EQ(kService1Id, framebuffer_->service_id()); |
(...skipping 722 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
898 GL_NO_ERROR); | 896 GL_NO_ERROR); |
899 framebuffer_->GetStatus(texture_manager_.get(), GL_READ_FRAMEBUFFER); | 897 framebuffer_->GetStatus(texture_manager_.get(), GL_READ_FRAMEBUFFER); |
900 | 898 |
901 // Check Unbinding does not call CheckFramebufferStatus | 899 // Check Unbinding does not call CheckFramebufferStatus |
902 framebuffer_->UnbindRenderbuffer(GL_RENDERBUFFER, renderbuffer1); | 900 framebuffer_->UnbindRenderbuffer(GL_RENDERBUFFER, renderbuffer1); |
903 framebuffer_->GetStatus(texture_manager_.get(), GL_READ_FRAMEBUFFER); | 901 framebuffer_->GetStatus(texture_manager_.get(), GL_READ_FRAMEBUFFER); |
904 } | 902 } |
905 | 903 |
906 class FramebufferInfoES3Test : public FramebufferInfoTestBase { | 904 class FramebufferInfoES3Test : public FramebufferInfoTestBase { |
907 public: | 905 public: |
908 FramebufferInfoES3Test() | 906 FramebufferInfoES3Test() : FramebufferInfoTestBase(CONTEXT_TYPE_WEBGL2) {} |
909 : FramebufferInfoTestBase(ContextGroup::CONTEXT_TYPE_WEBGL2) { | |
910 } | |
911 }; | 907 }; |
912 | 908 |
913 TEST_F(FramebufferInfoES3Test, DifferentDimensions) { | 909 TEST_F(FramebufferInfoES3Test, DifferentDimensions) { |
914 const GLuint kRenderbufferClient1Id = 33; | 910 const GLuint kRenderbufferClient1Id = 33; |
915 const GLuint kRenderbufferService1Id = 333; | 911 const GLuint kRenderbufferService1Id = 333; |
916 const GLuint kRenderbufferClient2Id = 34; | 912 const GLuint kRenderbufferClient2Id = 34; |
917 const GLuint kRenderbufferService2Id = 334; | 913 const GLuint kRenderbufferService2Id = 334; |
918 const GLsizei kWidth1 = 16; | 914 const GLsizei kWidth1 = 16; |
919 const GLsizei kHeight1 = 32; | 915 const GLsizei kHeight1 = 32; |
920 const GLenum kFormat1 = GL_RGBA4; | 916 const GLenum kFormat1 = GL_RGBA4; |
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
971 renderbuffer_manager_->GetRenderbuffer(kRenderbufferClientId); | 967 renderbuffer_manager_->GetRenderbuffer(kRenderbufferClientId); |
972 ASSERT_TRUE(renderbuffer != NULL); | 968 ASSERT_TRUE(renderbuffer != NULL); |
973 framebuffer_->AttachRenderbuffer(GL_COLOR_ATTACHMENT1, renderbuffer); | 969 framebuffer_->AttachRenderbuffer(GL_COLOR_ATTACHMENT1, renderbuffer); |
974 EXPECT_TRUE(framebuffer_->GetReadBufferAttachment()); | 970 EXPECT_TRUE(framebuffer_->GetReadBufferAttachment()); |
975 } | 971 } |
976 | 972 |
977 } // namespace gles2 | 973 } // namespace gles2 |
978 } // namespace gpu | 974 } // namespace gpu |
979 | 975 |
980 | 976 |
OLD | NEW |