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

Side by Side Diff: cc/layer_impl_unittest.cc

Issue 11529006: [cc] Fold more update calls into updateDrawProperties (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years 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 | « no previous file | cc/layer_tree_host_impl.h » ('j') | cc/layer_tree_host_impl.h » ('J')
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 "cc/layer_impl.h" 5 #include "cc/layer_impl.h"
6 6
7 #include "cc/single_thread_proxy.h" 7 #include "cc/single_thread_proxy.h"
8 #include "cc/test/fake_impl_proxy.h" 8 #include "cc/test/fake_impl_proxy.h"
9 #include "cc/test/fake_layer_tree_host_impl.h" 9 #include "cc/test/fake_layer_tree_host_impl.h"
10 #include "testing/gmock/include/gmock/gmock.h" 10 #include "testing/gmock/include/gmock/gmock.h"
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
46 #define EXECUTE_AND_VERIFY_ONLY_SURFACE_CHANGED(codeToTest) \ 46 #define EXECUTE_AND_VERIFY_ONLY_SURFACE_CHANGED(codeToTest) \
47 root->resetAllChangeTrackingForSubtree(); \ 47 root->resetAllChangeTrackingForSubtree(); \
48 codeToTest; \ 48 codeToTest; \
49 EXPECT_FALSE(root->layerPropertyChanged()); \ 49 EXPECT_FALSE(root->layerPropertyChanged()); \
50 EXPECT_FALSE(child->layerPropertyChanged()); \ 50 EXPECT_FALSE(child->layerPropertyChanged()); \
51 EXPECT_FALSE(grandChild->layerPropertyChanged()); \ 51 EXPECT_FALSE(grandChild->layerPropertyChanged()); \
52 EXPECT_TRUE(root->layerSurfacePropertyChanged()) 52 EXPECT_TRUE(root->layerSurfacePropertyChanged())
53 53
54 #define VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(codeToTest) \ 54 #define VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(codeToTest) \
55 root->resetAllChangeTrackingForSubtree(); \ 55 root->resetAllChangeTrackingForSubtree(); \
56 hostImpl.resetNeedsUpdateDrawPropertiesForTesting(); \ 56 hostImpl.forcePrepareToDraw(); \
57 codeToTest; \ 57 codeToTest; \
58 EXPECT_TRUE(hostImpl.needsUpdateDrawProperties()); 58 EXPECT_TRUE(hostImpl.needsUpdateDrawProperties());
59 59
60 #define VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(codeToTest) \ 60 #define VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(codeToTest) \
61 root->resetAllChangeTrackingForSubtree(); \ 61 root->resetAllChangeTrackingForSubtree(); \
62 hostImpl.resetNeedsUpdateDrawPropertiesForTesting(); \ 62 hostImpl.forcePrepareToDraw(); \
63 codeToTest; \ 63 codeToTest; \
64 EXPECT_FALSE(hostImpl.needsUpdateDrawProperties()); 64 EXPECT_FALSE(hostImpl.needsUpdateDrawProperties());
65 65
66 TEST(LayerImplTest, verifyLayerChangesAreTrackedProperly) 66 TEST(LayerImplTest, verifyLayerChangesAreTrackedProperly)
67 { 67 {
68 // 68 //
69 // This test checks that layerPropertyChanged() has the correct behavior. 69 // This test checks that layerPropertyChanged() has the correct behavior.
70 // 70 //
71 71
72 // The constructor on this will fake that we are on the correct thread. 72 // The constructor on this will fake that we are on the correct thread.
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
193 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setFilters(WebFilterOperations())) ; 193 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setFilters(WebFilterOperations())) ;
194 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setFilter(arbitraryFilter)); 194 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setFilter(arbitraryFilter));
195 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setFilter(arbitraryFilter)); 195 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setFilter(arbitraryFilter));
196 196
197 // Related scrolling functions. 197 // Related scrolling functions.
198 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setMaxScrollOffset(largeVector2d)) ; 198 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setMaxScrollOffset(largeVector2d)) ;
199 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setMaxScrollOffset(largeVector2 d)); 199 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setMaxScrollOffset(largeVector2 d));
200 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->scrollBy(arbitraryVector2d)); 200 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->scrollBy(arbitraryVector2d));
201 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->scrollBy(gfx::Vector2d())); 201 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->scrollBy(gfx::Vector2d()));
202 root->setScrollDelta(gfx::Vector2d(0, 0)); 202 root->setScrollDelta(gfx::Vector2d(0, 0));
203 hostImpl.resetNeedsUpdateDrawPropertiesForTesting(); 203 hostImpl.forcePrepareToDraw();
204 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setScrollDelta(arbitraryVector2d)) ; 204 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setScrollDelta(arbitraryVector2d)) ;
205 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setScrollDelta(arbitraryVector2 d)); 205 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setScrollDelta(arbitraryVector2 d));
206 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setScrollOffset(arbitraryVector2d) ); 206 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setScrollOffset(arbitraryVector2d) );
207 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setScrollOffset(arbitraryVector 2d)); 207 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setScrollOffset(arbitraryVector 2d));
208 208
209 // Unrelated functions, always set to new values, always set needs update. 209 // Unrelated functions, always set to new values, always set needs update.
210 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setAnchorPointZ(arbitraryNumber)); 210 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setAnchorPointZ(arbitraryNumber));
211 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setMaskLayer(LayerImpl::create(hos tImpl.activeTree(), 4))); 211 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setMaskLayer(LayerImpl::create(hos tImpl.activeTree(), 4)));
212 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setMasksToBounds(true)); 212 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setMasksToBounds(true));
213 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setContentsOpaque(true)); 213 VERIFY_NEEDS_UPDATE_DRAW_PROPERTIES(root->setContentsOpaque(true));
(...skipping 29 matching lines...) Expand all
243 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setBackgroundColor(SK_ColorGRAY )); 243 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setBackgroundColor(SK_ColorGRAY ));
244 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setBackgroundFilters(arbitraryF ilters)); 244 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setBackgroundFilters(arbitraryF ilters));
245 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setOpacity(arbitraryNumber)); 245 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setOpacity(arbitraryNumber));
246 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setTransform(arbitraryTransform )); 246 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setTransform(arbitraryTransform ));
247 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setSublayerTransform(arbitraryT ransform)); 247 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setSublayerTransform(arbitraryT ransform));
248 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setBounds(arbitrarySize)); 248 VERIFY_NO_NEEDS_UPDATE_DRAW_PROPERTIES(root->setBounds(arbitrarySize));
249 } 249 }
250 250
251 } // namespace 251 } // namespace
252 } // namespace cc 252 } // namespace cc
OLDNEW
« no previous file with comments | « no previous file | cc/layer_tree_host_impl.h » ('j') | cc/layer_tree_host_impl.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698