blob: a2b1223738c342e9376649531a3e321599a4d5bb [file] [log] [blame]
Chris Masone626719f2011-08-18 16:58:48 -07001// Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef SHILL_MOCK_DEVICE_INFO_
6#define SHILL_MOCK_DEVICE_INFO_
7
Darin Petkov1bdedf12011-08-26 13:32:11 -07008#include <base/basictypes.h>
Chris Masone626719f2011-08-18 16:58:48 -07009#include <gmock/gmock.h>
10
11#include "shill/device_info.h"
12
13namespace shill {
14
15class ByteString;
16class ControlInterface;
17class EventDispatcher;
18class Manager;
19
20class MockDeviceInfo : public DeviceInfo {
21 public:
22 MockDeviceInfo(ControlInterface *control_interface,
23 EventDispatcher *dispatcher,
Darin Petkov1bdedf12011-08-26 13:32:11 -070024 Manager *manager);
25 virtual ~MockDeviceInfo();
Chris Masone626719f2011-08-18 16:58:48 -070026
Paul Stewart32852962011-08-30 14:06:53 -070027 MOCK_CONST_METHOD2(GetMACAddress, bool(int, ByteString*));
Chris Masone626719f2011-08-18 16:58:48 -070028 MOCK_CONST_METHOD2(GetFlags, bool(int, unsigned int*));
Paul Stewart9a908082011-08-31 12:18:48 -070029 MOCK_CONST_METHOD2(GetAddresses, bool(int, std::vector<AddressData>*));
30 MOCK_CONST_METHOD1(FlushAddresses, void(int));
Chris Masone626719f2011-08-18 16:58:48 -070031
32 private:
33 DISALLOW_COPY_AND_ASSIGN(MockDeviceInfo);
34};
35
36} // namespace shill
37
38#endif // SHILL_MOCK_DEVICE_INFO_