| Index: gpu/command_buffer/service/framebuffer_manager_unittest.cc
|
| ===================================================================
|
| --- gpu/command_buffer/service/framebuffer_manager_unittest.cc (revision 51426)
|
| +++ gpu/command_buffer/service/framebuffer_manager_unittest.cc (working copy)
|
| @@ -3,6 +3,7 @@
|
| // found in the LICENSE file.
|
|
|
| #include "gpu/command_buffer/service/framebuffer_manager.h"
|
| +#include "app/gfx/gl/gl_mock.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
|
|
| namespace gpu {
|
| @@ -12,14 +13,23 @@
|
| public:
|
| FramebufferManagerTest() {
|
| }
|
| + ~FramebufferManagerTest() {
|
| + manager_.Destroy(false);
|
| + }
|
|
|
| protected:
|
| virtual void SetUp() {
|
| + gl_.reset(new ::testing::StrictMock< ::gfx::MockGLInterface>());
|
| + ::gfx::GLInterface::SetGLInterface(gl_.get());
|
| }
|
|
|
| virtual void TearDown() {
|
| + ::gfx::GLInterface::SetGLInterface(NULL);
|
| + gl_.reset();
|
| }
|
|
|
| + // Use StrictMock to make 100% sure we know how GL will be called.
|
| + scoped_ptr< ::testing::StrictMock< ::gfx::MockGLInterface> > gl_;
|
| FramebufferManager manager_;
|
| };
|
|
|
| @@ -47,6 +57,24 @@
|
| EXPECT_TRUE(manager_.GetFramebufferInfo(kClient1Id) == NULL);
|
| }
|
|
|
| +TEST_F(FramebufferManagerTest, Destroy) {
|
| + const GLuint kClient1Id = 1;
|
| + const GLuint kService1Id = 11;
|
| + // Check we can create framebuffer.
|
| + manager_.CreateFramebufferInfo(kClient1Id, kService1Id);
|
| + // Check framebuffer got created.
|
| + FramebufferManager::FramebufferInfo* info1 =
|
| + manager_.GetFramebufferInfo(kClient1Id);
|
| + ASSERT_TRUE(info1 != NULL);
|
| + EXPECT_CALL(*gl_, DeleteFramebuffersEXT(1, ::testing::Pointee(kService1Id)))
|
| + .Times(1)
|
| + .RetiresOnSaturation();
|
| + manager_.Destroy(true);
|
| + // Check the resources were released.
|
| + info1 = manager_.GetFramebufferInfo(kClient1Id);
|
| + ASSERT_TRUE(info1 == NULL);
|
| +}
|
| +
|
| // TODO(gman): Write test for AttachRenderbuffer
|
|
|
| } // namespace gles2
|
|
|