// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef BASE_TIMER_MOCK_TIMER_H_ #define BASE_TIMER_MOCK_TIMER_H_ #include "base/timer/timer.h" namespace base { class BASE_EXPORT MockTimer : public Timer { public: MockTimer(bool retain_user_task, bool is_repeating); MockTimer(const tracked_objects::Location& posted_from, TimeDelta delay, const base::Closure& user_task, bool is_repeating); ~MockTimer() override; // base::Timer implementation. bool IsRunning() const override; base::TimeDelta GetCurrentDelay() const override; void Start(const tracked_objects::Location& posted_from, base::TimeDelta delay, const base::Closure& user_task) override; void Stop() override; void Reset() override; // Testing methods. void Fire(); private: base::Closure user_task_; TimeDelta delay_; bool is_running_; }; } // namespace base #endif // BASE_TIMER_MOCK_TIMER_H_