1 // Copyright 2018 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "base/task/sequence_manager/test/fake_task.h"
6
7 namespace base {
8 namespace sequence_manager {
9
FakeTask()10 FakeTask::FakeTask() : FakeTask(0 /* task_type */) {}
11
FakeTask(TaskType task_type)12 FakeTask::FakeTask(TaskType task_type)
13 : Task(internal::PostedTask(nullptr,
14 OnceClosure(),
15 FROM_HERE,
16 base::TimeDelta(),
17 Nestable::kNestable,
18 task_type),
19 EnqueueOrder(),
20 EnqueueOrder(),
21 TimeTicks(),
22 WakeUpResolution::kLow) {}
23
FakeTaskTiming()24 FakeTaskTiming::FakeTaskTiming()
25 : TaskTiming(false /* has_wall_time */, false /* has_thread_time */) {}
26
FakeTaskTiming(TimeTicks start,TimeTicks end)27 FakeTaskTiming::FakeTaskTiming(TimeTicks start, TimeTicks end)
28 : FakeTaskTiming() {
29 has_wall_time_ = true;
30 start_time_ = start;
31 end_time_ = end;
32 state_ = State::Finished;
33 }
34
FakeTaskTiming(TimeTicks start,TimeTicks end,ThreadTicks thread_start,ThreadTicks thread_end)35 FakeTaskTiming::FakeTaskTiming(TimeTicks start,
36 TimeTicks end,
37 ThreadTicks thread_start,
38 ThreadTicks thread_end)
39 : FakeTaskTiming(start, end) {
40 has_thread_time_ = true;
41 start_thread_time_ = thread_start;
42 end_thread_time_ = thread_end;
43 state_ = State::Finished;
44 }
45
46 } // namespace sequence_manager
47 } // namespace base
48