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

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

Issue 952893003: Update from https://crrev.com/317530 (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Fix gn for nacl Created 5 years, 10 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 unified diff | Download patch
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 "cc/resources/tile_task_worker_pool.h" 5 #include "cc/resources/tile_task_worker_pool.h"
6 6
7 #include <limits> 7 #include <limits>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/cancelable_callback.h" 10 #include "base/cancelable_callback.h"
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
233 queue.items.push_back(TileTaskQueue::Item(it->get(), task_sets)); 233 queue.items.push_back(TileTaskQueue::Item(it->get(), task_sets));
234 } 234 }
235 235
236 completed_task_sets_.reset(); 236 completed_task_sets_.reset();
237 tile_task_worker_pool_->AsTileTaskRunner()->ScheduleTasks(&queue); 237 tile_task_worker_pool_->AsTileTaskRunner()->ScheduleTasks(&queue);
238 } 238 }
239 239
240 void AppendTask(unsigned id, const gfx::Size& size) { 240 void AppendTask(unsigned id, const gfx::Size& size) {
241 scoped_ptr<ScopedResource> resource( 241 scoped_ptr<ScopedResource> resource(
242 ScopedResource::Create(resource_provider_.get())); 242 ScopedResource::Create(resource_provider_.get()));
243 resource->Allocate(size, ResourceProvider::TextureHintImmutable, RGBA_8888); 243 resource->Allocate(size, ResourceProvider::TEXTURE_HINT_IMMUTABLE,
244 RGBA_8888);
244 const Resource* const_resource = resource.get(); 245 const Resource* const_resource = resource.get();
245 246
246 ImageDecodeTask::Vector empty; 247 ImageDecodeTask::Vector empty;
247 tasks_.push_back(new TestRasterTaskImpl( 248 tasks_.push_back(new TestRasterTaskImpl(
248 const_resource, 249 const_resource,
249 base::Bind(&TileTaskWorkerPoolTest::OnTaskCompleted, 250 base::Bind(&TileTaskWorkerPoolTest::OnTaskCompleted,
250 base::Unretained(this), base::Passed(&resource), id), 251 base::Unretained(this), base::Passed(&resource), id),
251 &empty)); 252 &empty));
252 } 253 }
253 254
254 void AppendTask(unsigned id) { AppendTask(id, gfx::Size(1, 1)); } 255 void AppendTask(unsigned id) { AppendTask(id, gfx::Size(1, 1)); }
255 256
256 void AppendBlockingTask(unsigned id, base::Lock* lock) { 257 void AppendBlockingTask(unsigned id, base::Lock* lock) {
257 const gfx::Size size(1, 1); 258 const gfx::Size size(1, 1);
258 259
259 scoped_ptr<ScopedResource> resource( 260 scoped_ptr<ScopedResource> resource(
260 ScopedResource::Create(resource_provider_.get())); 261 ScopedResource::Create(resource_provider_.get()));
261 resource->Allocate(size, ResourceProvider::TextureHintImmutable, RGBA_8888); 262 resource->Allocate(size, ResourceProvider::TEXTURE_HINT_IMMUTABLE,
263 RGBA_8888);
262 const Resource* const_resource = resource.get(); 264 const Resource* const_resource = resource.get();
263 265
264 ImageDecodeTask::Vector empty; 266 ImageDecodeTask::Vector empty;
265 tasks_.push_back(new BlockingTestRasterTaskImpl( 267 tasks_.push_back(new BlockingTestRasterTaskImpl(
266 const_resource, 268 const_resource,
267 base::Bind(&TileTaskWorkerPoolTest::OnTaskCompleted, 269 base::Bind(&TileTaskWorkerPoolTest::OnTaskCompleted,
268 base::Unretained(this), base::Passed(&resource), id), 270 base::Unretained(this), base::Passed(&resource), id),
269 lock, &empty)); 271 lock, &empty));
270 } 272 }
271 273
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
380 RunMessageLoopUntilAllTasksHaveCompleted(); 382 RunMessageLoopUntilAllTasksHaveCompleted();
381 } 383 }
382 384
383 TEST_P(TileTaskWorkerPoolTest, LargeResources) { 385 TEST_P(TileTaskWorkerPoolTest, LargeResources) {
384 gfx::Size size(kLargeResourceDimension, kLargeResourceDimension); 386 gfx::Size size(kLargeResourceDimension, kLargeResourceDimension);
385 387
386 { 388 {
387 // Verify a resource of this size is larger than the transfer buffer. 389 // Verify a resource of this size is larger than the transfer buffer.
388 scoped_ptr<ScopedResource> resource( 390 scoped_ptr<ScopedResource> resource(
389 ScopedResource::Create(resource_provider_.get())); 391 ScopedResource::Create(resource_provider_.get()));
390 resource->Allocate(size, ResourceProvider::TextureHintImmutable, RGBA_8888); 392 resource->Allocate(size, ResourceProvider::TEXTURE_HINT_IMMUTABLE,
393 RGBA_8888);
391 EXPECT_GE(resource->bytes(), kMaxTransferBufferUsageBytes); 394 EXPECT_GE(resource->bytes(), kMaxTransferBufferUsageBytes);
392 } 395 }
393 396
394 AppendTask(0u, size); 397 AppendTask(0u, size);
395 AppendTask(1u, size); 398 AppendTask(1u, size);
396 AppendTask(2u, size); 399 AppendTask(2u, size);
397 ScheduleTasks(); 400 ScheduleTasks();
398 401
399 // This will time out if a resource that is larger than the throttle limit 402 // This will time out if a resource that is larger than the throttle limit
400 // never gets scheduled. 403 // never gets scheduled.
401 RunMessageLoopUntilAllTasksHaveCompleted(); 404 RunMessageLoopUntilAllTasksHaveCompleted();
402 } 405 }
403 406
404 INSTANTIATE_TEST_CASE_P( 407 INSTANTIATE_TEST_CASE_P(
405 TileTaskWorkerPoolTests, 408 TileTaskWorkerPoolTests,
406 TileTaskWorkerPoolTest, 409 TileTaskWorkerPoolTest,
407 ::testing::Values(TILE_TASK_WORKER_POOL_TYPE_PIXEL_BUFFER, 410 ::testing::Values(TILE_TASK_WORKER_POOL_TYPE_PIXEL_BUFFER,
408 TILE_TASK_WORKER_POOL_TYPE_ZERO_COPY, 411 TILE_TASK_WORKER_POOL_TYPE_ZERO_COPY,
409 TILE_TASK_WORKER_POOL_TYPE_ONE_COPY, 412 TILE_TASK_WORKER_POOL_TYPE_ONE_COPY,
410 TILE_TASK_WORKER_POOL_TYPE_GPU, 413 TILE_TASK_WORKER_POOL_TYPE_GPU,
411 TILE_TASK_WORKER_POOL_TYPE_BITMAP)); 414 TILE_TASK_WORKER_POOL_TYPE_BITMAP));
412 415
413 } // namespace 416 } // namespace
414 } // namespace cc 417 } // namespace cc
OLDNEW
« no previous file with comments | « cc/resources/tile_task_worker_pool_perftest.cc ('k') | cc/resources/tiling_set_eviction_queue.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698