Index: cc/tiles/tile_manager_unittest.cc |
diff --git a/cc/tiles/tile_manager_unittest.cc b/cc/tiles/tile_manager_unittest.cc |
index 2c69999b235a91880aff8e07dc63f6a6682415ce..40fe261460903a4953de212a73588a958d9c54d4 100644 |
--- a/cc/tiles/tile_manager_unittest.cc |
+++ b/cc/tiles/tile_manager_unittest.cc |
@@ -1449,6 +1449,48 @@ TEST_F(TileManagerTilePriorityQueueTest, RasterQueueAllUsesCorrectTileBounds) { |
} |
} |
+TEST_F(TileManagerTilePriorityQueueTest, NoRasterTasksforSolidColorTiles) { |
+ gfx::Size size(10, 10); |
+ const gfx::Size layer_bounds(10, 10); |
+ |
+ scoped_ptr<FakeDisplayListRecordingSource> recording_source = |
+ FakeDisplayListRecordingSource::CreateFilledRecordingSource(layer_bounds); |
+ |
+ SkPaint solid_paint; |
+ SkColor solid_color = SkColorSetARGB(255, 12, 23, 34); |
+ solid_paint.setColor(solid_color); |
+ recording_source->add_draw_rect_with_paint(gfx::Rect(layer_bounds), |
+ solid_paint); |
+ recording_source->Rerecord(); |
+ |
+ scoped_refptr<DisplayListRasterSource> raster = |
vmpstr
2016/01/06 19:35:03
nit: raster_source
sohanjg
2016/01/07 10:13:00
Done.
|
+ DisplayListRasterSource::CreateFromDisplayListRecordingSource( |
+ recording_source.get(), false); |
+ |
+ FakePictureLayerTilingClient tiling_client; |
+ tiling_client.SetTileSize(size); |
+ |
+ scoped_ptr<PictureLayerImpl> layer = |
vmpstr
2016/01/06 19:35:03
nit: layer_impl
sohanjg
2016/01/07 10:13:00
Done.
|
+ PictureLayerImpl::Create(host_impl_.active_tree(), 1, false, nullptr); |
+ PictureLayerTilingSet* tiling_set = layer->picture_layer_tiling_set(); |
+ |
+ PictureLayerTiling* tiling = tiling_set->AddTiling(1.0f, raster); |
+ tiling->set_resolution(HIGH_RESOLUTION); |
+ tiling->CreateAllTilesForTesting(); |
+ tiling->SetTilePriorityRectsForTesting(gfx::Rect(size), // Visible rect. |
+ gfx::Rect(size), // Skewport rect. |
+ gfx::Rect(size), // Soon rect. |
+ gfx::Rect(size)); // Eventually rect. |
+ |
+ host_impl_.tile_manager()->PrepareTiles(host_impl_.global_tile_state()); |
+ |
+ std::vector<Tile*> tiles = tiling->AllTilesForTesting(); |
+ for (size_t tile_idx = 0; tile_idx < tiles.size(); ++tile_idx) { |
+ Tile* tile = tiles[tile_idx]; |
+ EXPECT_FALSE(tile->HasRasterTask()); |
vmpstr
2016/01/06 19:35:03
can you also
EXPECT_EQ(TileDrawInfo::SOLID_COLOR_
sohanjg
2016/01/07 10:13:00
Done.
|
+ } |
+} |
+ |
// TODO(vmpstr): Merge TileManagerTest and TileManagerTilePriorityQueueTest. |
class TileManagerTest : public testing::Test { |
public: |