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

Unified Diff: base/task_scheduler/delayed_task_manager_unittest.cc

Issue 1876363004: TaskScheduler [11] Support ExecutionMode::SINGLE_THREADED. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@8_delayed
Patch Set: all post tasks go through SchedulerThreadPool Created 4 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: base/task_scheduler/delayed_task_manager_unittest.cc
diff --git a/base/task_scheduler/delayed_task_manager_unittest.cc b/base/task_scheduler/delayed_task_manager_unittest.cc
index 2a98a10f81eaac5316dc4686904a33bab91915b2..7249e70129d7010527ec0306699c29ef4cc6cb50 100644
--- a/base/task_scheduler/delayed_task_manager_unittest.cc
+++ b/base/task_scheduler/delayed_task_manager_unittest.cc
@@ -45,11 +45,15 @@ class TestDelayedTaskManager : public DelayedTaskManager {
class MockSchedulerThreadPool : public SchedulerThreadPoolInterface {
public:
void PostTaskWithSequenceNow(std::unique_ptr<Task> task,
- scoped_refptr<Sequence> sequence) override {
- PostTaskWithSequenceNowMock(task.get(), sequence.get());
+ scoped_refptr<Sequence> sequence,
+ SchedulerWorkerThread* worker_thread) override {
+ PostTaskWithSequenceNowMock(task.get(), sequence.get(), worker_thread);
}
- MOCK_METHOD2(PostTaskWithSequenceNowMock, void(const Task*, const Sequence*));
+ MOCK_METHOD3(PostTaskWithSequenceNowMock,
+ void(const Task*,
+ const Sequence*,
+ const SchedulerWorkerThread* worker_thread));
};
// Verify that GetDelayedRunTime() returns a null TimeTicks when there are
@@ -73,7 +77,7 @@ TEST(TaskSchedulerDelayedTaskManagerTest, PostReadyTaskBeforeDelayedRunTime) {
// Add |task| to the DelayedTaskManager.
EXPECT_CALL(manager, OnDelayedRunTimeUpdated());
- manager.AddDelayedTask(std::move(task), sequence, &thread_pool);
+ manager.AddDelayedTask(std::move(task), sequence, nullptr, &thread_pool);
testing::Mock::VerifyAndClear(&manager);
EXPECT_EQ(task_raw->delayed_run_time, manager.GetDelayedRunTime());
@@ -99,7 +103,7 @@ TEST(TaskSchedulerDelayedTaskManagerTest, PostReadyTasksAtDelayedRunTime) {
// Add |task| to the DelayedTaskManager.
EXPECT_CALL(manager, OnDelayedRunTimeUpdated());
- manager.AddDelayedTask(std::move(task), sequence, &thread_pool);
+ manager.AddDelayedTask(std::move(task), sequence, nullptr, &thread_pool);
testing::Mock::VerifyAndClear(&manager);
EXPECT_EQ(task_raw->delayed_run_time, manager.GetDelayedRunTime());
@@ -108,7 +112,7 @@ TEST(TaskSchedulerDelayedTaskManagerTest, PostReadyTasksAtDelayedRunTime) {
// Ask the DelayedTaskManager to post tasks that are ripe for execution.
EXPECT_CALL(thread_pool,
- PostTaskWithSequenceNowMock(task_raw, sequence.get()));
+ PostTaskWithSequenceNowMock(task_raw, sequence.get(), nullptr));
manager.PostReadyTasks();
testing::Mock::VerifyAndClear(&manager);
EXPECT_EQ(TimeTicks(), manager.GetDelayedRunTime());
@@ -128,7 +132,7 @@ TEST(TaskSchedulerDelayedTaskManagerTest, PostReadyTasksAfterDelayedRunTime) {
// Add |task| to the DelayedTaskManager.
EXPECT_CALL(manager, OnDelayedRunTimeUpdated());
- manager.AddDelayedTask(std::move(task), sequence, &thread_pool);
+ manager.AddDelayedTask(std::move(task), sequence, nullptr, &thread_pool);
testing::Mock::VerifyAndClear(&manager);
EXPECT_EQ(task_raw->delayed_run_time, manager.GetDelayedRunTime());
@@ -138,7 +142,7 @@ TEST(TaskSchedulerDelayedTaskManagerTest, PostReadyTasksAfterDelayedRunTime) {
// Ask the DelayedTaskManager to post tasks that are ripe for execution.
EXPECT_CALL(thread_pool,
- PostTaskWithSequenceNowMock(task_raw, sequence.get()));
+ PostTaskWithSequenceNowMock(task_raw, sequence.get(), nullptr));
manager.PostReadyTasks();
testing::Mock::VerifyAndClear(&manager);
EXPECT_EQ(TimeTicks(), manager.GetDelayedRunTime());
@@ -170,20 +174,20 @@ TEST(TaskSchedulerDelayedTaskManagerTest, AddAndPostReadyTasks) {
// Add |task_a| to the DelayedTaskManager. The delayed run time should be
// updated to |task_a|'s delayed run time.
EXPECT_CALL(manager, OnDelayedRunTimeUpdated());
- manager.AddDelayedTask(std::move(task_a), sequence, &thread_pool);
+ manager.AddDelayedTask(std::move(task_a), sequence, nullptr, &thread_pool);
testing::Mock::VerifyAndClear(&manager);
EXPECT_EQ(task_a_raw->delayed_run_time, manager.GetDelayedRunTime());
// Add |task_b| to the DelayedTaskManager. The delayed run time shouldn't
// change.
- manager.AddDelayedTask(std::move(task_b), sequence, &thread_pool);
+ manager.AddDelayedTask(std::move(task_b), sequence, nullptr, &thread_pool);
testing::Mock::VerifyAndClear(&manager);
EXPECT_EQ(task_a_raw->delayed_run_time, manager.GetDelayedRunTime());
// Add |task_c| to the DelayedTaskManager. The delayed run time should be
// updated to |task_c|'s delayed run time.
EXPECT_CALL(manager, OnDelayedRunTimeUpdated());
- manager.AddDelayedTask(std::move(task_c), sequence, &thread_pool);
+ manager.AddDelayedTask(std::move(task_c), sequence, nullptr, &thread_pool);
testing::Mock::VerifyAndClear(&manager);
EXPECT_EQ(task_c_raw->delayed_run_time, manager.GetDelayedRunTime());
@@ -194,7 +198,7 @@ TEST(TaskSchedulerDelayedTaskManagerTest, AddAndPostReadyTasks) {
// |task_c_raw| should be posted and the delayed run time should become
// |task_a_raw|'s delayed run time.
EXPECT_CALL(thread_pool,
- PostTaskWithSequenceNowMock(task_c_raw, sequence.get()));
+ PostTaskWithSequenceNowMock(task_c_raw, sequence.get(), nullptr));
manager.PostReadyTasks();
testing::Mock::VerifyAndClear(&thread_pool);
EXPECT_EQ(task_a_raw->delayed_run_time, manager.GetDelayedRunTime());
@@ -206,9 +210,9 @@ TEST(TaskSchedulerDelayedTaskManagerTest, AddAndPostReadyTasks) {
// |task_a_raw| and |task_b_raw| should be posted and the delayed run time
// should become a null TimeTicks.
EXPECT_CALL(thread_pool,
- PostTaskWithSequenceNowMock(task_a_raw, sequence.get()));
+ PostTaskWithSequenceNowMock(task_a_raw, sequence.get(), nullptr));
EXPECT_CALL(thread_pool,
- PostTaskWithSequenceNowMock(task_b_raw, sequence.get()));
+ PostTaskWithSequenceNowMock(task_b_raw, sequence.get(), nullptr));
manager.PostReadyTasks();
testing::Mock::VerifyAndClear(&thread_pool);
EXPECT_EQ(TimeTicks(), manager.GetDelayedRunTime());

Powered by Google App Engine
This is Rietveld 408576698