OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/base/time_domain.h" | 5 #include "components/scheduler/base/time_domain.h" |
6 | 6 |
7 #include "base/macros.h" | 7 #include "base/macros.h" |
8 #include "base/memory/ptr_util.h" | 8 #include "base/memory/ptr_util.h" |
9 #include "base/test/simple_test_tick_clock.h" | 9 #include "base/test/simple_test_tick_clock.h" |
10 #include "cc/test/ordered_simple_task_runner.h" | 10 #include "cc/test/ordered_simple_task_runner.h" |
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 base::TimeDelta delay = base::TimeDelta::FromMilliseconds(50); | 157 base::TimeDelta delay = base::TimeDelta::FromMilliseconds(50); |
158 EXPECT_CALL(*time_domain_.get(), RequestWakeup(_, delay)); | 158 EXPECT_CALL(*time_domain_.get(), RequestWakeup(_, delay)); |
159 base::TimeTicks now = time_domain_->Now(); | 159 base::TimeTicks now = time_domain_->Now(); |
160 base::TimeTicks delayed_runtime = now + delay; | 160 base::TimeTicks delayed_runtime = now + delay; |
161 time_domain_->ScheduleDelayedWork(task_queue_.get(), delayed_runtime, now); | 161 time_domain_->ScheduleDelayedWork(task_queue_.get(), delayed_runtime, now); |
162 | 162 |
163 base::TimeTicks next_run_time; | 163 base::TimeTicks next_run_time; |
164 ASSERT_TRUE(time_domain_->NextScheduledRunTime(&next_run_time)); | 164 ASSERT_TRUE(time_domain_->NextScheduledRunTime(&next_run_time)); |
165 EXPECT_EQ(delayed_runtime, next_run_time); | 165 EXPECT_EQ(delayed_runtime, next_run_time); |
166 | 166 |
167 time_domain_->UpdateWorkQueues(false, nullptr); | 167 LazyNow lazy_now = time_domain_->CreateLazyNow(); |
| 168 time_domain_->UpdateWorkQueues(false, nullptr, lazy_now); |
168 ASSERT_TRUE(time_domain_->NextScheduledRunTime(&next_run_time)); | 169 ASSERT_TRUE(time_domain_->NextScheduledRunTime(&next_run_time)); |
169 EXPECT_EQ(delayed_runtime, next_run_time); | 170 EXPECT_EQ(delayed_runtime, next_run_time); |
170 | 171 |
171 time_domain_->SetNow(delayed_runtime); | 172 time_domain_->SetNow(delayed_runtime); |
172 time_domain_->UpdateWorkQueues(false, nullptr); | 173 lazy_now = time_domain_->CreateLazyNow(); |
| 174 time_domain_->UpdateWorkQueues(false, nullptr, lazy_now); |
173 ASSERT_FALSE(time_domain_->NextScheduledRunTime(&next_run_time)); | 175 ASSERT_FALSE(time_domain_->NextScheduledRunTime(&next_run_time)); |
174 } | 176 } |
175 | 177 |
176 TEST_F(TimeDomainTest, ClearExpiredWakeups) { | 178 TEST_F(TimeDomainTest, ClearExpiredWakeups) { |
177 base::TimeTicks now = time_domain_->Now(); | 179 base::TimeTicks now = time_domain_->Now(); |
178 base::TimeDelta delay1 = base::TimeDelta::FromMilliseconds(10); | 180 base::TimeDelta delay1 = base::TimeDelta::FromMilliseconds(10); |
179 base::TimeDelta delay2 = base::TimeDelta::FromMilliseconds(20); | 181 base::TimeDelta delay2 = base::TimeDelta::FromMilliseconds(20); |
180 base::TimeTicks run_time1 = now + delay1; | 182 base::TimeTicks run_time1 = now + delay1; |
181 base::TimeTicks run_time2 = now + delay2; | 183 base::TimeTicks run_time2 = now + delay2; |
182 | 184 |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
226 | 228 |
227 TEST_F(TimeDomainWithObserverTest, OnTimeDomainHasDelayedWork) { | 229 TEST_F(TimeDomainWithObserverTest, OnTimeDomainHasDelayedWork) { |
228 EXPECT_CALL(*observer_, OnTimeDomainHasDelayedWork()); | 230 EXPECT_CALL(*observer_, OnTimeDomainHasDelayedWork()); |
229 EXPECT_CALL(*time_domain_.get(), RequestWakeup(_, _)); | 231 EXPECT_CALL(*time_domain_.get(), RequestWakeup(_, _)); |
230 base::TimeTicks now = time_domain_->Now(); | 232 base::TimeTicks now = time_domain_->Now(); |
231 time_domain_->ScheduleDelayedWork( | 233 time_domain_->ScheduleDelayedWork( |
232 task_queue_.get(), now + base::TimeDelta::FromMilliseconds(10), now); | 234 task_queue_.get(), now + base::TimeDelta::FromMilliseconds(10), now); |
233 } | 235 } |
234 | 236 |
235 } // namespace scheduler | 237 } // namespace scheduler |
OLD | NEW |