blob: fe1c874d31498242d50b6ce50228b3ac8b0a24af [file] [log] [blame]
mukesh agrawal9da07772013-05-15 14:15:17 -07001// Copyright (c) 2012 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_VIRTUAL_DEVICE_H_
6#define SHILL_MOCK_VIRTUAL_DEVICE_H_
7
8#include <gmock/gmock.h>
9
10#include "shill/virtual_device.h"
11
12namespace shill {
13
14class MockVirtualDevice : public VirtualDevice {
15 public:
16 MockVirtualDevice(ControlInterface *control,
17 EventDispatcher *dispatcher,
18 Metrics *metrics,
19 Manager *manager,
20 const std::string &link_name,
21 int interface_index,
22 Technology::Identifier technology);
23 virtual ~MockVirtualDevice();
24
25 MOCK_METHOD2(Stop,
26 void(Error *error, const EnabledStateChangedCallback &callback));
27 MOCK_METHOD1(UpdateIPConfig,
28 void(const IPConfig::Properties &properties));
29 MOCK_METHOD0(DropConnection, void());
30 MOCK_METHOD1(SetEnabled, void(bool));
31
32 private:
33 DISALLOW_COPY_AND_ASSIGN(MockVirtualDevice);
34};
35
36} // namespace shill
37
38#endif // SHILL_MOCK_VIRTUAL_DEVICE_H_