diff options
Diffstat (limited to 'gfx/angle/src/libANGLE/ResourceManager_unittest.cpp')
-rwxr-xr-x | gfx/angle/src/libANGLE/ResourceManager_unittest.cpp | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/gfx/angle/src/libANGLE/ResourceManager_unittest.cpp b/gfx/angle/src/libANGLE/ResourceManager_unittest.cpp new file mode 100755 index 000000000..a9dff145b --- /dev/null +++ b/gfx/angle/src/libANGLE/ResourceManager_unittest.cpp @@ -0,0 +1,67 @@ +// +// Copyright 2015 The ANGLE Project Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +// +// Unit tests for ResourceManager. +// + +#include <gmock/gmock.h> +#include <gtest/gtest.h> + +#include "libANGLE/ResourceManager.h" +#include "tests/angle_unittests_utils.h" + +using namespace rx; +using namespace gl; + +using ::testing::_; + +namespace +{ + +class ResourceManagerTest : public testing::Test +{ + protected: + void SetUp() override + { + mResourceManager = new ResourceManager(); + } + + void TearDown() override + { + SafeDelete(mResourceManager); + } + + MockGLFactory mMockFactory; + ResourceManager *mResourceManager; +}; + +TEST_F(ResourceManagerTest, ReallocateBoundTexture) +{ + EXPECT_CALL(mMockFactory, createTexture(_)).Times(1).RetiresOnSaturation(); + + mResourceManager->checkTextureAllocation(&mMockFactory, 1, GL_TEXTURE_2D); + GLuint newTexture = mResourceManager->createTexture(); + EXPECT_NE(1u, newTexture); +} + +TEST_F(ResourceManagerTest, ReallocateBoundBuffer) +{ + EXPECT_CALL(mMockFactory, createBuffer(_)).Times(1).RetiresOnSaturation(); + + mResourceManager->checkBufferAllocation(&mMockFactory, 1); + GLuint newBuffer = mResourceManager->createBuffer(); + EXPECT_NE(1u, newBuffer); +} + +TEST_F(ResourceManagerTest, ReallocateBoundRenderbuffer) +{ + EXPECT_CALL(mMockFactory, createRenderbuffer()).Times(1).RetiresOnSaturation(); + + mResourceManager->checkRenderbufferAllocation(&mMockFactory, 1); + GLuint newRenderbuffer = mResourceManager->createRenderbuffer(); + EXPECT_NE(1u, newRenderbuffer); +} + +} // anonymous namespace |