Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(611)

Side by Side Diff: gpu/command_buffer/service/framebuffer_manager_unittest.cc

Issue 331293005: Revert of gpu: Add base class for gpu service tests (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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"
9 #include "gpu/command_buffer/service/renderbuffer_manager.h" 8 #include "gpu/command_buffer/service/renderbuffer_manager.h"
10 #include "gpu/command_buffer/service/test_helper.h" 9 #include "gpu/command_buffer/service/test_helper.h"
11 #include "gpu/command_buffer/service/texture_manager.h" 10 #include "gpu/command_buffer/service/texture_manager.h"
12 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
13 #include "ui/gl/gl_mock.h" 12 #include "ui/gl/gl_mock.h"
14 13
15 using ::testing::_; 14 using ::testing::_;
16 using ::testing::Return; 15 using ::testing::Return;
17 16
18 namespace gpu { 17 namespace gpu {
19 namespace gles2 { 18 namespace gles2 {
20 namespace { 19 namespace {
21 20
22 const GLint kMaxTextureSize = 64; 21 const GLint kMaxTextureSize = 64;
23 const GLint kMaxCubemapSize = 64; 22 const GLint kMaxCubemapSize = 64;
24 const GLint kMaxRenderbufferSize = 64; 23 const GLint kMaxRenderbufferSize = 64;
25 const GLint kMaxSamples = 4; 24 const GLint kMaxSamples = 4;
26 const uint32 kMaxDrawBuffers = 16; 25 const uint32 kMaxDrawBuffers = 16;
27 const uint32 kMaxColorAttachments = 16; 26 const uint32 kMaxColorAttachments = 16;
28 const bool kDepth24Supported = false; 27 const bool kDepth24Supported = false;
29 const bool kUseDefaultTextures = false; 28 const bool kUseDefaultTextures = false;
30 29
31 } // namespace 30 } // namespace
32 31
33 class FramebufferManagerTest : public GpuServiceTest { 32 class FramebufferManagerTest : public testing::Test {
34 public: 33 public:
35 FramebufferManagerTest() 34 FramebufferManagerTest()
36 : manager_(1, 1), 35 : manager_(1, 1),
37 texture_manager_(NULL, 36 texture_manager_(NULL,
38 new FeatureInfo(), 37 new FeatureInfo(),
39 kMaxTextureSize, 38 kMaxTextureSize,
40 kMaxCubemapSize, 39 kMaxCubemapSize,
41 kUseDefaultTextures), 40 kUseDefaultTextures),
42 renderbuffer_manager_(NULL, 41 renderbuffer_manager_(NULL,
43 kMaxRenderbufferSize, 42 kMaxRenderbufferSize,
44 kMaxSamples, 43 kMaxSamples,
45 kDepth24Supported) {} 44 kDepth24Supported) {}
46 virtual ~FramebufferManagerTest() { 45 virtual ~FramebufferManagerTest() {
47 manager_.Destroy(false); 46 manager_.Destroy(false);
48 texture_manager_.Destroy(false); 47 texture_manager_.Destroy(false);
49 renderbuffer_manager_.Destroy(false); 48 renderbuffer_manager_.Destroy(false);
50 } 49 }
51 50
52 protected: 51 protected:
52 virtual void SetUp() {
53 gl_.reset(new ::testing::StrictMock< ::gfx::MockGLInterface>());
54 ::gfx::MockGLInterface::SetGLInterface(gl_.get());
55 }
53 56
57 virtual void TearDown() {
58 ::gfx::MockGLInterface::SetGLInterface(NULL);
59 gl_.reset();
60 }
61
62 // Use StrictMock to make 100% sure we know how GL will be called.
63 scoped_ptr< ::testing::StrictMock< ::gfx::MockGLInterface> > gl_;
54 FramebufferManager manager_; 64 FramebufferManager manager_;
55 TextureManager texture_manager_; 65 TextureManager texture_manager_;
56 RenderbufferManager renderbuffer_manager_; 66 RenderbufferManager renderbuffer_manager_;
57 }; 67 };
58 68
59 TEST_F(FramebufferManagerTest, Basic) { 69 TEST_F(FramebufferManagerTest, Basic) {
60 const GLuint kClient1Id = 1; 70 const GLuint kClient1Id = 1;
61 const GLuint kService1Id = 11; 71 const GLuint kService1Id = 11;
62 const GLuint kClient2Id = 2; 72 const GLuint kClient2Id = 2;
63 // Check we can create framebuffer. 73 // Check we can create framebuffer.
(...skipping 29 matching lines...) Expand all
93 ASSERT_TRUE(framebuffer1 != NULL); 103 ASSERT_TRUE(framebuffer1 != NULL);
94 EXPECT_CALL(*gl_, DeleteFramebuffersEXT(1, ::testing::Pointee(kService1Id))) 104 EXPECT_CALL(*gl_, DeleteFramebuffersEXT(1, ::testing::Pointee(kService1Id)))
95 .Times(1) 105 .Times(1)
96 .RetiresOnSaturation(); 106 .RetiresOnSaturation();
97 manager_.Destroy(true); 107 manager_.Destroy(true);
98 // Check the resources were released. 108 // Check the resources were released.
99 framebuffer1 = manager_.GetFramebuffer(kClient1Id); 109 framebuffer1 = manager_.GetFramebuffer(kClient1Id);
100 ASSERT_TRUE(framebuffer1 == NULL); 110 ASSERT_TRUE(framebuffer1 == NULL);
101 } 111 }
102 112
103 class FramebufferInfoTest : public GpuServiceTest { 113 class FramebufferInfoTest : public testing::Test {
104 public: 114 public:
105 static const GLuint kClient1Id = 1; 115 static const GLuint kClient1Id = 1;
106 static const GLuint kService1Id = 11; 116 static const GLuint kService1Id = 11;
107 117
108 FramebufferInfoTest() 118 FramebufferInfoTest()
109 : manager_(kMaxDrawBuffers, kMaxColorAttachments), 119 : manager_(kMaxDrawBuffers, kMaxColorAttachments),
110 feature_info_(new FeatureInfo()), 120 feature_info_(new FeatureInfo()),
111 renderbuffer_manager_(NULL, kMaxRenderbufferSize, kMaxSamples, 121 renderbuffer_manager_(NULL, kMaxRenderbufferSize, kMaxSamples,
112 kDepth24Supported) { 122 kDepth24Supported) {
113 texture_manager_.reset(new TextureManager(NULL, 123 texture_manager_.reset(new TextureManager(NULL,
114 feature_info_.get(), 124 feature_info_.get(),
115 kMaxTextureSize, 125 kMaxTextureSize,
116 kMaxCubemapSize, 126 kMaxCubemapSize,
117 kUseDefaultTextures)); 127 kUseDefaultTextures));
118 } 128 }
119 virtual ~FramebufferInfoTest() { 129 virtual ~FramebufferInfoTest() {
120 manager_.Destroy(false); 130 manager_.Destroy(false);
121 texture_manager_->Destroy(false); 131 texture_manager_->Destroy(false);
122 renderbuffer_manager_.Destroy(false); 132 renderbuffer_manager_.Destroy(false);
123 } 133 }
124 134
125 protected: 135 protected:
126 virtual void SetUp() { 136 virtual void SetUp() {
127 InitializeContext("", ""); 137 InitializeContext("", "");
128 } 138 }
129 139
130 void InitializeContext(const char* gl_version, const char* extensions) { 140 void InitializeContext(const char* gl_version, const char* extensions) {
131 GpuServiceTest::SetUp(); 141 gl_.reset(new ::testing::StrictMock< ::gfx::MockGLInterface>());
142 ::gfx::MockGLInterface::SetGLInterface(gl_.get());
132 TestHelper::SetupFeatureInfoInitExpectationsWithGLVersion(gl_.get(), 143 TestHelper::SetupFeatureInfoInitExpectationsWithGLVersion(gl_.get(),
133 extensions, "", gl_version); 144 extensions, "", gl_version);
134 feature_info_->Initialize(); 145 feature_info_->Initialize();
135 manager_.CreateFramebuffer(kClient1Id, kService1Id); 146 manager_.CreateFramebuffer(kClient1Id, kService1Id);
136 error_state_.reset(new ::testing::StrictMock<gles2::MockErrorState>()); 147 error_state_.reset(new ::testing::StrictMock<gles2::MockErrorState>());
137 framebuffer_ = manager_.GetFramebuffer(kClient1Id); 148 framebuffer_ = manager_.GetFramebuffer(kClient1Id);
138 ASSERT_TRUE(framebuffer_ != NULL); 149 ASSERT_TRUE(framebuffer_ != NULL);
139 } 150 }
140 151
152 virtual void TearDown() {
153 ::gfx::MockGLInterface::SetGLInterface(NULL);
154 gl_.reset();
155 }
156
157 // Use StrictMock to make 100% sure we know how GL will be called.
158 scoped_ptr< ::testing::StrictMock< ::gfx::MockGLInterface> > gl_;
141 FramebufferManager manager_; 159 FramebufferManager manager_;
142 Framebuffer* framebuffer_; 160 Framebuffer* framebuffer_;
143 scoped_refptr<FeatureInfo> feature_info_; 161 scoped_refptr<FeatureInfo> feature_info_;
144 scoped_ptr<TextureManager> texture_manager_; 162 scoped_ptr<TextureManager> texture_manager_;
145 RenderbufferManager renderbuffer_manager_; 163 RenderbufferManager renderbuffer_manager_;
146 scoped_ptr<MockErrorState> error_state_; 164 scoped_ptr<MockErrorState> error_state_;
147 }; 165 };
148 166
149 // GCC requires these declarations, but MSVC requires they not be present 167 // GCC requires these declarations, but MSVC requires they not be present
150 #ifndef COMPILER_MSVC 168 #ifndef COMPILER_MSVC
(...skipping 813 matching lines...) Expand 10 before | Expand all | Expand 10 after
964 .WillOnce(Return(GL_FRAMEBUFFER_COMPLETE)) 982 .WillOnce(Return(GL_FRAMEBUFFER_COMPLETE))
965 .RetiresOnSaturation(); 983 .RetiresOnSaturation();
966 } 984 }
967 framebuffer_->GetStatus(texture_manager_.get(), GL_READ_FRAMEBUFFER); 985 framebuffer_->GetStatus(texture_manager_.get(), GL_READ_FRAMEBUFFER);
968 } 986 }
969 987
970 } // namespace gles2 988 } // namespace gles2
971 } // namespace gpu 989 } // namespace gpu
972 990
973 991
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/feature_info_unittest.cc ('k') | gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698