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

Unified Diff: cc/layers/tiled_layer_unittest.cc

Issue 195803003: cc: Remove OverdrawMetrics and --trace-overdraw flag. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rm-overdraw: switches Created 6 years, 9 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « cc/layers/tiled_layer.cc ('k') | cc/layers/ui_resource_layer_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/layers/tiled_layer_unittest.cc
diff --git a/cc/layers/tiled_layer_unittest.cc b/cc/layers/tiled_layer_unittest.cc
index f784a52ae3fcc33410f8f7f502b22336dbabfee6..0e5d4a286a2434bc9d46d2d52508f691998f4aa0 100644
--- a/cc/layers/tiled_layer_unittest.cc
+++ b/cc/layers/tiled_layer_unittest.cc
@@ -8,7 +8,6 @@
#include <vector>
#include "base/run_loop.h"
-#include "cc/debug/overdraw_metrics.h"
#include "cc/resources/bitmap_content_layer_updater.h"
#include "cc/resources/layer_painter.h"
#include "cc/resources/prioritized_resource_manager.h"
@@ -33,7 +32,7 @@ namespace {
class TestOcclusionTracker : public OcclusionTracker<Layer> {
public:
- TestOcclusionTracker() : OcclusionTracker(gfx::Rect(0, 0, 1000, 1000), true) {
+ TestOcclusionTracker() : OcclusionTracker(gfx::Rect(0, 0, 1000, 1000)) {
stack_.push_back(StackObject());
}
@@ -301,11 +300,6 @@ TEST_F(TiledLayerTest, PushOccludedDirtyTiles) {
CalcDrawProps(&render_surface_layer_list);
UpdateAndPush(layer, layer_impl);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(
- occluded.overdraw_metrics()->pixels_uploaded_translucent(), 20000, 1);
- EXPECT_EQ(0, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
// We should have both tiles on the impl side.
EXPECT_TRUE(layer_impl->HasResourceIdForTileAt(0, 0));
EXPECT_TRUE(layer_impl->HasResourceIdForTileAt(0, 1));
@@ -321,12 +315,6 @@ TEST_F(TiledLayerTest, PushOccludedDirtyTiles) {
CalcDrawProps(&render_surface_layer_list);
UpdateAndPush(layer, layer_impl);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- 20000 + 2500,
- 1);
- EXPECT_EQ(0, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
// We should still have both tiles, as part of the top tile is still
// unoccluded.
EXPECT_TRUE(layer_impl->HasResourceIdForTileAt(0, 0));
@@ -573,10 +561,7 @@ TEST_F(TiledLayerTest, PushIdlePaintedOccludedTiles) {
layer->draw_properties().visible_content_rect = gfx::Rect(0, 0, 100, 100);
UpdateAndPush(layer, layer_impl);
- // We should have the prepainted tile on the impl side, but culled it during
- // paint.
EXPECT_TRUE(layer_impl->HasResourceIdForTileAt(0, 0));
- EXPECT_EQ(1, occluded.overdraw_metrics()->tiles_culled_for_upload());
}
TEST_F(TiledLayerTest, PushTilesMarkedDirtyDuringPaint) {
@@ -1228,11 +1213,6 @@ TEST_F(TiledLayerTest, TilesPaintedWithOcclusion) {
layer->Update(queue_.get(), &occluded);
EXPECT_EQ(36 - 3, layer->fake_layer_updater()->update_count());
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(
- occluded.overdraw_metrics()->pixels_uploaded_translucent(), 330000, 1);
- EXPECT_EQ(3, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
layer->fake_layer_updater()->ClearUpdateCount();
layer->SetTexturePriorities(priority_calculator_);
resource_manager_->PrioritizeTextures();
@@ -1243,12 +1223,6 @@ TEST_F(TiledLayerTest, TilesPaintedWithOcclusion) {
layer->Update(queue_.get(), &occluded);
EXPECT_EQ(36 - 2, layer->fake_layer_updater()->update_count());
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- 330000 + 340000,
- 1);
- EXPECT_EQ(3 + 2, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
layer->fake_layer_updater()->ClearUpdateCount();
layer->SetTexturePriorities(priority_calculator_);
resource_manager_->PrioritizeTextures();
@@ -1258,12 +1232,6 @@ TEST_F(TiledLayerTest, TilesPaintedWithOcclusion) {
layer->SavePaintProperties();
layer->Update(queue_.get(), &occluded);
EXPECT_EQ(36, layer->fake_layer_updater()->update_count());
-
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- 330000 + 340000 + 360000,
- 1);
- EXPECT_EQ(3 + 2, occluded.overdraw_metrics()->tiles_culled_for_upload());
}
TEST_F(TiledLayerTest, TilesPaintedWithOcclusionAndVisiblityConstraints) {
@@ -1294,11 +1262,6 @@ TEST_F(TiledLayerTest, TilesPaintedWithOcclusionAndVisiblityConstraints) {
layer->Update(queue_.get(), &occluded);
EXPECT_EQ(24 - 3, layer->fake_layer_updater()->update_count());
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(
- occluded.overdraw_metrics()->pixels_uploaded_translucent(), 210000, 1);
- EXPECT_EQ(3, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
layer->fake_layer_updater()->ClearUpdateCount();
// Now the visible region stops at the edge of the occlusion so the partly
@@ -1313,12 +1276,6 @@ TEST_F(TiledLayerTest, TilesPaintedWithOcclusionAndVisiblityConstraints) {
layer->Update(queue_.get(), &occluded);
EXPECT_EQ(24 - 6, layer->fake_layer_updater()->update_count());
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- 210000 + 180000,
- 1);
- EXPECT_EQ(3 + 6, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
layer->fake_layer_updater()->ClearUpdateCount();
// Now the visible region is even smaller than the occlusion, it should have
@@ -1332,12 +1289,6 @@ TEST_F(TiledLayerTest, TilesPaintedWithOcclusionAndVisiblityConstraints) {
layer->SavePaintProperties();
layer->Update(queue_.get(), &occluded);
EXPECT_EQ(24 - 6, layer->fake_layer_updater()->update_count());
-
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- 210000 + 180000 + 180000,
- 1);
- EXPECT_EQ(3 + 6 + 6, occluded.overdraw_metrics()->tiles_culled_for_upload());
}
TEST_F(TiledLayerTest, TilesNotPaintedWithoutInvalidation) {
@@ -1364,12 +1315,7 @@ TEST_F(TiledLayerTest, TilesNotPaintedWithoutInvalidation) {
layer->SavePaintProperties();
layer->Update(queue_.get(), &occluded);
EXPECT_EQ(36 - 3, layer->fake_layer_updater()->update_count());
- { UpdateTextures(); }
-
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(
- occluded.overdraw_metrics()->pixels_uploaded_translucent(), 330000, 1);
- EXPECT_EQ(3, occluded.overdraw_metrics()->tiles_culled_for_upload());
+ UpdateTextures();
layer->fake_layer_updater()->ClearUpdateCount();
layer->SetTexturePriorities(priority_calculator_);
@@ -1380,11 +1326,6 @@ TEST_F(TiledLayerTest, TilesNotPaintedWithoutInvalidation) {
// now.
layer->Update(queue_.get(), &occluded);
EXPECT_EQ(3, layer->fake_layer_updater()->update_count());
-
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(
- occluded.overdraw_metrics()->pixels_uploaded_translucent(), 330000, 1);
- EXPECT_EQ(6, occluded.overdraw_metrics()->tiles_culled_for_upload());
}
TEST_F(TiledLayerTest, TilesPaintedWithOcclusionAndTransforms) {
@@ -1419,11 +1360,6 @@ TEST_F(TiledLayerTest, TilesPaintedWithOcclusionAndTransforms) {
layer->SavePaintProperties();
layer->Update(queue_.get(), &occluded);
EXPECT_EQ(36 - 3, layer->fake_layer_updater()->update_count());
-
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(
- occluded.overdraw_metrics()->pixels_uploaded_translucent(), 330000, 1);
- EXPECT_EQ(3, occluded.overdraw_metrics()->tiles_culled_for_upload());
}
TEST_F(TiledLayerTest, TilesPaintedWithOcclusionAndScaling) {
@@ -1469,12 +1405,6 @@ TEST_F(TiledLayerTest, TilesPaintedWithOcclusionAndScaling) {
int visible_tiles1 = 6 * 6;
EXPECT_EQ(visible_tiles1, layer->fake_layer_updater()->update_count());
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- visible_tiles1 * 100 * 100,
- 1);
- EXPECT_EQ(0, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
layer->fake_layer_updater()->ClearUpdateCount();
// The occlusion of 300x100 will be cover 3 tiles as tiles are 100x100 still.
@@ -1491,13 +1421,6 @@ TEST_F(TiledLayerTest, TilesPaintedWithOcclusionAndScaling) {
int visible_tiles2 = 6 * 6 - 3;
EXPECT_EQ(visible_tiles2, layer->fake_layer_updater()->update_count());
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- visible_tiles2 * 100 * 100 +
- visible_tiles1 * 100 * 100,
- 1);
- EXPECT_EQ(3, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
layer->fake_layer_updater()->ClearUpdateCount();
// This makes sure content scaling and transforms work together.
@@ -1523,14 +1446,6 @@ TEST_F(TiledLayerTest, TilesPaintedWithOcclusionAndScaling) {
layer->Update(queue_.get(), &occluded);
int visible_tiles3 = 6 * 6 - 6;
EXPECT_EQ(visible_tiles3, layer->fake_layer_updater()->update_count());
-
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- visible_tiles3 * 100 * 100 +
- visible_tiles2 * 100 * 100 +
- visible_tiles1 * 100 * 100,
- 1);
- EXPECT_EQ(6 + 3, occluded.overdraw_metrics()->tiles_culled_for_upload());
}
TEST_F(TiledLayerTest, VisibleContentOpaqueRegion) {
@@ -1568,12 +1483,6 @@ TEST_F(TiledLayerTest, VisibleContentOpaqueRegion) {
opaque_contents = layer->VisibleContentOpaqueRegion();
EXPECT_TRUE(opaque_contents.IsEmpty());
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_painted(), 20000, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(
- occluded.overdraw_metrics()->pixels_uploaded_translucent(), 20000, 1);
- EXPECT_EQ(0, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
// VisibleContentOpaqueRegion should match the visible part of what is painted
// opaque.
opaque_paint_rect = gfx::Rect(10, 10, 90, 190);
@@ -1588,13 +1497,6 @@ TEST_F(TiledLayerTest, VisibleContentOpaqueRegion) {
EXPECT_EQ(gfx::IntersectRects(opaque_paint_rect, visible_bounds).ToString(),
opaque_contents.ToString());
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_painted(), 20000 * 2, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 17100, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- 20000 + 20000 - 17100,
- 1);
- EXPECT_EQ(0, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
// If we paint again without invalidating, the same stuff should be opaque.
layer->fake_layer_updater()->SetOpaquePaintRect(gfx::Rect());
layer->SetTexturePriorities(priority_calculator_);
@@ -1606,13 +1508,6 @@ TEST_F(TiledLayerTest, VisibleContentOpaqueRegion) {
EXPECT_EQ(gfx::IntersectRects(opaque_paint_rect, visible_bounds).ToString(),
opaque_contents.ToString());
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_painted(), 20000 * 2, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 17100, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- 20000 + 20000 - 17100,
- 1);
- EXPECT_EQ(0, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
// If we repaint a non-opaque part of the tile, then it shouldn't lose its
// opaque-ness. And other tiles should not be affected.
layer->fake_layer_updater()->SetOpaquePaintRect(gfx::Rect());
@@ -1626,13 +1521,6 @@ TEST_F(TiledLayerTest, VisibleContentOpaqueRegion) {
EXPECT_EQ(gfx::IntersectRects(opaque_paint_rect, visible_bounds).ToString(),
opaque_contents.ToString());
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_painted(), 20000 * 2 + 1, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 17100, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- 20000 + 20000 - 17100 + 1,
- 1);
- EXPECT_EQ(0, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
// If we repaint an opaque part of the tile, then it should lose its
// opaque-ness. But other tiles should still not be affected.
layer->fake_layer_updater()->SetOpaquePaintRect(gfx::Rect());
@@ -1646,77 +1534,6 @@ TEST_F(TiledLayerTest, VisibleContentOpaqueRegion) {
EXPECT_EQ(gfx::IntersectRects(gfx::Rect(10, 100, 90, 100),
visible_bounds).ToString(),
opaque_contents.ToString());
-
- EXPECT_NEAR(
- occluded.overdraw_metrics()->pixels_painted(), 20000 * 2 + 1 + 1, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 17100, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- 20000 + 20000 - 17100 + 1 + 1,
- 1);
- EXPECT_EQ(0, occluded.overdraw_metrics()->tiles_culled_for_upload());
-}
-
-TEST_F(TiledLayerTest, PixelsPaintedMetrics) {
- scoped_refptr<FakeTiledLayer> layer =
- make_scoped_refptr(new FakeTiledLayer(resource_manager_.get()));
- RenderSurfaceLayerList render_surface_layer_list;
- TestOcclusionTracker occluded;
- occlusion_ = &occluded;
- layer_tree_host_->SetViewportSize(gfx::Size(1000, 1000));
-
- layer_tree_host_->root_layer()->AddChild(layer);
-
- // The tile size is 100x100, so this invalidates and then paints two tiles in
- // various ways.
-
- gfx::Rect opaque_paint_rect;
- Region opaque_contents;
-
- gfx::Rect content_bounds = gfx::Rect(0, 0, 100, 300);
- layer->SetBounds(content_bounds.size());
- CalcDrawProps(&render_surface_layer_list);
-
- // Invalidates and paints the whole layer.
- layer->fake_layer_updater()->SetOpaquePaintRect(gfx::Rect());
- layer->InvalidateContentRect(content_bounds);
- layer->SetTexturePriorities(priority_calculator_);
- resource_manager_->PrioritizeTextures();
- layer->SavePaintProperties();
- layer->Update(queue_.get(), &occluded);
- UpdateTextures();
- opaque_contents = layer->VisibleContentOpaqueRegion();
- EXPECT_TRUE(opaque_contents.IsEmpty());
-
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_painted(), 30000, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(
- occluded.overdraw_metrics()->pixels_uploaded_translucent(), 30000, 1);
- EXPECT_EQ(0, occluded.overdraw_metrics()->tiles_culled_for_upload());
-
- // Invalidates an area on the top and bottom tile, which will cause us to
- // paint the tile in the middle, even though it is not dirty and will not be
- // uploaded.
- layer->fake_layer_updater()->SetOpaquePaintRect(gfx::Rect());
- layer->InvalidateContentRect(gfx::Rect(0, 0, 1, 1));
- layer->InvalidateContentRect(gfx::Rect(50, 200, 10, 10));
- layer->SetTexturePriorities(priority_calculator_);
- resource_manager_->PrioritizeTextures();
- layer->SavePaintProperties();
- layer->Update(queue_.get(), &occluded);
- UpdateTextures();
- opaque_contents = layer->VisibleContentOpaqueRegion();
- EXPECT_TRUE(opaque_contents.IsEmpty());
-
- // The middle tile was painted even though not invalidated.
- EXPECT_NEAR(
- occluded.overdraw_metrics()->pixels_painted(), 30000 + 60 * 210, 1);
- // The pixels uploaded will not include the non-invalidated tile in the
- // middle.
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_opaque(), 0, 1);
- EXPECT_NEAR(occluded.overdraw_metrics()->pixels_uploaded_translucent(),
- 30000 + 1 + 100,
- 1);
- EXPECT_EQ(0, occluded.overdraw_metrics()->tiles_culled_for_upload());
}
TEST_F(TiledLayerTest, DontAllocateContentsWhenTargetSurfaceCantBeAllocated) {
« no previous file with comments | « cc/layers/tiled_layer.cc ('k') | cc/layers/ui_resource_layer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698