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

Side by Side Diff: cc/resources/prioritized_tile_set_unittest.cc

Issue 98113005: Revert "cc: Added tile bundles" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « cc/resources/picture_layer_tiling_unittest.cc ('k') | cc/resources/tile.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 <algorithm> 5 #include <algorithm>
6 #include <vector> 6 #include <vector>
7 7
8 #include "cc/resources/managed_tile_state.h" 8 #include "cc/resources/managed_tile_state.h"
9 #include "cc/resources/prioritized_tile_set.h" 9 #include "cc/resources/prioritized_tile_set.h"
10 #include "cc/resources/tile.h" 10 #include "cc/resources/tile.h"
11 #include "cc/resources/tile_bundle.h"
12 #include "cc/test/fake_output_surface.h" 11 #include "cc/test/fake_output_surface.h"
13 #include "cc/test/fake_output_surface_client.h" 12 #include "cc/test/fake_output_surface_client.h"
14 #include "cc/test/fake_picture_pile_impl.h" 13 #include "cc/test/fake_picture_pile_impl.h"
15 #include "cc/test/fake_tile_manager.h" 14 #include "cc/test/fake_tile_manager.h"
16 #include "cc/test/fake_tile_manager_client.h" 15 #include "cc/test/fake_tile_manager_client.h"
17 #include "cc/test/test_tile_priorities.h" 16 #include "cc/test/test_tile_priorities.h"
18 #include "testing/gtest/include/gtest/gtest.h" 17 #include "testing/gtest/include/gtest/gtest.h"
19 18
20 namespace cc { 19 namespace cc {
21 20
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
72 return tile_manager_->CreateTile(picture_pile_.get(), 71 return tile_manager_->CreateTile(picture_pile_.get(),
73 settings_.default_tile_size, 72 settings_.default_tile_size,
74 gfx::Rect(), 73 gfx::Rect(),
75 gfx::Rect(), 74 gfx::Rect(),
76 1.0, 75 1.0,
77 0, 76 0,
78 0, 77 0,
79 Tile::USE_LCD_TEXT); 78 Tile::USE_LCD_TEXT);
80 } 79 }
81 80
82 scoped_refptr<Tile> CreateTileWithPriority(
83 const TilePriority& priority) {
84 scoped_refptr<TileBundle> bundle =
85 tile_manager_->CreateTileBundle(0, 0, 1, 1);
86 scoped_refptr<Tile> tile = CreateTile();
87 bundle->AddTileAt(ACTIVE_TREE, 0, 0, tile);
88 bundle->AddTileAt(PENDING_TREE, 0, 0, tile);
89 bundle->SetPriority(ACTIVE_TREE, priority);
90 bundle->SetPriority(PENDING_TREE, priority);
91 return tile;
92 }
93
94 private: 81 private:
95 LayerTreeSettings settings_; 82 LayerTreeSettings settings_;
96 FakeOutputSurfaceClient output_surface_client_; 83 FakeOutputSurfaceClient output_surface_client_;
97 scoped_ptr<FakeOutputSurface> output_surface_; 84 scoped_ptr<FakeOutputSurface> output_surface_;
98 scoped_ptr<ResourceProvider> resource_provider_; 85 scoped_ptr<ResourceProvider> resource_provider_;
99 FakeTileManagerClient tile_manager_client_; 86 FakeTileManagerClient tile_manager_client_;
100 scoped_ptr<FakeTileManager> tile_manager_; 87 scoped_ptr<FakeTileManager> tile_manager_;
101 scoped_refptr<FakePicturePileImpl> picture_pile_; 88 scoped_refptr<FakePicturePileImpl> picture_pile_;
102 }; 89 };
103 90
(...skipping 25 matching lines...) Expand all
129 PrioritizedTileSet set; 116 PrioritizedTileSet set;
130 TilePriority priorities[4] = { 117 TilePriority priorities[4] = {
131 TilePriorityForEventualBin(), 118 TilePriorityForEventualBin(),
132 TilePriorityForNowBin(), 119 TilePriorityForNowBin(),
133 TilePriority(), 120 TilePriority(),
134 TilePriorityForSoonBin()}; 121 TilePriorityForSoonBin()};
135 122
136 std::vector<scoped_refptr<Tile> > tiles; 123 std::vector<scoped_refptr<Tile> > tiles;
137 for (int priority = 0; priority < 4; ++priority) { 124 for (int priority = 0; priority < 4; ++priority) {
138 for (int i = 0; i < 5; ++i) { 125 for (int i = 0; i < 5; ++i) {
139 scoped_refptr<Tile> tile = CreateTileWithPriority(priorities[priority]); 126 scoped_refptr<Tile> tile = CreateTile();
127 tile->SetPriority(ACTIVE_TREE, priorities[priority]);
128 tile->SetPriority(PENDING_TREE, priorities[priority]);
140 tiles.push_back(tile); 129 tiles.push_back(tile);
141 set.InsertTile(tile, NOW_AND_READY_TO_DRAW_BIN); 130 set.InsertTile(tile, NOW_AND_READY_TO_DRAW_BIN);
142 } 131 }
143 } 132 }
144 133
145 // Tiles should appear in the same order as inserted. 134 // Tiles should appear in the same order as inserted.
146 int i = 0; 135 int i = 0;
147 for (PrioritizedTileSet::Iterator it(&set, true); 136 for (PrioritizedTileSet::Iterator it(&set, true);
148 it; 137 it;
149 ++it) { 138 ++it) {
150 EXPECT_TRUE(*it == tiles[i].get()); 139 EXPECT_TRUE(*it == tiles[i].get());
151 ++i; 140 ++i;
152 } 141 }
153 EXPECT_EQ(20, i); 142 EXPECT_EQ(20, i);
154 } 143 }
155 144
156 TEST_F(PrioritizedTileSetTest, NowBin) { 145 TEST_F(PrioritizedTileSetTest, NowBin) {
157 // Ensure that tiles in NOW_BIN are sorted according to BinComparator. 146 // Ensure that tiles in NOW_BIN are sorted according to BinComparator.
158 147
159 PrioritizedTileSet set; 148 PrioritizedTileSet set;
160 TilePriority priorities[4] = { 149 TilePriority priorities[4] = {
161 TilePriorityForEventualBin(), 150 TilePriorityForEventualBin(),
162 TilePriorityForNowBin(), 151 TilePriorityForNowBin(),
163 TilePriority(), 152 TilePriority(),
164 TilePriorityForSoonBin()}; 153 TilePriorityForSoonBin()};
165 154
166 std::vector<scoped_refptr<Tile> > tiles; 155 std::vector<scoped_refptr<Tile> > tiles;
167 for (int priority = 0; priority < 4; ++priority) { 156 for (int priority = 0; priority < 4; ++priority) {
168 for (int i = 0; i < 5; ++i) { 157 for (int i = 0; i < 5; ++i) {
169 scoped_refptr<Tile> tile = CreateTileWithPriority(priorities[priority]); 158 scoped_refptr<Tile> tile = CreateTile();
159 tile->SetPriority(ACTIVE_TREE, priorities[priority]);
160 tile->SetPriority(PENDING_TREE, priorities[priority]);
170 tiles.push_back(tile); 161 tiles.push_back(tile);
171 set.InsertTile(tile, NOW_BIN); 162 set.InsertTile(tile, NOW_BIN);
172 } 163 }
173 } 164 }
174 165
175 // Tiles should appear in BinComparator order. 166 // Tiles should appear in BinComparator order.
176 std::sort(tiles.begin(), tiles.end(), BinComparator()); 167 std::sort(tiles.begin(), tiles.end(), BinComparator());
177 168
178 int i = 0; 169 int i = 0;
179 for (PrioritizedTileSet::Iterator it(&set, true); 170 for (PrioritizedTileSet::Iterator it(&set, true);
(...skipping 11 matching lines...) Expand all
191 PrioritizedTileSet set; 182 PrioritizedTileSet set;
192 TilePriority priorities[4] = { 183 TilePriority priorities[4] = {
193 TilePriorityForEventualBin(), 184 TilePriorityForEventualBin(),
194 TilePriorityForNowBin(), 185 TilePriorityForNowBin(),
195 TilePriority(), 186 TilePriority(),
196 TilePriorityForSoonBin()}; 187 TilePriorityForSoonBin()};
197 188
198 std::vector<scoped_refptr<Tile> > tiles; 189 std::vector<scoped_refptr<Tile> > tiles;
199 for (int priority = 0; priority < 4; ++priority) { 190 for (int priority = 0; priority < 4; ++priority) {
200 for (int i = 0; i < 5; ++i) { 191 for (int i = 0; i < 5; ++i) {
201 scoped_refptr<Tile> tile = CreateTileWithPriority(priorities[priority]); 192 scoped_refptr<Tile> tile = CreateTile();
193 tile->SetPriority(ACTIVE_TREE, priorities[priority]);
194 tile->SetPriority(PENDING_TREE, priorities[priority]);
202 tiles.push_back(tile); 195 tiles.push_back(tile);
203 set.InsertTile(tile, SOON_BIN); 196 set.InsertTile(tile, SOON_BIN);
204 } 197 }
205 } 198 }
206 199
207 // Tiles should appear in BinComparator order. 200 // Tiles should appear in BinComparator order.
208 std::sort(tiles.begin(), tiles.end(), BinComparator()); 201 std::sort(tiles.begin(), tiles.end(), BinComparator());
209 202
210 int i = 0; 203 int i = 0;
211 for (PrioritizedTileSet::Iterator it(&set, true); 204 for (PrioritizedTileSet::Iterator it(&set, true);
(...skipping 12 matching lines...) Expand all
224 PrioritizedTileSet set; 217 PrioritizedTileSet set;
225 TilePriority priorities[4] = { 218 TilePriority priorities[4] = {
226 TilePriorityForEventualBin(), 219 TilePriorityForEventualBin(),
227 TilePriorityForNowBin(), 220 TilePriorityForNowBin(),
228 TilePriority(), 221 TilePriority(),
229 TilePriorityForSoonBin()}; 222 TilePriorityForSoonBin()};
230 223
231 std::vector<scoped_refptr<Tile> > tiles; 224 std::vector<scoped_refptr<Tile> > tiles;
232 for (int priority = 0; priority < 4; ++priority) { 225 for (int priority = 0; priority < 4; ++priority) {
233 for (int i = 0; i < 5; ++i) { 226 for (int i = 0; i < 5; ++i) {
234 scoped_refptr<Tile> tile = CreateTileWithPriority(priorities[priority]); 227 scoped_refptr<Tile> tile = CreateTile();
228 tile->SetPriority(ACTIVE_TREE, priorities[priority]);
229 tile->SetPriority(PENDING_TREE, priorities[priority]);
235 tiles.push_back(tile); 230 tiles.push_back(tile);
236 set.InsertTile(tile, SOON_BIN); 231 set.InsertTile(tile, SOON_BIN);
237 } 232 }
238 } 233 }
239 234
240 int i = 0; 235 int i = 0;
241 for (PrioritizedTileSet::Iterator it(&set, false); 236 for (PrioritizedTileSet::Iterator it(&set, false);
242 it; 237 it;
243 ++it) { 238 ++it) {
244 EXPECT_TRUE(*it == tiles[i].get()); 239 EXPECT_TRUE(*it == tiles[i].get());
245 ++i; 240 ++i;
246 } 241 }
247 EXPECT_EQ(20, i); 242 EXPECT_EQ(20, i);
248 } 243 }
249 244
250 TEST_F(PrioritizedTileSetTest, EventuallyAndActiveBin) { 245 TEST_F(PrioritizedTileSetTest, EventuallyAndActiveBin) {
251 // Ensure that EVENTUALLY_AND_ACTIVE_BIN tiles are sorted. 246 // Ensure that EVENTUALLY_AND_ACTIVE_BIN tiles are sorted.
252 247
253 PrioritizedTileSet set; 248 PrioritizedTileSet set;
254 TilePriority priorities[4] = { 249 TilePriority priorities[4] = {
255 TilePriorityForEventualBin(), 250 TilePriorityForEventualBin(),
256 TilePriorityForNowBin(), 251 TilePriorityForNowBin(),
257 TilePriority(), 252 TilePriority(),
258 TilePriorityForSoonBin()}; 253 TilePriorityForSoonBin()};
259 254
260 std::vector<scoped_refptr<Tile> > tiles; 255 std::vector<scoped_refptr<Tile> > tiles;
261 for (int priority = 0; priority < 4; ++priority) { 256 for (int priority = 0; priority < 4; ++priority) {
262 for (int i = 0; i < 5; ++i) { 257 for (int i = 0; i < 5; ++i) {
263 scoped_refptr<Tile> tile = CreateTileWithPriority(priorities[priority]); 258 scoped_refptr<Tile> tile = CreateTile();
259 tile->SetPriority(ACTIVE_TREE, priorities[priority]);
260 tile->SetPriority(PENDING_TREE, priorities[priority]);
264 tiles.push_back(tile); 261 tiles.push_back(tile);
265 set.InsertTile(tile, EVENTUALLY_AND_ACTIVE_BIN); 262 set.InsertTile(tile, EVENTUALLY_AND_ACTIVE_BIN);
266 } 263 }
267 } 264 }
268 265
269 // Tiles should appear in BinComparator order. 266 // Tiles should appear in BinComparator order.
270 std::sort(tiles.begin(), tiles.end(), BinComparator()); 267 std::sort(tiles.begin(), tiles.end(), BinComparator());
271 268
272 int i = 0; 269 int i = 0;
273 for (PrioritizedTileSet::Iterator it(&set, true); 270 for (PrioritizedTileSet::Iterator it(&set, true);
(...skipping 11 matching lines...) Expand all
285 PrioritizedTileSet set; 282 PrioritizedTileSet set;
286 TilePriority priorities[4] = { 283 TilePriority priorities[4] = {
287 TilePriorityForEventualBin(), 284 TilePriorityForEventualBin(),
288 TilePriorityForNowBin(), 285 TilePriorityForNowBin(),
289 TilePriority(), 286 TilePriority(),
290 TilePriorityForSoonBin()}; 287 TilePriorityForSoonBin()};
291 288
292 std::vector<scoped_refptr<Tile> > tiles; 289 std::vector<scoped_refptr<Tile> > tiles;
293 for (int priority = 0; priority < 4; ++priority) { 290 for (int priority = 0; priority < 4; ++priority) {
294 for (int i = 0; i < 5; ++i) { 291 for (int i = 0; i < 5; ++i) {
295 scoped_refptr<Tile> tile = CreateTileWithPriority(priorities[priority]); 292 scoped_refptr<Tile> tile = CreateTile();
293 tile->SetPriority(ACTIVE_TREE, priorities[priority]);
294 tile->SetPriority(PENDING_TREE, priorities[priority]);
296 tiles.push_back(tile); 295 tiles.push_back(tile);
297 set.InsertTile(tile, EVENTUALLY_BIN); 296 set.InsertTile(tile, EVENTUALLY_BIN);
298 } 297 }
299 } 298 }
300 299
301 // Tiles should appear in BinComparator order. 300 // Tiles should appear in BinComparator order.
302 std::sort(tiles.begin(), tiles.end(), BinComparator()); 301 std::sort(tiles.begin(), tiles.end(), BinComparator());
303 302
304 int i = 0; 303 int i = 0;
305 for (PrioritizedTileSet::Iterator it(&set, true); 304 for (PrioritizedTileSet::Iterator it(&set, true);
(...skipping 11 matching lines...) Expand all
317 PrioritizedTileSet set; 316 PrioritizedTileSet set;
318 TilePriority priorities[4] = { 317 TilePriority priorities[4] = {
319 TilePriorityForEventualBin(), 318 TilePriorityForEventualBin(),
320 TilePriorityForNowBin(), 319 TilePriorityForNowBin(),
321 TilePriority(), 320 TilePriority(),
322 TilePriorityForSoonBin()}; 321 TilePriorityForSoonBin()};
323 322
324 std::vector<scoped_refptr<Tile> > tiles; 323 std::vector<scoped_refptr<Tile> > tiles;
325 for (int priority = 0; priority < 4; ++priority) { 324 for (int priority = 0; priority < 4; ++priority) {
326 for (int i = 0; i < 5; ++i) { 325 for (int i = 0; i < 5; ++i) {
327 scoped_refptr<Tile> tile = CreateTileWithPriority(priorities[priority]); 326 scoped_refptr<Tile> tile = CreateTile();
327 tile->SetPriority(ACTIVE_TREE, priorities[priority]);
328 tile->SetPriority(PENDING_TREE, priorities[priority]);
328 tiles.push_back(tile); 329 tiles.push_back(tile);
329 set.InsertTile(tile, AT_LAST_AND_ACTIVE_BIN); 330 set.InsertTile(tile, AT_LAST_AND_ACTIVE_BIN);
330 } 331 }
331 } 332 }
332 333
333 // Tiles should appear in BinComparator order. 334 // Tiles should appear in BinComparator order.
334 std::sort(tiles.begin(), tiles.end(), BinComparator()); 335 std::sort(tiles.begin(), tiles.end(), BinComparator());
335 336
336 int i = 0; 337 int i = 0;
337 for (PrioritizedTileSet::Iterator it(&set, true); 338 for (PrioritizedTileSet::Iterator it(&set, true);
(...skipping 11 matching lines...) Expand all
349 PrioritizedTileSet set; 350 PrioritizedTileSet set;
350 TilePriority priorities[4] = { 351 TilePriority priorities[4] = {
351 TilePriorityForEventualBin(), 352 TilePriorityForEventualBin(),
352 TilePriorityForNowBin(), 353 TilePriorityForNowBin(),
353 TilePriority(), 354 TilePriority(),
354 TilePriorityForSoonBin()}; 355 TilePriorityForSoonBin()};
355 356
356 std::vector<scoped_refptr<Tile> > tiles; 357 std::vector<scoped_refptr<Tile> > tiles;
357 for (int priority = 0; priority < 4; ++priority) { 358 for (int priority = 0; priority < 4; ++priority) {
358 for (int i = 0; i < 5; ++i) { 359 for (int i = 0; i < 5; ++i) {
359 scoped_refptr<Tile> tile = CreateTileWithPriority(priorities[priority]); 360 scoped_refptr<Tile> tile = CreateTile();
361 tile->SetPriority(ACTIVE_TREE, priorities[priority]);
362 tile->SetPriority(PENDING_TREE, priorities[priority]);
360 tiles.push_back(tile); 363 tiles.push_back(tile);
361 set.InsertTile(tile, AT_LAST_BIN); 364 set.InsertTile(tile, AT_LAST_BIN);
362 } 365 }
363 } 366 }
364 367
365 // Tiles should appear in BinComparator order. 368 // Tiles should appear in BinComparator order.
366 std::sort(tiles.begin(), tiles.end(), BinComparator()); 369 std::sort(tiles.begin(), tiles.end(), BinComparator());
367 370
368 int i = 0; 371 int i = 0;
369 for (PrioritizedTileSet::Iterator it(&set, true); 372 for (PrioritizedTileSet::Iterator it(&set, true);
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
429 432
430 TilePriority priorities[4] = { 433 TilePriority priorities[4] = {
431 TilePriorityForEventualBin(), 434 TilePriorityForEventualBin(),
432 TilePriorityForNowBin(), 435 TilePriorityForNowBin(),
433 TilePriority(), 436 TilePriority(),
434 TilePriorityForSoonBin()}; 437 TilePriorityForSoonBin()};
435 438
436 PrioritizedTileSet set; 439 PrioritizedTileSet set;
437 for (int priority = 0; priority < 4; ++priority) { 440 for (int priority = 0; priority < 4; ++priority) {
438 for (int i = 0; i < 5; ++i) { 441 for (int i = 0; i < 5; ++i) {
439 scoped_refptr<Tile> tile = CreateTileWithPriority(priorities[priority]); 442 scoped_refptr<Tile> tile = CreateTile();
443 tile->SetPriority(ACTIVE_TREE, priorities[priority]);
444 tile->SetPriority(PENDING_TREE, priorities[priority]);
440 445
441 now_and_ready_to_draw_bins.push_back(tile); 446 now_and_ready_to_draw_bins.push_back(tile);
442 now_bins.push_back(tile); 447 now_bins.push_back(tile);
443 soon_bins.push_back(tile); 448 soon_bins.push_back(tile);
444 eventually_and_active_bins.push_back(tile); 449 eventually_and_active_bins.push_back(tile);
445 eventually_bins.push_back(tile); 450 eventually_bins.push_back(tile);
446 at_last_bins.push_back(tile); 451 at_last_bins.push_back(tile);
447 at_last_and_active_bins.push_back(tile); 452 at_last_and_active_bins.push_back(tile);
448 453
449 set.InsertTile(tile, NOW_AND_READY_TO_DRAW_BIN); 454 set.InsertTile(tile, NOW_AND_READY_TO_DRAW_BIN);
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
538 543
539 TilePriority priorities[4] = { 544 TilePriority priorities[4] = {
540 TilePriorityForEventualBin(), 545 TilePriorityForEventualBin(),
541 TilePriorityForNowBin(), 546 TilePriorityForNowBin(),
542 TilePriority(), 547 TilePriority(),
543 TilePriorityForSoonBin()}; 548 TilePriorityForSoonBin()};
544 549
545 PrioritizedTileSet set; 550 PrioritizedTileSet set;
546 for (int priority = 0; priority < 4; ++priority) { 551 for (int priority = 0; priority < 4; ++priority) {
547 for (int i = 0; i < 5; ++i) { 552 for (int i = 0; i < 5; ++i) {
548 scoped_refptr<Tile> tile = CreateTileWithPriority(priorities[priority]); 553 scoped_refptr<Tile> tile = CreateTile();
554 tile->SetPriority(ACTIVE_TREE, priorities[priority]);
555 tile->SetPriority(PENDING_TREE, priorities[priority]);
549 556
550 now_and_ready_to_draw_bins.push_back(tile); 557 now_and_ready_to_draw_bins.push_back(tile);
551 now_bins.push_back(tile); 558 now_bins.push_back(tile);
552 soon_bins.push_back(tile); 559 soon_bins.push_back(tile);
553 eventually_and_active_bins.push_back(tile); 560 eventually_and_active_bins.push_back(tile);
554 eventually_bins.push_back(tile); 561 eventually_bins.push_back(tile);
555 at_last_bins.push_back(tile); 562 at_last_bins.push_back(tile);
556 at_last_and_active_bins.push_back(tile); 563 at_last_and_active_bins.push_back(tile);
557 564
558 set.InsertTile(tile, NOW_AND_READY_TO_DRAW_BIN); 565 set.InsertTile(tile, NOW_AND_READY_TO_DRAW_BIN);
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after
714 721
715 set.Clear(); 722 set.Clear();
716 723
717 PrioritizedTileSet::Iterator empty_it(&set, true); 724 PrioritizedTileSet::Iterator empty_it(&set, true);
718 EXPECT_FALSE(empty_it); 725 EXPECT_FALSE(empty_it);
719 } 726 }
720 727
721 } // namespace 728 } // namespace
722 } // namespace cc 729 } // namespace cc
723 730
OLDNEW
« no previous file with comments | « cc/resources/picture_layer_tiling_unittest.cc ('k') | cc/resources/tile.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698