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

Side by Side Diff: components/scheduler/child/task_queue_manager_unittest.cc

Issue 1250613002: scheduler: Remove task observer shenanigans (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed a failing test. Created 5 years, 5 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "components/scheduler/child/task_queue_manager.h" 5 #include "components/scheduler/child/task_queue_manager.h"
6 6
7 #include "base/location.h" 7 #include "base/location.h"
8 #include "base/single_thread_task_runner.h" 8 #include "base/single_thread_task_runner.h"
9 #include "base/test/simple_test_tick_clock.h" 9 #include "base/test/simple_test_tick_clock.h"
10 #include "base/threading/thread.h" 10 #include "base/threading/thread.h"
(...skipping 984 matching lines...) Expand 10 before | Expand all | Expand 10 after
995 manager_->SetWorkBatchSize(2); 995 manager_->SetWorkBatchSize(2);
996 manager_->AddTaskObserver(&observer); 996 manager_->AddTaskObserver(&observer);
997 997
998 std::vector<int> run_order; 998 std::vector<int> run_order;
999 scoped_refptr<base::SingleThreadTaskRunner> runner = 999 scoped_refptr<base::SingleThreadTaskRunner> runner =
1000 manager_->TaskRunnerForQueue(0); 1000 manager_->TaskRunnerForQueue(0);
1001 1001
1002 runner->PostTask(FROM_HERE, base::Bind(&TestTask, 1, &run_order)); 1002 runner->PostTask(FROM_HERE, base::Bind(&TestTask, 1, &run_order));
1003 runner->PostTask(FROM_HERE, base::Bind(&TestTask, 2, &run_order)); 1003 runner->PostTask(FROM_HERE, base::Bind(&TestTask, 2, &run_order));
1004 1004
1005 // Two pairs of callbacks for the tasks above plus another one for the 1005 EXPECT_CALL(observer, WillProcessTask(_)).Times(2);
1006 // DoWork() posted by the task queue manager. 1006 EXPECT_CALL(observer, DidProcessTask(_)).Times(2);
1007 EXPECT_CALL(observer, WillProcessTask(_)).Times(3);
1008 EXPECT_CALL(observer, DidProcessTask(_)).Times(3);
1009 message_loop_->RunUntilIdle(); 1007 message_loop_->RunUntilIdle();
1010 } 1008 }
1011 1009
1012 TEST_F(TaskQueueManagerTest, TaskObserverRemoving) { 1010 TEST_F(TaskQueueManagerTest, TaskObserverRemoving) {
1013 InitializeWithRealMessageLoop(1u, SelectorType::Automatic); 1011 InitializeWithRealMessageLoop(1u, SelectorType::Automatic);
1014 MockTaskObserver observer; 1012 MockTaskObserver observer;
1015 manager_->SetWorkBatchSize(2); 1013 manager_->SetWorkBatchSize(2);
1016 manager_->AddTaskObserver(&observer); 1014 manager_->AddTaskObserver(&observer);
1017 manager_->RemoveTaskObserver(&observer); 1015 manager_->RemoveTaskObserver(&observer);
1018 1016
(...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after
1326 runner->PostDelayedTaskAt(FROM_HERE, base::Bind(&TestTask, 4, &run_order), 1324 runner->PostDelayedTaskAt(FROM_HERE, base::Bind(&TestTask, 4, &run_order),
1327 runTime4); 1325 runTime4);
1328 1326
1329 now_src_->Advance(2 * delay); 1327 now_src_->Advance(2 * delay);
1330 test_task_runner_->RunUntilIdle(); 1328 test_task_runner_->RunUntilIdle();
1331 1329
1332 EXPECT_THAT(run_order, ElementsAre(1, 2, 3, 4)); 1330 EXPECT_THAT(run_order, ElementsAre(1, 2, 3, 4));
1333 } 1331 }
1334 1332
1335 } // namespace scheduler 1333 } // namespace scheduler
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698