blob: 6c73a7c8ac304712fa1bd0cf2a6e04024272fca9 [file] [log] [blame]
Chris Masone34af2182011-08-22 11:59:36 -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_IPCONFIG_
6#define SHILL_MOCK_IPCONFIG_
7
Darin Petkovef34f182011-08-26 14:14:40 -07008#include <base/basictypes.h>
Chris Masone34af2182011-08-22 11:59:36 -07009#include <gmock/gmock.h>
10
11#include "shill/ipconfig.h"
12
13namespace shill {
Chris Masone34af2182011-08-22 11:59:36 -070014
15class MockIPConfig : public IPConfig {
16 public:
17 MockIPConfig(ControlInterface *control_interface,
Darin Petkovef34f182011-08-26 14:14:40 -070018 const std::string &device_name);
19 virtual ~MockIPConfig();
Chris Masone34af2182011-08-22 11:59:36 -070020
21 MOCK_METHOD0(RequestIP, bool(void));
22 MOCK_METHOD0(RenewIP, bool(void));
23 MOCK_METHOD0(ReleaseIP, bool(void));
24
25 MOCK_METHOD2(Load, bool(StoreInterface *, const std::string &));
26 MOCK_METHOD2(Save, bool(StoreInterface *, const std::string &));
Darin Petkovef34f182011-08-26 14:14:40 -070027
28 private:
29 DISALLOW_COPY_AND_ASSIGN(MockIPConfig);
Chris Masone34af2182011-08-22 11:59:36 -070030};
31
32} // namespace shill
33
34#endif // SHILL_MOCK_IPCONFIG_