| Index: gpu/command_buffer/service/buffer_manager_unittest.cc
|
| ===================================================================
|
| --- gpu/command_buffer/service/buffer_manager_unittest.cc (revision 51426)
|
| +++ gpu/command_buffer/service/buffer_manager_unittest.cc (working copy)
|
| @@ -3,6 +3,7 @@
|
| // found in the LICENSE file.
|
|
|
| #include "gpu/command_buffer/service/buffer_manager.h"
|
| +#include "app/gfx/gl/gl_mock.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
|
|
| namespace gpu {
|
| @@ -12,18 +13,27 @@
|
| public:
|
| BufferManagerTest() {
|
| }
|
| + ~BufferManagerTest() {
|
| + 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();
|
| }
|
|
|
| GLenum GetTarget(const BufferManager::BufferInfo* info) const {
|
| return info->target();
|
| }
|
|
|
| + // Use StrictMock to make 100% sure we know how GL will be called.
|
| + scoped_ptr< ::testing::StrictMock< ::gfx::MockGLInterface> > gl_;
|
| BufferManager manager_;
|
| };
|
|
|
| @@ -58,6 +68,24 @@
|
| EXPECT_TRUE(manager_.GetBufferInfo(kClientBuffer1Id) == NULL);
|
| }
|
|
|
| +TEST_F(BufferManagerTest, Destroy) {
|
| + const GLuint kClient1Id = 1;
|
| + const GLuint kService1Id = 11;
|
| + // Check we can create buffer.
|
| + manager_.CreateBufferInfo(kClient1Id, kService1Id);
|
| + // Check buffer got created.
|
| + BufferManager::BufferInfo* info1 =
|
| + manager_.GetBufferInfo(kClient1Id);
|
| + ASSERT_TRUE(info1 != NULL);
|
| + EXPECT_CALL(*gl_, DeleteBuffersARB(1, ::testing::Pointee(kService1Id)))
|
| + .Times(1)
|
| + .RetiresOnSaturation();
|
| + manager_.Destroy(true);
|
| + // Check the resources were released.
|
| + info1 = manager_.GetBufferInfo(kClient1Id);
|
| + ASSERT_TRUE(info1 == NULL);
|
| +}
|
| +
|
| TEST_F(BufferManagerTest, SetRange) {
|
| const GLuint kClientBufferId = 1;
|
| const GLuint kServiceBufferId = 11;
|
|
|