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

Side by Side Diff: third_party/WebKit/Source/platform/graphics/paint/PaintChunkerTest.cpp

Issue 2428513004: [SPv2] Create effect nodes for CSS filter (Closed)
Patch Set: Created 4 years, 2 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "platform/graphics/paint/PaintChunker.h" 5 #include "platform/graphics/paint/PaintChunker.h"
6 6
7 #include "platform/RuntimeEnabledFeatures.h" 7 #include "platform/RuntimeEnabledFeatures.h"
8 #include "testing/gmock/include/gmock/gmock.h" 8 #include "testing/gmock/include/gmock/gmock.h"
9 #include "testing/gtest/include/gtest/gtest.h" 9 #include "testing/gtest/include/gtest/gtest.h"
10 10
11 using testing::ElementsAre; 11 using testing::ElementsAre;
12 12
13 namespace blink { 13 namespace blink {
14 namespace { 14 namespace {
15 15
16 // TODO(crbug.com/629946): The tests fail mysteriously on some Windows debug 16 // TODO(crbug.com/629946): The tests fail mysteriously on some Windows debug
17 // bots. 17 // bots.
18 #if defined(NDEBUG) || !OS(WIN) 18 #if defined(NDEBUG) || !OS(WIN)
19 19
20 static PaintChunkProperties rootPaintChunkProperties() { 20 TransformPaintPropertyNode* dummyRootTransform() {
21 DEFINE_STATIC_REF(TransformPaintPropertyNode, rootTransform,
22 (TransformPaintPropertyNode::create(
23 nullptr, TransformationMatrix(), FloatPoint3D())));
24 return rootTransform;
25 }
26
27 ClipPaintPropertyNode* dummyRootClip() {
28 DEFINE_STATIC_REF(ClipPaintPropertyNode, rootClip,
29 (ClipPaintPropertyNode::create(
30 nullptr, dummyRootTransform(),
31 FloatRoundedRect(LayoutRect::infiniteIntRect()))));
32 return rootClip;
33 }
34
35 EffectPaintPropertyNode* dummyRootEffect() {
36 DEFINE_STATIC_REF(EffectPaintPropertyNode, rootEffect,
37 (EffectPaintPropertyNode::create(nullptr, dummyRootTransform (), dummyRootClip(), 1.0, CompositorFilterOperations())));
38 return rootEffect;
39 }
40
41 PaintChunkProperties rootPaintChunkProperties() {
21 return PaintChunkProperties(); 42 return PaintChunkProperties();
22 } 43 }
23 44
24 class PaintChunkerTest : public testing::Test { 45 class PaintChunkerTest : public testing::Test {
25 protected: 46 protected:
26 void SetUp() override { 47 void SetUp() override {
27 RuntimeEnabledFeatures::setSlimmingPaintV2Enabled(true); 48 RuntimeEnabledFeatures::setSlimmingPaintV2Enabled(true);
28 } 49 }
29 50
30 void TearDown() override { m_featuresBackup.restore(); } 51 void TearDown() override { m_featuresBackup.restore(); }
(...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after
141 PaintChunkProperties simpleTransform; 162 PaintChunkProperties simpleTransform;
142 simpleTransform.transform = TransformPaintPropertyNode::create( 163 simpleTransform.transform = TransformPaintPropertyNode::create(
143 nullptr, TransformationMatrix(0, 0, 0, 0, 0, 0), FloatPoint3D(9, 8, 7)); 164 nullptr, TransformationMatrix(0, 0, 0, 0, 0, 0), FloatPoint3D(9, 8, 7));
144 chunker.updateCurrentPaintChunkProperties(nullptr, simpleTransform); 165 chunker.updateCurrentPaintChunkProperties(nullptr, simpleTransform);
145 chunker.incrementDisplayItemIndex(NormalTestDisplayItem()); 166 chunker.incrementDisplayItemIndex(NormalTestDisplayItem());
146 chunker.incrementDisplayItemIndex(NormalTestDisplayItem()); 167 chunker.incrementDisplayItemIndex(NormalTestDisplayItem());
147 168
148 PaintChunkProperties simpleTransformAndEffect; 169 PaintChunkProperties simpleTransformAndEffect;
149 simpleTransformAndEffect.transform = simpleTransform.transform; 170 simpleTransformAndEffect.transform = simpleTransform.transform;
150 simpleTransformAndEffect.effect = 171 simpleTransformAndEffect.effect =
151 EffectPaintPropertyNode::create(nullptr, 0.5f); 172 EffectPaintPropertyNode::create(dummyRootEffect(), dummyRootTransform(), d ummyRootClip(), 0.5f, CompositorFilterOperations());
152 chunker.updateCurrentPaintChunkProperties(nullptr, simpleTransformAndEffect); 173 chunker.updateCurrentPaintChunkProperties(nullptr, simpleTransformAndEffect);
153 chunker.incrementDisplayItemIndex(NormalTestDisplayItem()); 174 chunker.incrementDisplayItemIndex(NormalTestDisplayItem());
154 chunker.incrementDisplayItemIndex(NormalTestDisplayItem()); 175 chunker.incrementDisplayItemIndex(NormalTestDisplayItem());
155 176
156 PaintChunkProperties simpleTransformAndEffectWithUpdatedTransform; 177 PaintChunkProperties simpleTransformAndEffectWithUpdatedTransform;
157 simpleTransformAndEffectWithUpdatedTransform.transform = 178 simpleTransformAndEffectWithUpdatedTransform.transform =
158 TransformPaintPropertyNode::create(nullptr, 179 TransformPaintPropertyNode::create(nullptr,
159 TransformationMatrix(1, 1, 0, 0, 0, 0), 180 TransformationMatrix(1, 1, 0, 0, 0, 0),
160 FloatPoint3D(9, 8, 7)); 181 FloatPoint3D(9, 8, 7));
161 simpleTransformAndEffectWithUpdatedTransform.effect = 182 simpleTransformAndEffectWithUpdatedTransform.effect =
162 EffectPaintPropertyNode::create( 183 EffectPaintPropertyNode::create(
163 nullptr, simpleTransformAndEffect.effect->opacity()); 184 dummyRootEffect(), dummyRootTransform(), dummyRootClip(), simpleTransf ormAndEffect.effect->opacity(), CompositorFilterOperations());
164 chunker.updateCurrentPaintChunkProperties( 185 chunker.updateCurrentPaintChunkProperties(
165 nullptr, simpleTransformAndEffectWithUpdatedTransform); 186 nullptr, simpleTransformAndEffectWithUpdatedTransform);
166 chunker.incrementDisplayItemIndex(NormalTestDisplayItem()); 187 chunker.incrementDisplayItemIndex(NormalTestDisplayItem());
167 chunker.incrementDisplayItemIndex(NormalTestDisplayItem()); 188 chunker.incrementDisplayItemIndex(NormalTestDisplayItem());
168 189
169 // Test that going back to a previous chunk property still creates a new 190 // Test that going back to a previous chunk property still creates a new
170 // chunk. 191 // chunk.
171 chunker.updateCurrentPaintChunkProperties(nullptr, simpleTransformAndEffect); 192 chunker.updateCurrentPaintChunkProperties(nullptr, simpleTransformAndEffect);
172 chunker.incrementDisplayItemIndex(NormalTestDisplayItem()); 193 chunker.incrementDisplayItemIndex(NormalTestDisplayItem());
173 chunker.incrementDisplayItemIndex(NormalTestDisplayItem()); 194 chunker.incrementDisplayItemIndex(NormalTestDisplayItem());
(...skipping 166 matching lines...) Expand 10 before | Expand all | Expand 10 after
340 PaintChunk(2, 4, nullptr, simpleTransform), 361 PaintChunk(2, 4, nullptr, simpleTransform),
341 PaintChunk(4, 5, nullptr, simpleTransform), 362 PaintChunk(4, 5, nullptr, simpleTransform),
342 PaintChunk(5, 6, nullptr, simpleTransform), 363 PaintChunk(5, 6, nullptr, simpleTransform),
343 PaintChunk(6, 7, nullptr, rootPaintChunkProperties()))); 364 PaintChunk(6, 7, nullptr, rootPaintChunkProperties())));
344 } 365 }
345 366
346 #endif 367 #endif
347 368
348 } // namespace 369 } // namespace
349 } // namespace blink 370 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698