blob: 457c488b8a0e6b2dda6abad8aaaebb922107aca3 [file] [log] [blame]
Thieu Le3426c8f2012-01-11 17:35:11 -08001// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
Chris Masone626719f2011-08-18 16:58:48 -07002// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
Wade Guthrie60a37062013-04-02 11:39:09 -07005#ifndef SHILL_MOCK_MANAGER_H_
6#define SHILL_MOCK_MANAGER_H_
Chris Masone626719f2011-08-18 16:58:48 -07007
Alex Vakulenko8a532292014-06-16 17:18:44 -07008#include <string>
9
Ben Chancc67c522014-09-03 07:19:18 -070010#include <base/macros.h>
Chris Masone626719f2011-08-18 16:58:48 -070011#include <gmock/gmock.h>
12
13#include "shill/manager.h"
14
15namespace shill {
16
Chris Masone626719f2011-08-18 16:58:48 -070017class MockManager : public Manager {
18 public:
19 MockManager(ControlInterface *control_interface,
20 EventDispatcher *dispatcher,
Thieu Le3426c8f2012-01-11 17:35:11 -080021 Metrics *metrics,
Darin Petkovef34f182011-08-26 14:14:40 -070022 GLib *glib);
Ben Chan5ea763b2014-08-13 11:07:54 -070023 ~MockManager() override;
Chris Masone626719f2011-08-18 16:58:48 -070024
Darin Petkovf7ef50a2012-04-16 20:54:31 +020025 MOCK_METHOD0(device_info, DeviceInfo *());
Paul Stewart8c116a92012-05-02 18:30:03 -070026 MOCK_METHOD0(modem_info, ModemInfo *());
Peter Qiu1a72f542015-04-14 16:31:36 -070027#if !defined(DISABLE_WIRED_8021X)
Paul Stewart35eff132013-04-12 12:08:40 -070028 MOCK_CONST_METHOD0(ethernet_eap_provider, EthernetEapProvider *());
Peter Qiu1a72f542015-04-14 16:31:36 -070029#endif // DISABLE_WIRED_8021X
Darin Petkove4b27022012-05-16 13:28:50 +020030 MOCK_METHOD0(wimax_provider, WiMaxProvider *());
Darin Petkovf7ef50a2012-04-16 20:54:31 +020031 MOCK_METHOD0(mutable_store, PropertyStore *());
32 MOCK_CONST_METHOD0(store, const PropertyStore &());
Albert Chaulk0e1cdea2013-02-27 15:32:55 -080033 MOCK_CONST_METHOD0(run_path, const base::FilePath &());
Thieu Lefb46caf2012-03-08 11:57:15 -080034 MOCK_METHOD0(Start, void());
Thieu Le6c1e3bb2013-02-06 15:20:35 -080035 MOCK_METHOD0(Stop, void());
Paul Stewartad0e5982013-07-02 08:47:47 -070036 MOCK_METHOD3(SetProfileForService, void(const ServiceRefPtr &to_set,
37 const std::string &profile,
38 Error *error));
Paul Stewart8c116a92012-05-02 18:30:03 -070039 MOCK_METHOD1(RegisterDevice, void(const DeviceRefPtr &to_manage));
40 MOCK_METHOD1(DeregisterDevice, void(const DeviceRefPtr &to_forget));
mukesh agrawal4eb4d782011-12-05 17:34:37 +000041 MOCK_METHOD1(HasService, bool(const ServiceRefPtr &to_manage));
mukesh agrawal32399322011-09-01 10:53:43 -070042 MOCK_METHOD1(RegisterService, void(const ServiceRefPtr &to_manage));
mukesh agrawal00917ce2011-11-22 23:56:55 +000043 MOCK_METHOD1(UpdateService, void(const ServiceRefPtr &to_update));
Chris Masone6515aab2011-10-12 16:19:09 -070044 MOCK_METHOD1(DeregisterService, void(const ServiceRefPtr &to_forget));
Darin Petkova5e07ef2012-07-09 14:27:57 +020045 MOCK_METHOD1(RegisterDefaultServiceCallback,
46 int(const ServiceCallback &callback));
47 MOCK_METHOD1(DeregisterDefaultServiceCallback, void(int tag));
Darin Petkove7c6ad32012-06-29 10:22:09 +020048 MOCK_METHOD1(UpdateDevice, void(const DeviceRefPtr &to_update));
Wade Guthrie60a37062013-04-02 11:39:09 -070049 MOCK_METHOD0(UpdateWiFiProvider, void());
Paul Stewart7de7e022013-08-28 09:42:50 -070050 MOCK_METHOD1(OnDeviceGeolocationInfoUpdated,
51 void(const DeviceRefPtr &device));
Paul Stewartd215af62012-04-24 23:25:50 -070052 MOCK_METHOD1(RecheckPortalOnService, void(const ServiceRefPtr &service));
Paul Stewart75225512012-01-26 22:51:33 -080053 MOCK_METHOD2(HandleProfileEntryDeletion,
Wade Guthrie60a37062013-04-02 11:39:09 -070054 bool(const ProfileRefPtr &profile,
55 const std::string &entry_name));
Paul Stewarte2bad7c2012-03-14 08:55:33 -070056 MOCK_CONST_METHOD0(GetDefaultService, ServiceRefPtr());
Peter Qiu18213652015-04-21 16:01:51 -070057 MOCK_METHOD3(GetServiceWithStorageIdentifier,
58 ServiceRefPtr(const ProfileRefPtr &profile,
59 const std::string &entry_name,
60 Error *error));
61 MOCK_METHOD3(CreateTemporaryServiceFromProfile,
62 ServiceRefPtr(const ProfileRefPtr &profile,
63 const std::string &entry_name,
64 Error *error));
Peter Qiu700de642014-07-14 16:31:30 -070065 MOCK_CONST_METHOD0(IsConnected, bool());
Eric Shienbrood9a245532012-03-07 14:20:39 -050066 MOCK_METHOD0(UpdateEnabledTechnologies, void());
Paul Stewart20088d82012-02-16 06:58:55 -080067 MOCK_METHOD1(IsPortalDetectionEnabled, bool(Technology::Identifier tech));
Paul Stewart10ccbb32012-04-26 15:59:30 -070068 MOCK_CONST_METHOD1(IsServiceEphemeral,
69 bool(const ServiceConstRefPtr &service));
Paul Stewart22ce7652014-10-15 21:26:44 -070070 MOCK_CONST_METHOD2(IsProfileBefore,
71 bool(const ProfileRefPtr &a,
72 const ProfileRefPtr &b));
Paul Stewart3c504012013-01-17 17:49:58 -080073 MOCK_CONST_METHOD1(IsTechnologyConnected,
74 bool(Technology::Identifier tech));
Paul Stewart036dba02012-08-07 12:34:41 -070075 MOCK_CONST_METHOD1(IsTechnologyLinkMonitorEnabled,
76 bool(Technology::Identifier tech));
Ben Chan8e6b8ef2014-07-14 21:50:18 -070077 MOCK_CONST_METHOD1(IsTechnologyAutoConnectDisabled,
78 bool(Technology::Identifier tech));
Paul Stewart85aea152013-01-22 09:31:56 -080079 MOCK_CONST_METHOD1(IsDefaultProfile, bool(const StoreInterface *storage));
Wade Guthrie68d41092013-04-02 12:56:02 -070080 MOCK_METHOD3(RequestScan, void(Device::ScanType request_origin,
81 const std::string &technology, Error *error));
Paul Stewart20088d82012-02-16 06:58:55 -080082 MOCK_CONST_METHOD0(GetPortalCheckURL, const std::string &());
Paul Stewartc681fa02012-03-02 19:40:04 -080083 MOCK_CONST_METHOD0(GetPortalCheckInterval, int());
Samuel Tan2d36a6e2015-02-18 17:12:59 -080084 MOCK_METHOD0(IsSuspending, bool());
Peter Qiua900f4a2015-03-19 09:36:40 -070085 MOCK_CONST_METHOD1(GetEnabledDeviceWithTechnology,
Paul Stewart208a97e2015-05-13 09:11:12 -070086 DeviceRefPtr(Technology::Identifier technology));
Peter Qiua900f4a2015-03-19 09:36:40 -070087 MOCK_CONST_METHOD1(GetEnabledDeviceByLinkName,
Paul Stewart208a97e2015-05-13 09:11:12 -070088 DeviceRefPtr(const std::string &link_name));
Garret Kelly782cdce2015-04-01 16:39:16 -040089 MOCK_CONST_METHOD0(GetMinimumMTU, int());
Paul Stewart208a97e2015-05-13 09:11:12 -070090 MOCK_CONST_METHOD1(ShouldAcceptHostnameFrom,
91 bool(const std::string &device_name));
92
Chris Masone626719f2011-08-18 16:58:48 -070093
Paul Stewartd4f26482014-04-25 19:12:03 -070094 // Getter and setter for a mocked device info instance.
95 DeviceInfo *mock_device_info() { return mock_device_info_; }
96 void set_mock_device_info(DeviceInfo *mock_device_info) {
97 mock_device_info_ = mock_device_info;
98 }
99
Chris Masone626719f2011-08-18 16:58:48 -0700100 private:
Paul Stewartd4f26482014-04-25 19:12:03 -0700101 DeviceInfo *mock_device_info_;
102
Chris Masone626719f2011-08-18 16:58:48 -0700103 DISALLOW_COPY_AND_ASSIGN(MockManager);
104};
105
106} // namespace shill
107
Wade Guthrie60a37062013-04-02 11:39:09 -0700108#endif // SHILL_MOCK_MANAGER_H_