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

Side by Side Diff: cc/CCRenderSurfaceTest.cpp

Issue 10940002: Add wrapper container for a vector of OwnPtr<T> (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 3 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
« no previous file with comments | « cc/CCRenderPassTest.cpp ('k') | cc/CCScrollbarAnimationControllerLinearFadeTest.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 The Chromium Authors. All rights reserved. 1 // Copyright 2011 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 "config.h" 5 #include "config.h"
6 6
7 #include "CCRenderSurface.h" 7 #include "CCRenderSurface.h"
8 8
9 #include "CCAppendQuadsData.h" 9 #include "CCAppendQuadsData.h"
10 #include "CCLayerImpl.h" 10 #include "CCLayerImpl.h"
11 #include "CCRenderPassSink.h" 11 #include "CCRenderPassSink.h"
12 #include "CCSharedQuadState.h" 12 #include "CCSharedQuadState.h"
13 #include "CCSingleThreadProxy.h" 13 #include "CCSingleThreadProxy.h"
14 #include "MockCCQuadCuller.h" 14 #include "MockCCQuadCuller.h"
15 #include "cc/own_ptr_vector.h"
15 #include <gmock/gmock.h> 16 #include <gmock/gmock.h>
16 #include <gtest/gtest.h> 17 #include <gtest/gtest.h>
17 #include <public/WebTransformationMatrix.h> 18 #include <public/WebTransformationMatrix.h>
18 19
19 using namespace cc; 20 using namespace cc;
20 using WebKit::WebTransformationMatrix; 21 using WebKit::WebTransformationMatrix;
21 22
22 namespace { 23 namespace {
23 24
24 #define EXECUTE_AND_VERIFY_SURFACE_CHANGED(codeToTest) \ 25 #define EXECUTE_AND_VERIFY_SURFACE_CHANGED(codeToTest) \
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 101
101 CCQuadList quadList; 102 CCQuadList quadList;
102 CCSharedQuadStateList sharedStateList; 103 CCSharedQuadStateList sharedStateList;
103 MockCCQuadCuller mockQuadCuller(quadList, sharedStateList); 104 MockCCQuadCuller mockQuadCuller(quadList, sharedStateList);
104 CCAppendQuadsData appendQuadsData; 105 CCAppendQuadsData appendQuadsData;
105 106
106 bool forReplica = false; 107 bool forReplica = false;
107 renderSurface->appendQuads(mockQuadCuller, appendQuadsData, forReplica, CCRe nderPass::Id(2, 0)); 108 renderSurface->appendQuads(mockQuadCuller, appendQuadsData, forReplica, CCRe nderPass::Id(2, 0));
108 109
109 ASSERT_EQ(1u, sharedStateList.size()); 110 ASSERT_EQ(1u, sharedStateList.size());
110 CCSharedQuadState* sharedQuadState = sharedStateList[0].get(); 111 CCSharedQuadState* sharedQuadState = sharedStateList[0];
111 112
112 EXPECT_EQ(30, sharedQuadState->quadTransform.m41()); 113 EXPECT_EQ(30, sharedQuadState->quadTransform.m41());
113 EXPECT_EQ(40, sharedQuadState->quadTransform.m42()); 114 EXPECT_EQ(40, sharedQuadState->quadTransform.m42());
114 EXPECT_EQ(contentRect, IntRect(sharedQuadState->visibleContentRect)); 115 EXPECT_EQ(contentRect, IntRect(sharedQuadState->visibleContentRect));
115 EXPECT_EQ(1, sharedQuadState->opacity); 116 EXPECT_EQ(1, sharedQuadState->opacity);
116 EXPECT_FALSE(sharedQuadState->opaque); 117 EXPECT_FALSE(sharedQuadState->opaque);
117 } 118 }
118 119
119 class TestCCRenderPassSink : public CCRenderPassSink { 120 class TestCCRenderPassSink : public CCRenderPassSink {
120 public: 121 public:
121 virtual void appendRenderPass(PassOwnPtr<CCRenderPass> renderPass) OVERRIDE { m_renderPasses.append(renderPass); } 122 virtual void appendRenderPass(PassOwnPtr<CCRenderPass> renderPass) OVERRIDE { m_renderPasses.append(renderPass); }
122 123
123 const Vector<OwnPtr<CCRenderPass> >& renderPasses() const { return m_renderP asses; } 124 const OwnPtrVector<CCRenderPass>& renderPasses() const { return m_renderPass es; }
124 125
125 private: 126 private:
126 Vector<OwnPtr<CCRenderPass> > m_renderPasses; 127 OwnPtrVector<CCRenderPass> m_renderPasses;
127 128
128 }; 129 };
129 130
130 TEST(CCRenderSurfaceTest, sanityCheckSurfaceCreatesCorrectRenderPass) 131 TEST(CCRenderSurfaceTest, sanityCheckSurfaceCreatesCorrectRenderPass)
131 { 132 {
132 // This will fake that we are on the correct thread for testing purposes. 133 // This will fake that we are on the correct thread for testing purposes.
133 DebugScopedSetImplThread setImplThread; 134 DebugScopedSetImplThread setImplThread;
134 135
135 OwnPtr<CCLayerImpl> rootLayer = CCLayerImpl::create(1); 136 OwnPtr<CCLayerImpl> rootLayer = CCLayerImpl::create(1);
136 137
(...skipping 10 matching lines...) Expand all
147 origin.translate(30, 40); 148 origin.translate(30, 40);
148 149
149 renderSurface->setScreenSpaceTransform(origin); 150 renderSurface->setScreenSpaceTransform(origin);
150 renderSurface->setContentRect(contentRect); 151 renderSurface->setContentRect(contentRect);
151 152
152 TestCCRenderPassSink passSink; 153 TestCCRenderPassSink passSink;
153 154
154 renderSurface->appendRenderPasses(passSink); 155 renderSurface->appendRenderPasses(passSink);
155 156
156 ASSERT_EQ(1u, passSink.renderPasses().size()); 157 ASSERT_EQ(1u, passSink.renderPasses().size());
157 CCRenderPass* pass = passSink.renderPasses()[0].get(); 158 CCRenderPass* pass = passSink.renderPasses()[0];
158 159
159 EXPECT_EQ(CCRenderPass::Id(2, 0), pass->id()); 160 EXPECT_EQ(CCRenderPass::Id(2, 0), pass->id());
160 EXPECT_EQ(contentRect, pass->outputRect()); 161 EXPECT_EQ(contentRect, pass->outputRect());
161 EXPECT_EQ(origin, pass->transformToRootTarget()); 162 EXPECT_EQ(origin, pass->transformToRootTarget());
162 } 163 }
163 164
164 } // namespace 165 } // namespace
OLDNEW
« no previous file with comments | « cc/CCRenderPassTest.cpp ('k') | cc/CCScrollbarAnimationControllerLinearFadeTest.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698