blob: df456a04f8030aa5ec08aa7b5965d0887750332c [file] [log] [blame]
// Copyright (c) 2012 The Chromium OS 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 SHILL_MOCK_EVENT_DISPATCHER_H_
#define SHILL_MOCK_EVENT_DISPATCHER_H_
#include <base/macros.h>
#include <gmock/gmock.h>
#include "shill/event_dispatcher.h"
namespace shill {
class MockEventDispatcher : public EventDispatcher {
public:
MockEventDispatcher();
~MockEventDispatcher() override;
MOCK_METHOD0(DispatchForever, void());
MOCK_METHOD0(DispatchPendingEvents, void());
MOCK_METHOD1(PostTask, bool(const base::Closure &task));
MOCK_METHOD2(PostDelayedTask, bool(const base::Closure &task,
int64_t delay_ms));
MOCK_METHOD3(CreateInputHandler, IOHandler *(
int fd,
const IOHandler::InputCallback &input_callback,
const IOHandler::ErrorCallback &error_callback));
MOCK_METHOD3(CreateReadyHandler,
IOHandler *(int fd,
IOHandler::ReadyMode mode,
const base::Callback<void(int)> &callback));
private:
DISALLOW_COPY_AND_ASSIGN(MockEventDispatcher);
};
} // namespace shill
#endif // SHILL_MOCK_EVENT_DISPATCHER_H_