OLD | NEW |
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 <stdint.h> | 5 #include <stdint.h> |
6 | 6 |
7 #include <string> | 7 #include <string> |
| 8 #include <utility> |
8 #include <vector> | 9 #include <vector> |
9 | 10 |
10 #include "base/bind.h" | 11 #include "base/bind.h" |
11 #include "base/location.h" | 12 #include "base/location.h" |
12 #include "base/macros.h" | 13 #include "base/macros.h" |
13 #include "base/message_loop/message_loop.h" | 14 #include "base/message_loop/message_loop.h" |
14 #include "base/run_loop.h" | 15 #include "base/run_loop.h" |
15 #include "base/single_thread_task_runner.h" | 16 #include "base/single_thread_task_runner.h" |
16 #include "base/task_runner.h" | 17 #include "base/task_runner.h" |
17 #include "base/threading/thread_task_runner_handle.h" | 18 #include "base/threading/thread_task_runner_handle.h" |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
53 // closer to what's actually happening in production. | 54 // closer to what's actually happening in production. |
54 // The delays used by TPMTokenGetter should be monotonically increasing, so | 55 // The delays used by TPMTokenGetter should be monotonically increasing, so |
55 // the fake task runner does not handle task reordering based on the delays. | 56 // the fake task runner does not handle task reordering based on the delays. |
56 class FakeTaskRunner : public base::TaskRunner { | 57 class FakeTaskRunner : public base::TaskRunner { |
57 public: | 58 public: |
58 // |delays|: Vector to which the dalays seen by the task runner are saved. | 59 // |delays|: Vector to which the dalays seen by the task runner are saved. |
59 explicit FakeTaskRunner(std::vector<int64_t>* delays) : delays_(delays) {} | 60 explicit FakeTaskRunner(std::vector<int64_t>* delays) : delays_(delays) {} |
60 | 61 |
61 // base::TaskRunner overrides: | 62 // base::TaskRunner overrides: |
62 bool PostDelayedTask(const tracked_objects::Location& from_here, | 63 bool PostDelayedTask(const tracked_objects::Location& from_here, |
63 const base::Closure& task, | 64 base::Closure task, |
64 base::TimeDelta delay) override { | 65 base::TimeDelta delay) override { |
65 delays_->push_back(delay.InMilliseconds()); | 66 delays_->push_back(delay.InMilliseconds()); |
66 base::ThreadTaskRunnerHandle::Get()->PostTask(from_here, task); | 67 base::ThreadTaskRunnerHandle::Get()->PostTask(from_here, std::move(task)); |
67 return true; | 68 return true; |
68 } | 69 } |
69 bool RunsTasksOnCurrentThread() const override { return true; } | 70 bool RunsTasksOnCurrentThread() const override { return true; } |
70 | 71 |
71 protected: | 72 protected: |
72 ~FakeTaskRunner() override {} | 73 ~FakeTaskRunner() override {} |
73 | 74 |
74 private: | 75 private: |
75 // The vector of delays. | 76 // The vector of delays. |
76 std::vector<int64_t>* delays_; | 77 std::vector<int64_t>* delays_; |
(...skipping 436 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
513 EXPECT_EQ("2222", reported_info.pin); | 514 EXPECT_EQ("2222", reported_info.pin); |
514 EXPECT_EQ(1, reported_info.slot_id); | 515 EXPECT_EQ(1, reported_info.slot_id); |
515 | 516 |
516 const int64_t kExpectedDelays[] = {100}; | 517 const int64_t kExpectedDelays[] = {100}; |
517 EXPECT_EQ(std::vector<int64_t>(kExpectedDelays, | 518 EXPECT_EQ(std::vector<int64_t>(kExpectedDelays, |
518 kExpectedDelays + arraysize(kExpectedDelays)), | 519 kExpectedDelays + arraysize(kExpectedDelays)), |
519 delays_); | 520 delays_); |
520 } | 521 } |
521 | 522 |
522 } // namespace | 523 } // namespace |
OLD | NEW |