diff options
author | Simon Hausmann <simon.hausmann@nokia.com> | 2012-06-27 09:28:46 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@nokia.com> | 2012-06-27 09:28:46 +0200 |
commit | 6668b07fcd51f86be243b9e08e667224e30c0cf8 (patch) | |
tree | 64f466e09b68a77ae1156c0d35cd5b95e18a34ca /Source/WebKit/chromium/tests/FakeGraphicsContext3DTest.cpp | |
parent | e7923d9de38974f0c6fb7646c898a6ea618261e8 (diff) | |
download | qtwebkit-6668b07fcd51f86be243b9e08e667224e30c0cf8.tar.gz |
Imported WebKit commit 26cd9bd8ab0471ffe987c9b60368f63dc0f1f31b (http://svn.webkit.org/repository/webkit/trunk@121325)
New snapshot with more Windows build fixes
Diffstat (limited to 'Source/WebKit/chromium/tests/FakeGraphicsContext3DTest.cpp')
-rw-r--r-- | Source/WebKit/chromium/tests/FakeGraphicsContext3DTest.cpp | 71 |
1 files changed, 3 insertions, 68 deletions
diff --git a/Source/WebKit/chromium/tests/FakeGraphicsContext3DTest.cpp b/Source/WebKit/chromium/tests/FakeGraphicsContext3DTest.cpp index 71cb8bab1..720630e17 100644 --- a/Source/WebKit/chromium/tests/FakeGraphicsContext3DTest.cpp +++ b/Source/WebKit/chromium/tests/FakeGraphicsContext3DTest.cpp @@ -25,10 +25,7 @@ #include "config.h" -#include "GraphicsContext3D.h" - #include "FakeWebGraphicsContext3D.h" -#include "GraphicsContext3DPrivate.h" #include <gmock/gmock.h> #include <gtest/gtest.h> @@ -36,57 +33,6 @@ using namespace WebCore; using namespace WebKit; -class FrameCountingContext : public FakeWebGraphicsContext3D { -public: - FrameCountingContext() : m_frame(0) { } - - // This method would normally do a glSwapBuffers under the hood. - virtual void prepareTexture() { m_frame++; } - - int frameCount() { return m_frame; } - -private: - int m_frame; -}; - -TEST(FakeGraphicsContext3DTest, CanOverrideManually) -{ - GraphicsContext3D::Attributes attrs; - RefPtr<GraphicsContext3D> context = GraphicsContext3DPrivate::createGraphicsContextFromWebContext(adoptPtr(new FrameCountingContext()), GraphicsContext3D::RenderDirectlyToHostWindow); - FrameCountingContext& mockContext = *static_cast<FrameCountingContext*>(GraphicsContext3DPrivate::extractWebGraphicsContext3D(context.get())); - - for (int i = 0; i < 10; i++) { - context->clearColor(0, 0, 0, 1); - context->prepareTexture(); - } - context->finish(); - - EXPECT_EQ(10, mockContext.frameCount()); -} - - -class GMockContext : public FakeWebGraphicsContext3D { -public: - MOCK_METHOD0(getError, WGC3Denum()); -}; - -TEST(FakeGraphicsContext3DTest, CanUseGMock) -{ - GraphicsContext3D::Attributes attrs; - RefPtr<GraphicsContext3D> context = GraphicsContext3DPrivate::createGraphicsContextFromWebContext(adoptPtr(new GMockContext()), GraphicsContext3D::RenderDirectlyToHostWindow); - GMockContext& mockContext = *static_cast<GMockContext*>(GraphicsContext3DPrivate::extractWebGraphicsContext3D(context.get())); - - EXPECT_CALL(mockContext, getError()) - .WillRepeatedly(testing::Return(314)); - - // It's OK to call methods GMock doesn't know about. - context->makeContextCurrent(); - - // Check that the mocked method is returning as intended. - for (int i = 0; i < 10; i++) - EXPECT_EQ((int)context->getError(), 314); -} - class ContextThatCountsMakeCurrents : public FakeWebGraphicsContext3D { public: ContextThatCountsMakeCurrents() : m_makeCurrentCount(0) { } @@ -101,21 +47,10 @@ private: }; -TEST(FakeGraphicsContext3DTest, ContextForThisThreadShouldNotMakeCurrent) -{ - GraphicsContext3D::Attributes attrs; - RefPtr<GraphicsContext3D> context = GraphicsContext3DPrivate::createGraphicsContextFromWebContext(adoptPtr(new ContextThatCountsMakeCurrents()), GraphicsContext3D::RenderDirectlyToHostWindow); - EXPECT_TRUE(context); - ContextThatCountsMakeCurrents& mockContext = *static_cast<ContextThatCountsMakeCurrents*>(GraphicsContext3DPrivate::extractWebGraphicsContext3D(context.get())); - EXPECT_EQ(0, mockContext.makeCurrentCount()); -} - -TEST(FakeGraphicsContext3DTest, ContextForAnotherThreadShouldNotMakeCurrent) +TEST(FakeGraphicsContext3DTest, ContextCreationShouldNotMakeCurrent) { - GraphicsContext3D::Attributes attrs; - RefPtr<GraphicsContext3D> context = GraphicsContext3DPrivate::createGraphicsContextFromWebContext(adoptPtr(new ContextThatCountsMakeCurrents()), GraphicsContext3D::RenderDirectlyToHostWindow); + OwnPtr<ContextThatCountsMakeCurrents> context(adoptPtr(new ContextThatCountsMakeCurrents)); EXPECT_TRUE(context); - ContextThatCountsMakeCurrents& mockContext = *static_cast<ContextThatCountsMakeCurrents*>(GraphicsContext3DPrivate::extractWebGraphicsContext3D(context.get())); - EXPECT_EQ(0, mockContext.makeCurrentCount()); + EXPECT_EQ(0, context->makeCurrentCount()); } |