Index: cc/resources/tile_manager_unittest.cc |
diff --git a/cc/resources/tile_manager_unittest.cc b/cc/resources/tile_manager_unittest.cc |
index 32d174d94fe0ae68881df30a953b37fad603046e..c9a02af893843dab548cdce7da2f2ededd3a1169 100644 |
--- a/cc/resources/tile_manager_unittest.cc |
+++ b/cc/resources/tile_manager_unittest.cc |
@@ -6,6 +6,7 @@ |
#include "cc/resources/raster_tile_priority_queue.h" |
#include "cc/resources/tile.h" |
#include "cc/resources/tile_priority.h" |
+#include "cc/test/begin_frame_args_test.h" |
#include "cc/test/fake_impl_proxy.h" |
#include "cc/test/fake_layer_tree_host_impl.h" |
#include "cc/test/fake_output_surface.h" |
@@ -121,6 +122,9 @@ class TileManagerTilePriorityQueueTest : public testing::Test { |
pending_layer_ = static_cast<FakePictureLayerImpl*>( |
host_impl_.pending_tree()->LayerById(id_)); |
+ |
+ // Add tilings/tiles for the layer. |
+ host_impl_.pending_tree()->UpdateDrawProperties(); |
} |
TileManager* tile_manager() { return host_impl_.tile_manager(); } |
@@ -144,9 +148,6 @@ TEST_F(TileManagerTilePriorityQueueTest, RasterTilePriorityQueue) { |
host_impl_.SetViewportSize(layer_bounds); |
SetupDefaultTrees(layer_bounds); |
- active_layer_->CreateDefaultTilingsAndTiles(); |
- pending_layer_->CreateDefaultTilingsAndTiles(); |
- |
RasterTilePriorityQueue queue; |
host_impl_.BuildRasterQueue(&queue, SAME_PRIORITY_FOR_BOTH_TREES); |
EXPECT_FALSE(queue.IsEmpty()); |
@@ -325,35 +326,31 @@ TEST_F(TileManagerTilePriorityQueueTest, RasterTilePriorityQueue) { |
} |
TEST_F(TileManagerTilePriorityQueueTest, ActivationComesBeforeEventually) { |
- SetupDefaultTrees(gfx::Size(1000, 1000)); |
+ base::TimeTicks time_ticks; |
+ time_ticks += base::TimeDelta::FromMilliseconds(1); |
+ host_impl_.SetCurrentBeginFrameArgs( |
+ CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
- active_layer_->CreateDefaultTilingsAndTiles(); |
- pending_layer_->CreateDefaultTilingsAndTiles(); |
+ gfx::Size layer_bounds(1000, 1000); |
+ SetupDefaultTrees(layer_bounds); |
// Create a pending child layer. |
gfx::Size tile_size(256, 256); |
scoped_refptr<FakePicturePileImpl> pending_pile = |
- FakePicturePileImpl::CreateFilledPile(tile_size, gfx::Size(1000, 1000)); |
+ FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds); |
scoped_ptr<FakePictureLayerImpl> pending_child = |
FakePictureLayerImpl::CreateWithRasterSource(host_impl_.pending_tree(), |
id_ + 1, pending_pile); |
- pending_layer_->AddChild(pending_child.Pass()); |
- FakePictureLayerImpl* pending_child_raw = static_cast<FakePictureLayerImpl*>( |
- host_impl_.pending_tree()->LayerById(id_ + 1)); |
- ASSERT_TRUE(pending_child_raw); |
- |
+ FakePictureLayerImpl* pending_child_raw = pending_child.get(); |
pending_child_raw->SetDrawsContent(true); |
- pending_child_raw->CreateDefaultTilingsAndTiles(); |
- ASSERT_TRUE(pending_child_raw->HighResTiling()); |
+ pending_layer_->AddChild(pending_child.Pass()); |
// Set a small viewport, so we have soon and eventually tiles. |
- gfx::Rect viewport(200, 200); |
- active_layer_->draw_properties().visible_content_rect = viewport; |
- active_layer_->UpdateTiles(Occlusion(), false); |
- pending_layer_->draw_properties().visible_content_rect = viewport; |
- pending_layer_->UpdateTiles(Occlusion(), false); |
- pending_child_raw->draw_properties().visible_content_rect = viewport; |
- pending_child_raw->UpdateTiles(Occlusion(), false); |
+ host_impl_.SetViewportSize(gfx::Size(200, 200)); |
+ time_ticks += base::TimeDelta::FromMilliseconds(1); |
+ host_impl_.SetCurrentBeginFrameArgs( |
+ CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
+ host_impl_.pending_tree()->UpdateDrawProperties(); |
RasterTilePriorityQueue queue; |
host_impl_.SetRequiresHighResToDraw(); |
@@ -385,9 +382,6 @@ TEST_F(TileManagerTilePriorityQueueTest, EvictionTilePriorityQueue) { |
host_impl_.SetViewportSize(layer_bounds); |
SetupDefaultTrees(layer_bounds); |
- active_layer_->CreateDefaultTilingsAndTiles(); |
- pending_layer_->CreateDefaultTilingsAndTiles(); |
- |
EvictionTilePriorityQueue empty_queue; |
host_impl_.BuildEvictionQueue(&empty_queue, SAME_PRIORITY_FOR_BOTH_TREES); |
EXPECT_TRUE(empty_queue.IsEmpty()); |
@@ -420,7 +414,7 @@ TEST_F(TileManagerTilePriorityQueueTest, EvictionTilePriorityQueue) { |
EXPECT_TRUE(tile); |
EXPECT_EQ(TilePriority::NOW, tile->priority(ACTIVE_TREE).priority_bin); |
EXPECT_EQ(TilePriority::NOW, tile->priority(PENDING_TREE).priority_bin); |
- EXPECT_TRUE(tile->HasResources()); |
+ EXPECT_TRUE(tile->HasResource()); |
smoothness_tiles.insert(tile); |
queue.Pop(); |
} |
@@ -486,7 +480,7 @@ TEST_F(TileManagerTilePriorityQueueTest, EvictionTilePriorityQueue) { |
while (!queue.IsEmpty()) { |
Tile* tile = queue.Top(); |
EXPECT_TRUE(tile); |
- EXPECT_TRUE(tile->HasResources()); |
+ EXPECT_TRUE(tile->HasResource()); |
if (!last_tile) |
last_tile = tile; |
@@ -561,6 +555,11 @@ TEST_F(TileManagerTilePriorityQueueTest, EvictionTilePriorityQueue) { |
TEST_F(TileManagerTilePriorityQueueTest, |
EvictionTilePriorityQueueWithOcclusion) { |
+ base::TimeTicks time_ticks; |
+ time_ticks += base::TimeDelta::FromMilliseconds(1); |
+ host_impl_.SetCurrentBeginFrameArgs( |
+ CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
+ |
gfx::Size tile_size(102, 102); |
gfx::Size layer_bounds(1000, 1000); |
@@ -569,7 +568,6 @@ TEST_F(TileManagerTilePriorityQueueTest, |
scoped_refptr<FakePicturePileImpl> pending_pile = |
FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds); |
SetupPendingTree(pending_pile); |
- pending_layer_->CreateDefaultTilingsAndTiles(); |
scoped_ptr<FakePictureLayerImpl> pending_child = |
FakePictureLayerImpl::CreateWithRasterSource(host_impl_.pending_tree(), 2, |
@@ -579,7 +577,11 @@ TEST_F(TileManagerTilePriorityQueueTest, |
FakePictureLayerImpl* pending_child_layer = |
static_cast<FakePictureLayerImpl*>(pending_layer_->children()[0]); |
pending_child_layer->SetDrawsContent(true); |
- pending_child_layer->CreateDefaultTilingsAndTiles(); |
+ |
+ time_ticks += base::TimeDelta::FromMilliseconds(1); |
+ host_impl_.SetCurrentBeginFrameArgs( |
+ CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
+ host_impl_.pending_tree()->UpdateDrawProperties(); |
std::set<Tile*> all_tiles; |
size_t tile_count = 0; |
@@ -676,27 +678,39 @@ TEST_F(TileManagerTilePriorityQueueTest, |
TEST_F(TileManagerTilePriorityQueueTest, |
EvictionTilePriorityQueueWithTransparentLayer) { |
+ base::TimeTicks time_ticks; |
+ time_ticks += base::TimeDelta::FromMilliseconds(1); |
+ host_impl_.SetCurrentBeginFrameArgs( |
+ CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
+ |
gfx::Size tile_size(102, 102); |
gfx::Size layer_bounds(1000, 1000); |
scoped_refptr<FakePicturePileImpl> pending_pile = |
FakePicturePileImpl::CreateFilledPile(tile_size, layer_bounds); |
SetupPendingTree(pending_pile); |
- pending_layer_->CreateDefaultTilingsAndTiles(); |
scoped_ptr<FakePictureLayerImpl> pending_child = |
FakePictureLayerImpl::CreateWithRasterSource(host_impl_.pending_tree(), 2, |
pending_pile); |
+ FakePictureLayerImpl* pending_child_layer = pending_child.get(); |
pending_layer_->AddChild(pending_child.Pass()); |
// Create a fully transparent child layer so that its tile priorities are not |
// considered to be valid. |
- FakePictureLayerImpl* pending_child_layer = |
- static_cast<FakePictureLayerImpl*>(pending_layer_->children()[0]); |
pending_child_layer->SetDrawsContent(true); |
- pending_child_layer->CreateDefaultTilingsAndTiles(); |
+ |
+ time_ticks += base::TimeDelta::FromMilliseconds(1); |
+ host_impl_.SetCurrentBeginFrameArgs( |
+ CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
+ host_impl_.pending_tree()->UpdateDrawProperties(); |
+ |
pending_child_layer->SetOpacity(0.0); |
- pending_child_layer->layer_tree_impl()->UpdateDrawProperties(); |
+ |
+ time_ticks += base::TimeDelta::FromMilliseconds(1); |
+ host_impl_.SetCurrentBeginFrameArgs( |
+ CreateBeginFrameArgsForTesting(BEGINFRAME_FROM_HERE, time_ticks)); |
+ host_impl_.pending_tree()->UpdateDrawProperties(); |
// Renew all of the tile priorities. |
gfx::Rect viewport(layer_bounds); |
@@ -776,9 +790,6 @@ TEST_F(TileManagerTilePriorityQueueTest, RasterTilePriorityQueueEmptyLayers) { |
host_impl_.SetViewportSize(layer_bounds); |
SetupDefaultTrees(layer_bounds); |
- active_layer_->CreateDefaultTilingsAndTiles(); |
- pending_layer_->CreateDefaultTilingsAndTiles(); |
- |
RasterTilePriorityQueue queue; |
host_impl_.BuildRasterQueue(&queue, SAME_PRIORITY_FOR_BOTH_TREES); |
EXPECT_FALSE(queue.IsEmpty()); |
@@ -824,9 +835,6 @@ TEST_F(TileManagerTilePriorityQueueTest, EvictionTilePriorityQueueEmptyLayers) { |
host_impl_.SetViewportSize(layer_bounds); |
SetupDefaultTrees(layer_bounds); |
- active_layer_->CreateDefaultTilingsAndTiles(); |
- pending_layer_->CreateDefaultTilingsAndTiles(); |
- |
RasterTilePriorityQueue raster_queue; |
host_impl_.BuildRasterQueue(&raster_queue, SAME_PRIORITY_FOR_BOTH_TREES); |
EXPECT_FALSE(raster_queue.IsEmpty()); |