Index: cc/test/ordered_simple_task_runner.cc |
diff --git a/cc/test/ordered_simple_task_runner.cc b/cc/test/ordered_simple_task_runner.cc |
index 4bf97837371973ccbb2821c922e4ea4add8cf18d..f698c0f02db03abf2d1d11afa624e4f999a62dff 100644 |
--- a/cc/test/ordered_simple_task_runner.cc |
+++ b/cc/test/ordered_simple_task_runner.cc |
@@ -75,15 +75,8 @@ void TestOrderablePendingTask::AsValueInto( |
state->SetString("posted_from", location.ToString()); |
} |
-OrderedSimpleTaskRunner::OrderedSimpleTaskRunner() |
- : advance_now_(true), |
- now_src_(TestNowSource::Create(0)), |
- max_tasks_(kAbsoluteMaxTasks), |
- inside_run_tasks_until_(false) { |
-} |
- |
OrderedSimpleTaskRunner::OrderedSimpleTaskRunner( |
- scoped_refptr<TestNowSource> now_src, |
+ base::SimpleTestTickClock* now_src, |
bool advance_now) |
: advance_now_(advance_now), |
now_src_(now_src), |
@@ -93,14 +86,19 @@ OrderedSimpleTaskRunner::OrderedSimpleTaskRunner( |
OrderedSimpleTaskRunner::~OrderedSimpleTaskRunner() {} |
+base::TimeTicks OrderedSimpleTaskRunner::AbsoluteMaxNow() { |
+ return base::TimeTicks::FromInternalValue( |
+ std::numeric_limits<int64_t>::max()); |
+} |
+ |
// base::TestSimpleTaskRunner implementation |
bool OrderedSimpleTaskRunner::PostDelayedTask( |
const tracked_objects::Location& from_here, |
const base::Closure& task, |
base::TimeDelta delay) { |
DCHECK(thread_checker_.CalledOnValidThread()); |
- TestOrderablePendingTask pt( |
- from_here, task, now_src_->Now(), delay, base::TestPendingTask::NESTABLE); |
+ TestOrderablePendingTask pt(from_here, task, now_src_->NowTicks(), delay, |
+ base::TestPendingTask::NESTABLE); |
TRACE_TASK("OrderedSimpleTaskRunner::PostDelayedTask", pt); |
pending_tasks_.insert(pt); |
@@ -112,10 +110,7 @@ bool OrderedSimpleTaskRunner::PostNonNestableDelayedTask( |
const base::Closure& task, |
base::TimeDelta delay) { |
DCHECK(thread_checker_.CalledOnValidThread()); |
- TestOrderablePendingTask pt(from_here, |
- task, |
- now_src_->Now(), |
- delay, |
+ TestOrderablePendingTask pt(from_here, task, now_src_->NowTicks(), delay, |
base::TestPendingTask::NON_NESTABLE); |
TRACE_TASK("OrderedSimpleTaskRunner::PostNonNestableDelayedTask", pt); |
@@ -138,7 +133,7 @@ bool OrderedSimpleTaskRunner::HasPendingTasks() const { |
base::TimeTicks OrderedSimpleTaskRunner::NextTaskTime() { |
if (pending_tasks_.size() <= 0) { |
- return TestNowSource::kAbsoluteMaxNow; |
+ return AbsoluteMaxNow(); |
} |
return pending_tasks_.begin()->GetTimeToRun(); |
@@ -148,10 +143,10 @@ base::TimeDelta OrderedSimpleTaskRunner::DelayToNextTaskTime() { |
DCHECK(thread_checker_.CalledOnValidThread()); |
if (pending_tasks_.size() <= 0) { |
- return TestNowSource::kAbsoluteMaxNow - base::TimeTicks(); |
+ return AbsoluteMaxNow() - base::TimeTicks(); |
} |
- base::TimeDelta delay = NextTaskTime() - now_src_->Now(); |
+ base::TimeDelta delay = NextTaskTime() - now_src_->NowTicks(); |
if (delay > base::TimeDelta()) |
return delay; |
return base::TimeDelta(); |
@@ -192,7 +187,7 @@ bool OrderedSimpleTaskRunner::RunTasksWhile( |
// If to advance now or not |
if (!advance_now_) { |
- modifiable_conditions.push_back(NowBefore(now_src_->Now())); |
+ modifiable_conditions.push_back(NowBefore(now_src_->NowTicks())); |
} else { |
modifiable_conditions.push_back(AdvanceNow()); |
} |
@@ -241,23 +236,23 @@ bool OrderedSimpleTaskRunner::RunUntilIdle() { |
bool OrderedSimpleTaskRunner::RunUntilTime(base::TimeTicks time) { |
// If we are not auto advancing, force now forward to the time. |
- if (!advance_now_ && now_src_->Now() < time) |
- now_src_->SetNow(time); |
+ if (!advance_now_ && now_src_->NowTicks() < time) |
+ now_src_->Advance(time - now_src_->NowTicks()); |
// Run tasks |
bool result = RunTasksWhile(NowBefore(time)); |
// If the next task is after the stopping time and auto-advancing now, then |
// force time to be the stopping time. |
- if (!result && advance_now_ && now_src_->Now() < time) { |
- now_src_->SetNow(time); |
+ if (!result && advance_now_ && now_src_->NowTicks() < time) { |
+ now_src_->Advance(time - now_src_->NowTicks()); |
} |
return result; |
} |
bool OrderedSimpleTaskRunner::RunForPeriod(base::TimeDelta period) { |
- return RunUntilTime(now_src_->Now() + period); |
+ return RunUntilTime(now_src_->NowTicks() + period); |
} |
// base::trace_event tracing functionality |
@@ -285,7 +280,8 @@ void OrderedSimpleTaskRunner::AsValueInto( |
state->EndArray(); |
state->BeginDictionary("now_src"); |
- now_src_->AsValueInto(state); |
+ state->SetInteger("now_in_microseconds", |
Sami
2015/06/08 13:59:02
The internal value is not really defined to be in
Ankur Verma
2015/06/09 07:53:47
This was replayed from TestNowSource.
base::TimeTi
Sami
2015/06/09 10:16:02
Oh right, with TimeTicks we usually do this:
Ankur Verma
2015/06/09 13:53:43
Done.
|
+ (now_src_->NowTicks()).ToInternalValue()); |
state->EndDictionary(); |
state->SetBoolean("advance_now", advance_now_); |
@@ -334,8 +330,8 @@ base::Callback<bool(void)> OrderedSimpleTaskRunner::AdvanceNow() { |
bool OrderedSimpleTaskRunner::AdvanceNowCallback() { |
base::TimeTicks next_task_time = NextTaskTime(); |
- if (now_src_->Now() < next_task_time) { |
- now_src_->SetNow(next_task_time); |
+ if (now_src_->NowTicks() < next_task_time) { |
+ now_src_->Advance(next_task_time - now_src_->NowTicks()); |
} |
return true; |
} |