#ifndef BASE_TIMER_MOCK_TIMER_H_
#define BASE_TIMER_MOCK_TIMER_H_
#include "base/test/simple_test_tick_clock.h"
#include "base/timer/timer.h"
namespace base {
class TestSimpleTaskRunner;
class MockOneShotTimer : public OneShotTimer {
public:
MockOneShotTimer();
~MockOneShotTimer() override;
void Fire();
void FireNow() override;
private:
void SetTaskRunner(scoped_refptr<SequencedTaskRunner> task_runner) override;
SimpleTestTickClock clock_;
scoped_refptr<TestSimpleTaskRunner> test_task_runner_;
};
class MockRepeatingTimer : public RepeatingTimer {
public:
MockRepeatingTimer();
~MockRepeatingTimer() override;
void Fire();
private:
void SetTaskRunner(scoped_refptr<SequencedTaskRunner> task_runner) override;
SimpleTestTickClock clock_;
scoped_refptr<TestSimpleTaskRunner> test_task_runner_;
};
class MockRetainingOneShotTimer : public RetainingOneShotTimer {
public:
MockRetainingOneShotTimer();
~MockRetainingOneShotTimer() override;
void Fire();
private:
void SetTaskRunner(scoped_refptr<SequencedTaskRunner> task_runner) override;
SimpleTestTickClock clock_;
scoped_refptr<TestSimpleTaskRunner> test_task_runner_;
};
}
#endif