| OLD | NEW |
| 1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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/paint/paint_op_buffer.h" | 5 #include "cc/paint/paint_op_buffer.h" |
| 6 #include "cc/paint/display_item_list.h" | 6 #include "cc/paint/display_item_list.h" |
| 7 #include "cc/test/skia_common.h" | 7 #include "cc/test/skia_common.h" |
| 8 #include "cc/test/test_skcanvas.h" | 8 #include "cc/test/test_skcanvas.h" |
| 9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
| 10 | 10 |
| (...skipping 415 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 426 | 426 |
| 427 TEST(PaintOpBufferTest, DiscardableImagesTracking_NoImageOp) { | 427 TEST(PaintOpBufferTest, DiscardableImagesTracking_NoImageOp) { |
| 428 PaintOpBuffer buffer; | 428 PaintOpBuffer buffer; |
| 429 PaintFlags flags; | 429 PaintFlags flags; |
| 430 buffer.push<DrawRectOp>(SkRect::MakeWH(100, 100), flags); | 430 buffer.push<DrawRectOp>(SkRect::MakeWH(100, 100), flags); |
| 431 EXPECT_FALSE(buffer.HasDiscardableImages()); | 431 EXPECT_FALSE(buffer.HasDiscardableImages()); |
| 432 } | 432 } |
| 433 | 433 |
| 434 TEST(PaintOpBufferTest, DiscardableImagesTracking_DrawImage) { | 434 TEST(PaintOpBufferTest, DiscardableImagesTracking_DrawImage) { |
| 435 PaintOpBuffer buffer; | 435 PaintOpBuffer buffer; |
| 436 PaintImage image = PaintImage(CreateDiscardableImage(gfx::Size(100, 100))); | 436 PaintImage image = PaintImage(PaintImage::GetNextId(), |
| 437 CreateDiscardableImage(gfx::Size(100, 100))); |
| 437 buffer.push<DrawImageOp>(image, SkIntToScalar(0), SkIntToScalar(0), nullptr); | 438 buffer.push<DrawImageOp>(image, SkIntToScalar(0), SkIntToScalar(0), nullptr); |
| 438 EXPECT_TRUE(buffer.HasDiscardableImages()); | 439 EXPECT_TRUE(buffer.HasDiscardableImages()); |
| 439 } | 440 } |
| 440 | 441 |
| 441 TEST(PaintOpBufferTest, DiscardableImagesTracking_DrawImageRect) { | 442 TEST(PaintOpBufferTest, DiscardableImagesTracking_DrawImageRect) { |
| 442 PaintOpBuffer buffer; | 443 PaintOpBuffer buffer; |
| 443 PaintImage image = PaintImage(CreateDiscardableImage(gfx::Size(100, 100))); | 444 PaintImage image = PaintImage(PaintImage::GetNextId(), |
| 445 CreateDiscardableImage(gfx::Size(100, 100))); |
| 444 buffer.push<DrawImageRectOp>( | 446 buffer.push<DrawImageRectOp>( |
| 445 image, SkRect::MakeWH(100, 100), SkRect::MakeWH(100, 100), nullptr, | 447 image, SkRect::MakeWH(100, 100), SkRect::MakeWH(100, 100), nullptr, |
| 446 PaintCanvas::SrcRectConstraint::kFast_SrcRectConstraint); | 448 PaintCanvas::SrcRectConstraint::kFast_SrcRectConstraint); |
| 447 EXPECT_TRUE(buffer.HasDiscardableImages()); | 449 EXPECT_TRUE(buffer.HasDiscardableImages()); |
| 448 } | 450 } |
| 449 | 451 |
| 450 TEST(PaintOpBufferTest, DiscardableImagesTracking_NestedDrawOp) { | 452 TEST(PaintOpBufferTest, DiscardableImagesTracking_NestedDrawOp) { |
| 451 sk_sp<PaintRecord> record = sk_make_sp<PaintRecord>(); | 453 sk_sp<PaintRecord> record = sk_make_sp<PaintRecord>(); |
| 452 PaintImage image = PaintImage(CreateDiscardableImage(gfx::Size(100, 100))); | 454 PaintImage image = PaintImage(PaintImage::GetNextId(), |
| 455 CreateDiscardableImage(gfx::Size(100, 100))); |
| 453 record->push<DrawImageOp>(image, SkIntToScalar(0), SkIntToScalar(0), nullptr); | 456 record->push<DrawImageOp>(image, SkIntToScalar(0), SkIntToScalar(0), nullptr); |
| 454 | 457 |
| 455 PaintOpBuffer buffer; | 458 PaintOpBuffer buffer; |
| 456 buffer.push<DrawRecordOp>(record); | 459 buffer.push<DrawRecordOp>(record); |
| 457 EXPECT_TRUE(buffer.HasDiscardableImages()); | 460 EXPECT_TRUE(buffer.HasDiscardableImages()); |
| 458 | 461 |
| 459 scoped_refptr<DisplayItemList> list = new DisplayItemList; | 462 scoped_refptr<DisplayItemList> list = new DisplayItemList; |
| 460 list->CreateAndAppendDrawingItem<DrawingDisplayItem>( | 463 list->CreateAndAppendDrawingItem<DrawingDisplayItem>( |
| 461 gfx::Rect(0, 0, 100, 100), record); | 464 gfx::Rect(0, 0, 100, 100), record); |
| 462 list->Finalize(); | 465 list->Finalize(); |
| 463 PaintOpBuffer new_buffer; | 466 PaintOpBuffer new_buffer; |
| 464 new_buffer.push<DrawDisplayItemListOp>(list); | 467 new_buffer.push<DrawDisplayItemListOp>(list); |
| 465 EXPECT_TRUE(new_buffer.HasDiscardableImages()); | 468 EXPECT_TRUE(new_buffer.HasDiscardableImages()); |
| 466 } | 469 } |
| 467 | 470 |
| 468 TEST(PaintOpBufferTest, DiscardableImagesTracking_OpWithFlags) { | 471 TEST(PaintOpBufferTest, DiscardableImagesTracking_OpWithFlags) { |
| 469 PaintOpBuffer buffer; | 472 PaintOpBuffer buffer; |
| 470 PaintFlags flags; | 473 PaintFlags flags; |
| 471 sk_sp<SkImage> image = CreateDiscardableImage(gfx::Size(100, 100)); | 474 sk_sp<SkImage> image = CreateDiscardableImage(gfx::Size(100, 100)); |
| 472 flags.setShader( | 475 flags.setShader( |
| 473 image->makeShader(SkShader::kClamp_TileMode, SkShader::kClamp_TileMode)); | 476 image->makeShader(SkShader::kClamp_TileMode, SkShader::kClamp_TileMode)); |
| 474 buffer.push<DrawRectOp>(SkRect::MakeWH(100, 100), flags); | 477 buffer.push<DrawRectOp>(SkRect::MakeWH(100, 100), flags); |
| 475 EXPECT_TRUE(buffer.HasDiscardableImages()); | 478 EXPECT_TRUE(buffer.HasDiscardableImages()); |
| 476 } | 479 } |
| 477 | 480 |
| 478 } // namespace cc | 481 } // namespace cc |
| OLD | NEW |