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

Side by Side Diff: cc/base/delayed_unique_notifier_unittest.cc

Issue 2627863002: Split Closure part of TestPendingTask out of the struct (Closed)
Patch Set: rebase Created 3 years, 11 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
« no previous file with comments | « base/test/test_simple_task_runner.cc ('k') | cc/test/ordered_simple_task_runner.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 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 <deque> 5 #include <deque>
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/bind_helpers.h" 8 #include "base/bind_helpers.h"
9 #include "base/test/test_pending_task.h" 9 #include "base/test/test_pending_task_info.h"
10 #include "base/test/test_simple_task_runner.h" 10 #include "base/test/test_simple_task_runner.h"
11 #include "cc/base/delayed_unique_notifier.h" 11 #include "cc/base/delayed_unique_notifier.h"
12 #include "testing/gtest/include/gtest/gtest.h" 12 #include "testing/gtest/include/gtest/gtest.h"
13 13
14 namespace cc { 14 namespace cc {
15 namespace { 15 namespace {
16 16
17 class TestNotifier : public DelayedUniqueNotifier { 17 class TestNotifier : public DelayedUniqueNotifier {
18 public: 18 public:
19 TestNotifier(base::SequencedTaskRunner* task_runner, 19 TestNotifier(base::SequencedTaskRunner* task_runner,
(...skipping 17 matching lines...) Expand all
37 37
38 void SetUp() override { 38 void SetUp() override {
39 notification_count_ = 0; 39 notification_count_ = 0;
40 task_runner_ = make_scoped_refptr(new base::TestSimpleTaskRunner); 40 task_runner_ = make_scoped_refptr(new base::TestSimpleTaskRunner);
41 } 41 }
42 42
43 void Notify() { ++notification_count_; } 43 void Notify() { ++notification_count_; }
44 44
45 int NotificationCount() const { return notification_count_; } 45 int NotificationCount() const { return notification_count_; }
46 46
47 std::deque<base::TestPendingTask> TakePendingTasks() { 47 base::TestPendingTaskQueue TakePendingTasks() {
48 return task_runner_->TakePendingTasks(); 48 return task_runner_->TakePendingTasks();
49 } 49 }
50 50
51 protected: 51 protected:
52 int notification_count_; 52 int notification_count_;
53 scoped_refptr<base::TestSimpleTaskRunner> task_runner_; 53 scoped_refptr<base::TestSimpleTaskRunner> task_runner_;
54 }; 54 };
55 55
56 TEST_F(DelayedUniqueNotifierTest, ZeroDelay) { 56 TEST_F(DelayedUniqueNotifierTest, ZeroDelay) {
57 base::TimeDelta delay = base::TimeDelta::FromInternalValue(0); 57 base::TimeDelta delay = base::TimeDelta::FromInternalValue(0);
58 TestNotifier notifier( 58 TestNotifier notifier(
59 task_runner_.get(), 59 task_runner_.get(),
60 base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)), 60 base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)),
61 delay); 61 delay);
62 62
63 EXPECT_EQ(0, NotificationCount()); 63 EXPECT_EQ(0, NotificationCount());
64 64
65 // Basic schedule for |delay| from now. 65 // Basic schedule for |delay| from now.
66 base::TimeTicks schedule_time = 66 base::TimeTicks schedule_time =
67 base::TimeTicks() + base::TimeDelta::FromInternalValue(10); 67 base::TimeTicks() + base::TimeDelta::FromInternalValue(10);
68 68
69 notifier.SetNow(schedule_time); 69 notifier.SetNow(schedule_time);
70 notifier.Schedule(); 70 notifier.Schedule();
71 71
72 std::deque<base::TestPendingTask> tasks = TakePendingTasks(); 72 base::TestPendingTaskQueue tasks = TakePendingTasks();
73 ASSERT_EQ(1u, tasks.size()); 73 ASSERT_EQ(1u, tasks.size());
74 EXPECT_EQ(base::TimeTicks() + delay, tasks[0].GetTimeToRun()); 74 base::TestPendingTaskInfo task_info = tasks[0].first;
75 base::OnceClosure task = std::move(tasks[0].second);
75 76
76 tasks[0].task.Run(); 77 EXPECT_EQ(base::TimeTicks() + delay, task_info.GetTimeToRun());
78
79 std::move(task).Run();
77 EXPECT_EQ(1, NotificationCount()); 80 EXPECT_EQ(1, NotificationCount());
78 81
79 // 5 schedules should result in only one run. 82 // 5 schedules should result in only one run.
80 for (int i = 0; i < 5; ++i) 83 for (int i = 0; i < 5; ++i)
81 notifier.Schedule(); 84 notifier.Schedule();
82 85
83 tasks = TakePendingTasks(); 86 tasks = TakePendingTasks();
84 ASSERT_EQ(1u, tasks.size()); 87 ASSERT_EQ(1u, tasks.size());
85 EXPECT_EQ(base::TimeTicks() + delay, tasks[0].GetTimeToRun()); 88 task_info = tasks[0].first;
89 task = std::move(tasks[0].second);
90 EXPECT_EQ(base::TimeTicks() + delay, task_info.GetTimeToRun());
86 91
87 tasks[0].task.Run(); 92 std::move(task).Run();
88 EXPECT_EQ(2, NotificationCount()); 93 EXPECT_EQ(2, NotificationCount());
89 } 94 }
90 95
91 TEST_F(DelayedUniqueNotifierTest, SmallDelay) { 96 TEST_F(DelayedUniqueNotifierTest, SmallDelay) {
92 base::TimeDelta delay = base::TimeDelta::FromInternalValue(20); 97 base::TimeDelta delay = base::TimeDelta::FromInternalValue(20);
93 TestNotifier notifier( 98 TestNotifier notifier(
94 task_runner_.get(), 99 task_runner_.get(),
95 base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)), 100 base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)),
96 delay); 101 delay);
97 102
98 EXPECT_EQ(0, NotificationCount()); 103 EXPECT_EQ(0, NotificationCount());
99 104
100 // Basic schedule for |delay| from now (now: 30, run time: 50). 105 // Basic schedule for |delay| from now (now: 30, run time: 50).
101 base::TimeTicks schedule_time = 106 base::TimeTicks schedule_time =
102 base::TimeTicks() + base::TimeDelta::FromInternalValue(30); 107 base::TimeTicks() + base::TimeDelta::FromInternalValue(30);
103 108
104 notifier.SetNow(schedule_time); 109 notifier.SetNow(schedule_time);
105 notifier.Schedule(); 110 notifier.Schedule();
106 111
107 std::deque<base::TestPendingTask> tasks = TakePendingTasks(); 112 base::TestPendingTaskQueue tasks = TakePendingTasks();
108 113
109 ASSERT_EQ(1u, tasks.size()); 114 ASSERT_EQ(1u, tasks.size());
110 EXPECT_EQ(base::TimeTicks() + delay, tasks[0].GetTimeToRun()); 115 base::TestPendingTaskInfo task_info = tasks[0].first;
116 base::OnceClosure task = std::move(tasks[0].second);
117 EXPECT_EQ(base::TimeTicks() + delay, task_info.GetTimeToRun());
111 118
112 // It's not yet time to run, so we expect no notifications. 119 // It's not yet time to run, so we expect no notifications.
113 tasks[0].task.Run(); 120 std::move(task).Run();
114 EXPECT_EQ(0, NotificationCount()); 121 EXPECT_EQ(0, NotificationCount());
115 122
116 tasks = TakePendingTasks(); 123 tasks = TakePendingTasks();
124 ASSERT_EQ(1u, tasks.size());
125 task_info = tasks[0].first;
126 task = std::move(tasks[0].second);
117 127
118 ASSERT_EQ(1u, tasks.size());
119 // Now the time should be delay minus whatever the value of now happens to be 128 // Now the time should be delay minus whatever the value of now happens to be
120 // (now: 30, run time: 50). 129 // (now: 30, run time: 50).
121 base::TimeTicks scheduled_run_time = notifier.Now() + delay; 130 base::TimeTicks scheduled_run_time = notifier.Now() + delay;
122 base::TimeTicks scheduled_delay = 131 base::TimeTicks scheduled_delay =
123 base::TimeTicks() + (scheduled_run_time - notifier.Now()); 132 base::TimeTicks() + (scheduled_run_time - notifier.Now());
124 EXPECT_EQ(scheduled_delay, tasks[0].GetTimeToRun()); 133 EXPECT_EQ(scheduled_delay, task_info.GetTimeToRun());
125 134
126 // Move closer to the run time (time: 49, run time: 50). 135 // Move closer to the run time (time: 49, run time: 50).
127 notifier.SetNow(notifier.Now() + base::TimeDelta::FromInternalValue(19)); 136 notifier.SetNow(notifier.Now() + base::TimeDelta::FromInternalValue(19));
128 137
129 // It's not yet time to run, so we expect no notifications. 138 // It's not yet time to run, so we expect no notifications.
130 tasks[0].task.Run(); 139 std::move(task).Run();
131 EXPECT_EQ(0, NotificationCount()); 140 EXPECT_EQ(0, NotificationCount());
132 141
133 tasks = TakePendingTasks(); 142 tasks = TakePendingTasks();
134 ASSERT_EQ(1u, tasks.size()); 143 ASSERT_EQ(1u, tasks.size());
144 task_info = tasks[0].first;
145 task = std::move(tasks[0].second);
135 146
136 // Now the time should be delay minus whatever the value of now happens to be. 147 // Now the time should be delay minus whatever the value of now happens to be.
137 scheduled_delay = base::TimeTicks() + (scheduled_run_time - notifier.Now()); 148 scheduled_delay = base::TimeTicks() + (scheduled_run_time - notifier.Now());
138 EXPECT_EQ(scheduled_delay, tasks[0].GetTimeToRun()); 149 EXPECT_EQ(scheduled_delay, task_info.GetTimeToRun());
139 150
140 // Move to exactly the run time (time: 50, run time: 50). 151 // Move to exactly the run time (time: 50, run time: 50).
141 notifier.SetNow(notifier.Now() + base::TimeDelta::FromInternalValue(1)); 152 notifier.SetNow(notifier.Now() + base::TimeDelta::FromInternalValue(1));
142 153
143 // It's time to run! 154 // It's time to run!
144 tasks[0].task.Run(); 155 std::move(task).Run();
145 EXPECT_EQ(1, NotificationCount()); 156 EXPECT_EQ(1, NotificationCount());
146 157
147 tasks = TakePendingTasks(); 158 tasks = TakePendingTasks();
148 EXPECT_EQ(0u, tasks.size()); 159 EXPECT_EQ(0u, tasks.size());
149 } 160 }
150 161
151 TEST_F(DelayedUniqueNotifierTest, RescheduleDelay) { 162 TEST_F(DelayedUniqueNotifierTest, RescheduleDelay) {
152 base::TimeDelta delay = base::TimeDelta::FromInternalValue(20); 163 base::TimeDelta delay = base::TimeDelta::FromInternalValue(20);
153 TestNotifier notifier( 164 TestNotifier notifier(
154 task_runner_.get(), 165 task_runner_.get(),
155 base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)), 166 base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)),
156 delay); 167 delay);
157 168
158 base::TimeTicks schedule_time; 169 base::TimeTicks schedule_time;
159 // Move time 19 units forward and reschedule, expecting that we still need to 170 // Move time 19 units forward and reschedule, expecting that we still need to
160 // run in |delay| time and we don't get a notification. 171 // run in |delay| time and we don't get a notification.
161 for (int i = 0; i < 10; ++i) { 172 for (int i = 0; i < 10; ++i) {
162 EXPECT_EQ(0, NotificationCount()); 173 EXPECT_EQ(0, NotificationCount());
163 174
164 // Move time forward 19 units. 175 // Move time forward 19 units.
165 schedule_time = notifier.Now() + base::TimeDelta::FromInternalValue(19); 176 schedule_time = notifier.Now() + base::TimeDelta::FromInternalValue(19);
166 notifier.SetNow(schedule_time); 177 notifier.SetNow(schedule_time);
167 notifier.Schedule(); 178 notifier.Schedule();
168 179
169 std::deque<base::TestPendingTask> tasks = TakePendingTasks(); 180 base::TestPendingTaskQueue tasks = TakePendingTasks();
170
171 ASSERT_EQ(1u, tasks.size()); 181 ASSERT_EQ(1u, tasks.size());
172 EXPECT_EQ(base::TimeTicks() + delay, tasks[0].GetTimeToRun()); 182 base::TestPendingTaskInfo task_info = tasks[0].first;
183 base::OnceClosure task = std::move(tasks[0].second);
184 EXPECT_EQ(base::TimeTicks() + delay, task_info.GetTimeToRun());
173 185
174 // It's not yet time to run, so we expect no notifications. 186 // It's not yet time to run, so we expect no notifications.
175 tasks[0].task.Run(); 187 std::move(task).Run();
176 EXPECT_EQ(0, NotificationCount()); 188 EXPECT_EQ(0, NotificationCount());
177 } 189 }
178 190
179 // Move time forward 20 units, expecting a notification. 191 // Move time forward 20 units, expecting a notification.
180 schedule_time = notifier.Now() + base::TimeDelta::FromInternalValue(20); 192 schedule_time = notifier.Now() + base::TimeDelta::FromInternalValue(20);
181 notifier.SetNow(schedule_time); 193 notifier.SetNow(schedule_time);
182 194
183 std::deque<base::TestPendingTask> tasks = TakePendingTasks(); 195 base::TestPendingTaskQueue tasks = TakePendingTasks();
184
185 ASSERT_EQ(1u, tasks.size()); 196 ASSERT_EQ(1u, tasks.size());
186 EXPECT_EQ(base::TimeTicks() + delay, tasks[0].GetTimeToRun()); 197 base::TestPendingTaskInfo task_info = tasks[0].first;
198 base::OnceClosure task = std::move(tasks[0].second);
199 EXPECT_EQ(base::TimeTicks() + delay, task_info.GetTimeToRun());
187 200
188 // Time to run! 201 // Time to run!
189 tasks[0].task.Run(); 202 std::move(task).Run();
190 EXPECT_EQ(1, NotificationCount()); 203 EXPECT_EQ(1, NotificationCount());
191 } 204 }
192 205
193 TEST_F(DelayedUniqueNotifierTest, CancelAndHasPendingNotification) { 206 TEST_F(DelayedUniqueNotifierTest, CancelAndHasPendingNotification) {
194 base::TimeDelta delay = base::TimeDelta::FromInternalValue(20); 207 base::TimeDelta delay = base::TimeDelta::FromInternalValue(20);
195 TestNotifier notifier( 208 TestNotifier notifier(
196 task_runner_.get(), 209 task_runner_.get(),
197 base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)), 210 base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)),
198 delay); 211 delay);
199 212
200 EXPECT_EQ(0, NotificationCount()); 213 EXPECT_EQ(0, NotificationCount());
201 214
202 // Schedule for |delay| seconds from now. 215 // Schedule for |delay| seconds from now.
203 base::TimeTicks schedule_time = 216 base::TimeTicks schedule_time =
204 notifier.Now() + base::TimeDelta::FromInternalValue(10); 217 notifier.Now() + base::TimeDelta::FromInternalValue(10);
205 notifier.SetNow(schedule_time); 218 notifier.SetNow(schedule_time);
206 notifier.Schedule(); 219 notifier.Schedule();
207 EXPECT_TRUE(notifier.HasPendingNotification()); 220 EXPECT_TRUE(notifier.HasPendingNotification());
208 221
209 // Cancel the run. 222 // Cancel the run.
210 notifier.Cancel(); 223 notifier.Cancel();
211 EXPECT_FALSE(notifier.HasPendingNotification()); 224 EXPECT_FALSE(notifier.HasPendingNotification());
212 225
213 std::deque<base::TestPendingTask> tasks = TakePendingTasks(); 226 base::TestPendingTaskQueue tasks = TakePendingTasks();
214
215 ASSERT_EQ(1u, tasks.size()); 227 ASSERT_EQ(1u, tasks.size());
216 EXPECT_EQ(base::TimeTicks() + delay, tasks[0].GetTimeToRun()); 228 base::TestPendingTaskInfo task_info = tasks[0].first;
229 base::OnceClosure task = std::move(tasks[0].second);
230 EXPECT_EQ(base::TimeTicks() + delay, task_info.GetTimeToRun());
217 231
218 // Time to run, but a canceled task! 232 // Time to run, but a canceled task!
219 tasks[0].task.Run(); 233 std::move(task).Run();
220 EXPECT_EQ(0, NotificationCount()); 234 EXPECT_EQ(0, NotificationCount());
221 EXPECT_FALSE(notifier.HasPendingNotification()); 235 EXPECT_FALSE(notifier.HasPendingNotification());
222 236
223 tasks = TakePendingTasks(); 237 tasks = TakePendingTasks();
224 EXPECT_EQ(0u, tasks.size()); 238 EXPECT_EQ(0u, tasks.size());
225 239
226 notifier.Schedule(); 240 notifier.Schedule();
227 EXPECT_TRUE(notifier.HasPendingNotification()); 241 EXPECT_TRUE(notifier.HasPendingNotification());
228 tasks = TakePendingTasks(); 242 tasks = TakePendingTasks();
229 243
230 ASSERT_EQ(1u, tasks.size()); 244 ASSERT_EQ(1u, tasks.size());
231 EXPECT_EQ(base::TimeTicks() + delay, tasks[0].GetTimeToRun()); 245 task_info = tasks[0].first;
246 task = std::move(tasks[0].second);
247 EXPECT_EQ(base::TimeTicks() + delay, task_info.GetTimeToRun());
232 248
233 // Advance the time. 249 // Advance the time.
234 notifier.SetNow(notifier.Now() + delay); 250 notifier.SetNow(notifier.Now() + delay);
235 251
236 // This should run since it wasn't canceled. 252 // This should run since it wasn't canceled.
237 tasks[0].task.Run(); 253 std::move(task).Run();
238 EXPECT_EQ(1, NotificationCount()); 254 EXPECT_EQ(1, NotificationCount());
239 EXPECT_FALSE(notifier.HasPendingNotification()); 255 EXPECT_FALSE(notifier.HasPendingNotification());
240 256
241 for (int i = 0; i < 10; ++i) { 257 for (int i = 0; i < 10; ++i) {
242 notifier.Schedule(); 258 notifier.Schedule();
243 EXPECT_TRUE(notifier.HasPendingNotification()); 259 EXPECT_TRUE(notifier.HasPendingNotification());
244 notifier.Cancel(); 260 notifier.Cancel();
245 EXPECT_FALSE(notifier.HasPendingNotification()); 261 EXPECT_FALSE(notifier.HasPendingNotification());
246 } 262 }
247 263
248 tasks = TakePendingTasks(); 264 tasks = TakePendingTasks();
249
250 ASSERT_EQ(1u, tasks.size()); 265 ASSERT_EQ(1u, tasks.size());
251 EXPECT_EQ(base::TimeTicks() + delay, tasks[0].GetTimeToRun()); 266 task_info = tasks[0].first;
267 task = std::move(tasks[0].second);
268 EXPECT_EQ(base::TimeTicks() + delay, task_info.GetTimeToRun());
252 269
253 // Time to run, but a canceled task! 270 // Time to run, but a canceled task!
254 notifier.SetNow(notifier.Now() + delay); 271 notifier.SetNow(notifier.Now() + delay);
255 tasks[0].task.Run(); 272 std::move(task).Run();
256 EXPECT_EQ(1, NotificationCount()); 273 EXPECT_EQ(1, NotificationCount());
257 274
258 tasks = TakePendingTasks(); 275 tasks = TakePendingTasks();
259 EXPECT_EQ(0u, tasks.size()); 276 EXPECT_EQ(0u, tasks.size());
260 EXPECT_FALSE(notifier.HasPendingNotification()); 277 EXPECT_FALSE(notifier.HasPendingNotification());
261 } 278 }
262 279
263 TEST_F(DelayedUniqueNotifierTest, ShutdownWithScheduledTask) { 280 TEST_F(DelayedUniqueNotifierTest, ShutdownWithScheduledTask) {
264 base::TimeDelta delay = base::TimeDelta::FromInternalValue(20); 281 base::TimeDelta delay = base::TimeDelta::FromInternalValue(20);
265 TestNotifier notifier( 282 TestNotifier notifier(
266 task_runner_.get(), 283 task_runner_.get(),
267 base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)), 284 base::Bind(&DelayedUniqueNotifierTest::Notify, base::Unretained(this)),
268 delay); 285 delay);
269 286
270 EXPECT_EQ(0, NotificationCount()); 287 EXPECT_EQ(0, NotificationCount());
271 288
272 // Schedule for |delay| seconds from now. 289 // Schedule for |delay| seconds from now.
273 base::TimeTicks schedule_time = 290 base::TimeTicks schedule_time =
274 notifier.Now() + base::TimeDelta::FromInternalValue(10); 291 notifier.Now() + base::TimeDelta::FromInternalValue(10);
275 notifier.SetNow(schedule_time); 292 notifier.SetNow(schedule_time);
276 notifier.Schedule(); 293 notifier.Schedule();
277 EXPECT_TRUE(notifier.HasPendingNotification()); 294 EXPECT_TRUE(notifier.HasPendingNotification());
278 295
279 // Shutdown the notifier. 296 // Shutdown the notifier.
280 notifier.Shutdown(); 297 notifier.Shutdown();
281 298
282 // The task is still there, but... 299 // The task is still there, but...
283 std::deque<base::TestPendingTask> tasks = TakePendingTasks(); 300 base::TestPendingTaskQueue tasks = TakePendingTasks();
284 ASSERT_EQ(1u, tasks.size()); 301 ASSERT_EQ(1u, tasks.size());
285 302
286 // Running the task after shutdown does nothing since it's cancelled. 303 // Running the task after shutdown does nothing since it's cancelled.
287 tasks[0].task.Run(); 304 std::move(tasks[0].second).Run();
288 EXPECT_EQ(0, NotificationCount()); 305 EXPECT_EQ(0, NotificationCount());
289 306
290 tasks = TakePendingTasks(); 307 tasks = TakePendingTasks();
291 EXPECT_EQ(0u, tasks.size()); 308 EXPECT_EQ(0u, tasks.size());
292 309
293 // We are no longer able to schedule tasks. 310 // We are no longer able to schedule tasks.
294 notifier.Schedule(); 311 notifier.Schedule();
295 tasks = TakePendingTasks(); 312 tasks = TakePendingTasks();
296 ASSERT_EQ(0u, tasks.size()); 313 ASSERT_EQ(0u, tasks.size());
297 314
(...skipping 15 matching lines...) Expand all
313 // Schedule for |delay| seconds from now. 330 // Schedule for |delay| seconds from now.
314 base::TimeTicks schedule_time = 331 base::TimeTicks schedule_time =
315 notifier.Now() + base::TimeDelta::FromInternalValue(10); 332 notifier.Now() + base::TimeDelta::FromInternalValue(10);
316 notifier.SetNow(schedule_time); 333 notifier.SetNow(schedule_time);
317 334
318 // Shutdown the notifier. 335 // Shutdown the notifier.
319 notifier.Shutdown(); 336 notifier.Shutdown();
320 337
321 // Scheduling a task no longer does anything. 338 // Scheduling a task no longer does anything.
322 notifier.Schedule(); 339 notifier.Schedule();
323 std::deque<base::TestPendingTask> tasks = TakePendingTasks(); 340 base::TestPendingTaskQueue tasks = TakePendingTasks();
324 ASSERT_EQ(0u, tasks.size()); 341 ASSERT_EQ(0u, tasks.size());
325 342
326 // Verify after the scheduled time happens there is still no task. 343 // Verify after the scheduled time happens there is still no task.
327 notifier.SetNow(notifier.Now() + delay); 344 notifier.SetNow(notifier.Now() + delay);
328 tasks = TakePendingTasks(); 345 tasks = TakePendingTasks();
329 ASSERT_EQ(0u, tasks.size()); 346 ASSERT_EQ(0u, tasks.size());
330 } 347 }
331 348
332 } // namespace 349 } // namespace
333 } // namespace cc 350 } // namespace cc
OLDNEW
« no previous file with comments | « base/test/test_simple_task_runner.cc ('k') | cc/test/ordered_simple_task_runner.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698