#include "cc/test/fake_picture_pile_impl.h"
#include "cc/test/fake_tile_manager.h"
#include "cc/test/fake_tile_manager_client.h"
+#include "cc/test/test_shared_bitmap_manager.h"
#include "cc/test/test_tile_priorities.h"
#include "testing/gtest/include/gtest/gtest.h"
const ManagedTileState& ams = a->managed_state();
const ManagedTileState& bms = b->managed_state();
+ if (ams.priority_bin != bms.priority_bin)
+ return ams.priority_bin < bms.priority_bin;
+
if (ams.required_for_activation != bms.required_for_activation)
return ams.required_for_activation;
if (ams.resolution != bms.resolution)
return ams.resolution < bms.resolution;
- if (ams.time_to_needed_in_seconds != bms.time_to_needed_in_seconds)
- return ams.time_to_needed_in_seconds < bms.time_to_needed_in_seconds;
-
- if (ams.distance_to_visible_in_pixels !=
- bms.distance_to_visible_in_pixels) {
- return ams.distance_to_visible_in_pixels <
- bms.distance_to_visible_in_pixels;
- }
+ if (ams.distance_to_visible != bms.distance_to_visible)
+ return ams.distance_to_visible < bms.distance_to_visible;
gfx::Rect a_rect = a->content_rect();
gfx::Rect b_rect = b->content_rect();
output_surface_ = FakeOutputSurface::Create3d().Pass();
CHECK(output_surface_->BindToClient(&output_surface_client_));
+ shared_bitmap_manager_.reset(new TestSharedBitmapManager());
resource_provider_ =
- ResourceProvider::Create(output_surface_.get(),
- NULL,
- 0,
- false,
- 1).Pass();
+ ResourceProvider::Create(
+ output_surface_.get(), shared_bitmap_manager_.get(), 0, false, 1,
+ false)
+ .Pass();
+ resource_pool_ = ResourcePool::Create(
+ resource_provider_.get(), GL_TEXTURE_2D, RGBA_8888);
tile_manager_.reset(
- new FakeTileManager(&tile_manager_client_, resource_provider_.get()));
- picture_pile_ = FakePicturePileImpl::CreatePile();
+ new FakeTileManager(&tile_manager_client_, resource_pool_.get()));
+ picture_pile_ = FakePicturePileImpl::CreateInfiniteFilledPile();
}
scoped_refptr<Tile> CreateTile() {
1.0,
0,
0,
- true);
+ 0);
+ }
+ void ReleaseTiles(std::vector<scoped_refptr<Tile> >* tiles) {
+ for (std::vector<scoped_refptr<Tile> >::iterator it = tiles->begin();
+ it != tiles->end();
+ it++) {
+ Tile* tile = *it;
+ tile->SetPriority(ACTIVE_TREE, TilePriority());
+ tile->SetPriority(PENDING_TREE, TilePriority());
+ }
}
private:
LayerTreeSettings settings_;
FakeOutputSurfaceClient output_surface_client_;
scoped_ptr<FakeOutputSurface> output_surface_;
+ scoped_ptr<SharedBitmapManager> shared_bitmap_manager_;
scoped_ptr<ResourceProvider> resource_provider_;
+ scoped_ptr<ResourcePool> resource_pool_;
FakeTileManagerClient tile_manager_client_;
scoped_ptr<FakeTileManager> tile_manager_;
scoped_refptr<FakePicturePileImpl> picture_pile_;
++i;
}
EXPECT_EQ(20, i);
+
+ ReleaseTiles(&tiles);
}
TEST_F(PrioritizedTileSetTest, NowBin) {
++i;
}
EXPECT_EQ(20, i);
+
+ ReleaseTiles(&tiles);
}
TEST_F(PrioritizedTileSetTest, SoonBin) {
++i;
}
EXPECT_EQ(20, i);
+
+ ReleaseTiles(&tiles);
}
TEST_F(PrioritizedTileSetTest, SoonBinNoPriority) {
++i;
}
EXPECT_EQ(20, i);
+
+ ReleaseTiles(&tiles);
}
TEST_F(PrioritizedTileSetTest, EventuallyAndActiveBin) {
++i;
}
EXPECT_EQ(20, i);
+
+ ReleaseTiles(&tiles);
}
TEST_F(PrioritizedTileSetTest, EventuallyBin) {
++i;
}
EXPECT_EQ(20, i);
+
+ ReleaseTiles(&tiles);
}
TEST_F(PrioritizedTileSetTest, AtLastAndActiveBin) {
++i;
}
EXPECT_EQ(20, i);
+
+ ReleaseTiles(&tiles);
}
TEST_F(PrioritizedTileSetTest, AtLastBin) {
++i;
}
EXPECT_EQ(20, i);
+
+ ReleaseTiles(&tiles);
}
TEST_F(PrioritizedTileSetTest, TilesForEachBin) {
}
EXPECT_FALSE(it);
+
+ ReleaseTiles(&now_and_ready_to_draw_bins);
+ ReleaseTiles(&now_bins);
+ ReleaseTiles(&soon_bins);
+ ReleaseTiles(&eventually_and_active_bins);
+ ReleaseTiles(&eventually_bins);
+ ReleaseTiles(&at_last_bins);
+ ReleaseTiles(&at_last_and_active_bins);
}
TEST_F(PrioritizedTileSetTest, ManyTilesForEachBinDisablePriority) {
}
EXPECT_FALSE(it);
+
+ ReleaseTiles(&now_and_ready_to_draw_bins);
+ ReleaseTiles(&now_bins);
+ ReleaseTiles(&soon_bins);
+ ReleaseTiles(&eventually_and_active_bins);
+ ReleaseTiles(&eventually_bins);
+ ReleaseTiles(&at_last_bins);
+ ReleaseTiles(&at_last_and_active_bins);
}
TEST_F(PrioritizedTileSetTest, TilesForFirstAndLastBins) {