| // Copyright 2013 The Flutter Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "flutter/flow/testing/diff_context_test.h" |
| |
| namespace flutter { |
| namespace testing { |
| |
| TEST_F(DiffContextTest, ClipAlignment) { |
| MockLayerTree t1; |
| t1.root()->Add(CreateDisplayListLayer( |
| CreateDisplayList(SkRect::MakeLTRB(30, 30, 50, 50), 1))); |
| auto damage = DiffLayerTree(t1, MockLayerTree(), SkIRect::MakeEmpty(), 0, 0); |
| EXPECT_EQ(damage.frame_damage, SkIRect::MakeLTRB(30, 30, 50, 50)); |
| EXPECT_EQ(damage.buffer_damage, SkIRect::MakeLTRB(30, 30, 50, 50)); |
| |
| damage = DiffLayerTree(t1, MockLayerTree(), SkIRect::MakeEmpty(), 1, 1); |
| EXPECT_EQ(damage.frame_damage, SkIRect::MakeLTRB(30, 30, 50, 50)); |
| EXPECT_EQ(damage.buffer_damage, SkIRect::MakeLTRB(30, 30, 50, 50)); |
| |
| damage = DiffLayerTree(t1, MockLayerTree(), SkIRect::MakeEmpty(), 8, 1); |
| EXPECT_EQ(damage.frame_damage, SkIRect::MakeLTRB(24, 30, 56, 50)); |
| EXPECT_EQ(damage.buffer_damage, SkIRect::MakeLTRB(24, 30, 56, 50)); |
| |
| damage = DiffLayerTree(t1, MockLayerTree(), SkIRect::MakeEmpty(), 1, 8); |
| EXPECT_EQ(damage.frame_damage, SkIRect::MakeLTRB(30, 24, 50, 56)); |
| EXPECT_EQ(damage.buffer_damage, SkIRect::MakeLTRB(30, 24, 50, 56)); |
| |
| damage = DiffLayerTree(t1, MockLayerTree(), SkIRect::MakeEmpty(), 16, 16); |
| EXPECT_EQ(damage.frame_damage, SkIRect::MakeLTRB(16, 16, 64, 64)); |
| EXPECT_EQ(damage.buffer_damage, SkIRect::MakeLTRB(16, 16, 64, 64)); |
| } |
| |
| } // namespace testing |
| } // namespace flutter |