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

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

Issue 785273004: cc:Use float literals for float values in PictureLayerTiling tests. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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 "cc/resources/picture_layer_tiling.h" 5 #include "cc/resources/picture_layer_tiling.h"
6 6
7 #include <limits> 7 #include <limits>
8 #include <set> 8 #include <set>
9 9
10 #include "cc/base/math_util.h" 10 #include "cc/base/math_util.h"
(...skipping 203 matching lines...) Expand 10 before | Expand all | Expand 10 after
214 Region invalidation = 214 Region invalidation =
215 SubtractRegions(gfx::Rect(tile_size), gfx::Rect(original_layer_size)); 215 SubtractRegions(gfx::Rect(tile_size), gfx::Rect(original_layer_size));
216 tiling_->Resize(gfx::Size(200, 200)); 216 tiling_->Resize(gfx::Size(200, 200));
217 EXPECT_TRUE(tiling_->TileAt(0, 0)); 217 EXPECT_TRUE(tiling_->TileAt(0, 0));
218 tiling_->Invalidate(invalidation); 218 tiling_->Invalidate(invalidation);
219 EXPECT_FALSE(tiling_->TileAt(0, 0)); 219 EXPECT_FALSE(tiling_->TileAt(0, 0));
220 } 220 }
221 221
222 TEST_F(PictureLayerTilingIteratorTest, CreateMissingTilesStaysInsideLiveRect) { 222 TEST_F(PictureLayerTilingIteratorTest, CreateMissingTilesStaysInsideLiveRect) {
223 // The tiling has three rows and columns. 223 // The tiling has three rows and columns.
224 Initialize(gfx::Size(100, 100), 1, gfx::Size(250, 250)); 224 Initialize(gfx::Size(100, 100), 1.f, gfx::Size(250, 250));
225 EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x()); 225 EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x());
226 EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_y()); 226 EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_y());
227 227
228 // The live tiles rect is at the very edge of the right-most and 228 // The live tiles rect is at the very edge of the right-most and
229 // bottom-most tiles. Their border pixels would still be inside the live 229 // bottom-most tiles. Their border pixels would still be inside the live
230 // tiles rect, but the tiles should not exist just for that. 230 // tiles rect, but the tiles should not exist just for that.
231 int right = tiling_->TilingDataForTesting().TileBounds(2, 2).x(); 231 int right = tiling_->TilingDataForTesting().TileBounds(2, 2).x();
232 int bottom = tiling_->TilingDataForTesting().TileBounds(2, 2).y(); 232 int bottom = tiling_->TilingDataForTesting().TileBounds(2, 2).y();
233 233
234 SetLiveRectAndVerifyTiles(gfx::Rect(right, bottom)); 234 SetLiveRectAndVerifyTiles(gfx::Rect(right, bottom));
235 EXPECT_FALSE(tiling_->TileAt(2, 0)); 235 EXPECT_FALSE(tiling_->TileAt(2, 0));
236 EXPECT_FALSE(tiling_->TileAt(2, 1)); 236 EXPECT_FALSE(tiling_->TileAt(2, 1));
237 EXPECT_FALSE(tiling_->TileAt(2, 2)); 237 EXPECT_FALSE(tiling_->TileAt(2, 2));
238 EXPECT_FALSE(tiling_->TileAt(1, 2)); 238 EXPECT_FALSE(tiling_->TileAt(1, 2));
239 EXPECT_FALSE(tiling_->TileAt(0, 2)); 239 EXPECT_FALSE(tiling_->TileAt(0, 2));
240 240
241 // Verify CreateMissingTilesInLiveTilesRect respects this. 241 // Verify CreateMissingTilesInLiveTilesRect respects this.
242 tiling_->CreateMissingTilesInLiveTilesRect(); 242 tiling_->CreateMissingTilesInLiveTilesRect();
243 EXPECT_FALSE(tiling_->TileAt(2, 0)); 243 EXPECT_FALSE(tiling_->TileAt(2, 0));
244 EXPECT_FALSE(tiling_->TileAt(2, 1)); 244 EXPECT_FALSE(tiling_->TileAt(2, 1));
245 EXPECT_FALSE(tiling_->TileAt(2, 2)); 245 EXPECT_FALSE(tiling_->TileAt(2, 2));
246 EXPECT_FALSE(tiling_->TileAt(1, 2)); 246 EXPECT_FALSE(tiling_->TileAt(1, 2));
247 EXPECT_FALSE(tiling_->TileAt(0, 2)); 247 EXPECT_FALSE(tiling_->TileAt(0, 2));
248 } 248 }
249 249
250 TEST_F(PictureLayerTilingIteratorTest, ResizeTilingOverTileBorders) { 250 TEST_F(PictureLayerTilingIteratorTest, ResizeTilingOverTileBorders) {
251 // The tiling has four rows and three columns. 251 // The tiling has four rows and three columns.
252 Initialize(gfx::Size(100, 100), 1, gfx::Size(250, 350)); 252 Initialize(gfx::Size(100, 100), 1.f, gfx::Size(250, 350));
253 EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x()); 253 EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x());
254 EXPECT_EQ(4, tiling_->TilingDataForTesting().num_tiles_y()); 254 EXPECT_EQ(4, tiling_->TilingDataForTesting().num_tiles_y());
255 255
256 // The live tiles rect covers the whole tiling. 256 // The live tiles rect covers the whole tiling.
257 SetLiveRectAndVerifyTiles(gfx::Rect(250, 350)); 257 SetLiveRectAndVerifyTiles(gfx::Rect(250, 350));
258 258
259 // Tiles in the bottom row and right column exist. 259 // Tiles in the bottom row and right column exist.
260 EXPECT_TRUE(tiling_->TileAt(2, 0)); 260 EXPECT_TRUE(tiling_->TileAt(2, 0));
261 EXPECT_TRUE(tiling_->TileAt(2, 1)); 261 EXPECT_TRUE(tiling_->TileAt(2, 1));
262 EXPECT_TRUE(tiling_->TileAt(2, 2)); 262 EXPECT_TRUE(tiling_->TileAt(2, 2));
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
302 EXPECT_TRUE(tiling_->TileAt(2, 0)); 302 EXPECT_TRUE(tiling_->TileAt(2, 0));
303 EXPECT_TRUE(tiling_->TileAt(2, 1)); 303 EXPECT_TRUE(tiling_->TileAt(2, 1));
304 EXPECT_TRUE(tiling_->TileAt(2, 2)); 304 EXPECT_TRUE(tiling_->TileAt(2, 2));
305 EXPECT_TRUE(tiling_->TileAt(2, 3)); 305 EXPECT_TRUE(tiling_->TileAt(2, 3));
306 EXPECT_TRUE(tiling_->TileAt(1, 3)); 306 EXPECT_TRUE(tiling_->TileAt(1, 3));
307 EXPECT_TRUE(tiling_->TileAt(0, 3)); 307 EXPECT_TRUE(tiling_->TileAt(0, 3));
308 } 308 }
309 309
310 TEST_F(PictureLayerTilingIteratorTest, ResizeLiveTileRectOverTileBorders) { 310 TEST_F(PictureLayerTilingIteratorTest, ResizeLiveTileRectOverTileBorders) {
311 // The tiling has three rows and columns. 311 // The tiling has three rows and columns.
312 Initialize(gfx::Size(100, 100), 1, gfx::Size(250, 350)); 312 Initialize(gfx::Size(100, 100), 1.f, gfx::Size(250, 350));
313 EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x()); 313 EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x());
314 EXPECT_EQ(4, tiling_->TilingDataForTesting().num_tiles_y()); 314 EXPECT_EQ(4, tiling_->TilingDataForTesting().num_tiles_y());
315 315
316 // The live tiles rect covers the whole tiling. 316 // The live tiles rect covers the whole tiling.
317 SetLiveRectAndVerifyTiles(gfx::Rect(250, 350)); 317 SetLiveRectAndVerifyTiles(gfx::Rect(250, 350));
318 318
319 // Tiles in the bottom row and right column exist. 319 // Tiles in the bottom row and right column exist.
320 EXPECT_TRUE(tiling_->TileAt(2, 0)); 320 EXPECT_TRUE(tiling_->TileAt(2, 0));
321 EXPECT_TRUE(tiling_->TileAt(2, 1)); 321 EXPECT_TRUE(tiling_->TileAt(2, 1));
322 EXPECT_TRUE(tiling_->TileAt(2, 2)); 322 EXPECT_TRUE(tiling_->TileAt(2, 2));
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
367 EXPECT_TRUE(tiling_->TileAt(0, 3)); 367 EXPECT_TRUE(tiling_->TileAt(0, 3));
368 EXPECT_TRUE(tiling_->TileAt(0, 2)); 368 EXPECT_TRUE(tiling_->TileAt(0, 2));
369 EXPECT_TRUE(tiling_->TileAt(0, 1)); 369 EXPECT_TRUE(tiling_->TileAt(0, 1));
370 EXPECT_TRUE(tiling_->TileAt(0, 0)); 370 EXPECT_TRUE(tiling_->TileAt(0, 0));
371 EXPECT_TRUE(tiling_->TileAt(1, 0)); 371 EXPECT_TRUE(tiling_->TileAt(1, 0));
372 EXPECT_TRUE(tiling_->TileAt(2, 0)); 372 EXPECT_TRUE(tiling_->TileAt(2, 0));
373 } 373 }
374 374
375 TEST_F(PictureLayerTilingIteratorTest, ResizeLiveTileRectOverSameTiles) { 375 TEST_F(PictureLayerTilingIteratorTest, ResizeLiveTileRectOverSameTiles) {
376 // The tiling has four rows and three columns. 376 // The tiling has four rows and three columns.
377 Initialize(gfx::Size(100, 100), 1, gfx::Size(250, 350)); 377 Initialize(gfx::Size(100, 100), 1.f, gfx::Size(250, 350));
378 EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x()); 378 EXPECT_EQ(3, tiling_->TilingDataForTesting().num_tiles_x());
379 EXPECT_EQ(4, tiling_->TilingDataForTesting().num_tiles_y()); 379 EXPECT_EQ(4, tiling_->TilingDataForTesting().num_tiles_y());
380 380
381 // The live tiles rect covers the whole tiling. 381 // The live tiles rect covers the whole tiling.
382 SetLiveRectAndVerifyTiles(gfx::Rect(250, 350)); 382 SetLiveRectAndVerifyTiles(gfx::Rect(250, 350));
383 383
384 // All tiles exist. 384 // All tiles exist.
385 for (int i = 0; i < 3; ++i) { 385 for (int i = 0; i < 3; ++i) {
386 for (int j = 0; j < 4; ++j) 386 for (int j = 0; j < 4; ++j)
387 EXPECT_TRUE(tiling_->TileAt(i, j)) << i << "," << j; 387 EXPECT_TRUE(tiling_->TileAt(i, j)) << i << "," << j;
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
427 tiling_->Invalidate(invalidation); 427 tiling_->Invalidate(invalidation);
428 EXPECT_FALSE(tiling_->TileAt(0, 0)); 428 EXPECT_FALSE(tiling_->TileAt(0, 0));
429 429
430 // The original tile was the same size after resize, but it would include new 430 // The original tile was the same size after resize, but it would include new
431 // border pixels. 431 // border pixels.
432 EXPECT_EQ(gfx::Rect(original_layer_size), 432 EXPECT_EQ(gfx::Rect(original_layer_size),
433 tiling_->TilingDataForTesting().TileBounds(0, 0)); 433 tiling_->TilingDataForTesting().TileBounds(0, 0));
434 } 434 }
435 435
436 TEST_F(PictureLayerTilingIteratorTest, LiveTilesExactlyCoverLiveTileRect) { 436 TEST_F(PictureLayerTilingIteratorTest, LiveTilesExactlyCoverLiveTileRect) {
437 Initialize(gfx::Size(100, 100), 1, gfx::Size(1099, 801)); 437 Initialize(gfx::Size(100, 100), 1.f, gfx::Size(1099, 801));
438 SetLiveRectAndVerifyTiles(gfx::Rect(100, 100)); 438 SetLiveRectAndVerifyTiles(gfx::Rect(100, 100));
439 SetLiveRectAndVerifyTiles(gfx::Rect(101, 99)); 439 SetLiveRectAndVerifyTiles(gfx::Rect(101, 99));
440 SetLiveRectAndVerifyTiles(gfx::Rect(1099, 1)); 440 SetLiveRectAndVerifyTiles(gfx::Rect(1099, 1));
441 SetLiveRectAndVerifyTiles(gfx::Rect(1, 801)); 441 SetLiveRectAndVerifyTiles(gfx::Rect(1, 801));
442 SetLiveRectAndVerifyTiles(gfx::Rect(1099, 1)); 442 SetLiveRectAndVerifyTiles(gfx::Rect(1099, 1));
443 SetLiveRectAndVerifyTiles(gfx::Rect(201, 800)); 443 SetLiveRectAndVerifyTiles(gfx::Rect(201, 800));
444 } 444 }
445 445
446 TEST_F(PictureLayerTilingIteratorTest, IteratorCoversLayerBoundsNoScale) { 446 TEST_F(PictureLayerTilingIteratorTest, IteratorCoversLayerBoundsNoScale) {
447 Initialize(gfx::Size(100, 100), 1, gfx::Size(1099, 801)); 447 Initialize(gfx::Size(100, 100), 1.f, gfx::Size(1099, 801));
448 VerifyTilesExactlyCoverRect(1, gfx::Rect()); 448 VerifyTilesExactlyCoverRect(1, gfx::Rect());
449 VerifyTilesExactlyCoverRect(1, gfx::Rect(0, 0, 1099, 801)); 449 VerifyTilesExactlyCoverRect(1, gfx::Rect(0, 0, 1099, 801));
450 VerifyTilesExactlyCoverRect(1, gfx::Rect(52, 83, 789, 412)); 450 VerifyTilesExactlyCoverRect(1, gfx::Rect(52, 83, 789, 412));
451 451
452 // With borders, a size of 3x3 = 1 pixel of content. 452 // With borders, a size of 3x3 = 1 pixel of content.
453 Initialize(gfx::Size(3, 3), 1, gfx::Size(10, 10)); 453 Initialize(gfx::Size(3, 3), 1.f, gfx::Size(10, 10));
454 VerifyTilesExactlyCoverRect(1, gfx::Rect(0, 0, 1, 1)); 454 VerifyTilesExactlyCoverRect(1, gfx::Rect(0, 0, 1, 1));
455 VerifyTilesExactlyCoverRect(1, gfx::Rect(0, 0, 2, 2)); 455 VerifyTilesExactlyCoverRect(1, gfx::Rect(0, 0, 2, 2));
456 VerifyTilesExactlyCoverRect(1, gfx::Rect(1, 1, 2, 2)); 456 VerifyTilesExactlyCoverRect(1, gfx::Rect(1, 1, 2, 2));
457 VerifyTilesExactlyCoverRect(1, gfx::Rect(3, 2, 5, 2)); 457 VerifyTilesExactlyCoverRect(1, gfx::Rect(3, 2, 5, 2));
458 } 458 }
459 459
460 TEST_F(PictureLayerTilingIteratorTest, IteratorCoversLayerBoundsTilingScale) { 460 TEST_F(PictureLayerTilingIteratorTest, IteratorCoversLayerBoundsTilingScale) {
461 Initialize(gfx::Size(200, 100), 2.0f, gfx::Size(1005, 2010)); 461 Initialize(gfx::Size(200, 100), 2.0f, gfx::Size(1005, 2010));
462 VerifyTilesExactlyCoverRect(1, gfx::Rect()); 462 VerifyTilesExactlyCoverRect(1, gfx::Rect());
463 VerifyTilesExactlyCoverRect(1, gfx::Rect(0, 0, 1005, 2010)); 463 VerifyTilesExactlyCoverRect(1, gfx::Rect(0, 0, 1005, 2010));
(...skipping 1597 matching lines...) Expand 10 before | Expand all | Expand 10 after
2061 EXPECT_EQ(active_tiling->TileAt(0, 0), recycle_tiling->TileAt(0, 0)); 2061 EXPECT_EQ(active_tiling->TileAt(0, 0), recycle_tiling->TileAt(0, 0));
2062 2062
2063 // Reset the active tiling. The recycle tiles should be released too. 2063 // Reset the active tiling. The recycle tiles should be released too.
2064 active_tiling->Reset(); 2064 active_tiling->Reset();
2065 EXPECT_FALSE(active_tiling->TileAt(0, 0)); 2065 EXPECT_FALSE(active_tiling->TileAt(0, 0));
2066 EXPECT_FALSE(recycle_tiling->TileAt(0, 0)); 2066 EXPECT_FALSE(recycle_tiling->TileAt(0, 0));
2067 } 2067 }
2068 2068
2069 TEST_F(PictureLayerTilingIteratorTest, ResizeTilesAndUpdateToCurrent) { 2069 TEST_F(PictureLayerTilingIteratorTest, ResizeTilesAndUpdateToCurrent) {
2070 // The tiling has four rows and three columns. 2070 // The tiling has four rows and three columns.
2071 Initialize(gfx::Size(150, 100), 1, gfx::Size(250, 150)); 2071 Initialize(gfx::Size(150, 100), 1.f, gfx::Size(250, 150));
2072 tiling_->CreateAllTilesForTesting(); 2072 tiling_->CreateAllTilesForTesting();
2073 EXPECT_EQ(150, tiling_->TilingDataForTesting().max_texture_size().width()); 2073 EXPECT_EQ(150, tiling_->TilingDataForTesting().max_texture_size().width());
2074 EXPECT_EQ(100, tiling_->TilingDataForTesting().max_texture_size().height()); 2074 EXPECT_EQ(100, tiling_->TilingDataForTesting().max_texture_size().height());
2075 EXPECT_EQ(4u, tiling_->AllRefTilesForTesting().size()); 2075 EXPECT_EQ(4u, tiling_->AllRefTilesForTesting().size());
2076 2076
2077 client_.SetTileSize(gfx::Size(250, 200)); 2077 client_.SetTileSize(gfx::Size(250, 200));
2078 client_.set_tree(PENDING_TREE); 2078 client_.set_tree(PENDING_TREE);
2079 2079
2080 // Tile size in the tiling should still be 150x100. 2080 // Tile size in the tiling should still be 150x100.
2081 EXPECT_EQ(150, tiling_->TilingDataForTesting().max_texture_size().width()); 2081 EXPECT_EQ(150, tiling_->TilingDataForTesting().max_texture_size().width());
2082 EXPECT_EQ(100, tiling_->TilingDataForTesting().max_texture_size().height()); 2082 EXPECT_EQ(100, tiling_->TilingDataForTesting().max_texture_size().height());
2083 2083
2084 tiling_->Resize(gfx::Size(250, 150)); 2084 tiling_->Resize(gfx::Size(250, 150));
2085 2085
2086 // Tile size in the tiling should be resized to 250x200. 2086 // Tile size in the tiling should be resized to 250x200.
2087 EXPECT_EQ(250, tiling_->TilingDataForTesting().max_texture_size().width()); 2087 EXPECT_EQ(250, tiling_->TilingDataForTesting().max_texture_size().width());
2088 EXPECT_EQ(200, tiling_->TilingDataForTesting().max_texture_size().height()); 2088 EXPECT_EQ(200, tiling_->TilingDataForTesting().max_texture_size().height());
2089 EXPECT_EQ(0u, tiling_->AllRefTilesForTesting().size()); 2089 EXPECT_EQ(0u, tiling_->AllRefTilesForTesting().size());
2090 } 2090 }
2091 2091
2092 } // namespace 2092 } // namespace
2093 } // namespace cc 2093 } // namespace cc
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698