• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //
2 // Copyright (C) 2012 The Android Open Source Project
3 //
4 // Licensed under the Apache License, Version 2.0 (the "License");
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 //      http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15 //
16 
17 #ifndef SHILL_MOCK_MANAGER_H_
18 #define SHILL_MOCK_MANAGER_H_
19 
20 #include <string>
21 #include <vector>
22 
23 #include <base/macros.h>
24 #include <gmock/gmock.h>
25 
26 #include "shill/manager.h"
27 
28 namespace shill {
29 
30 class MockManager : public Manager {
31  public:
32   MockManager(ControlInterface* control_interface,
33               EventDispatcher* dispatcher,
34               Metrics* metrics);
35   ~MockManager() override;
36 
37   MOCK_METHOD0(device_info, DeviceInfo*());
38   MOCK_METHOD0(modem_info, ModemInfo*());
39 #if !defined(DISABLE_WIRED_8021X)
40   MOCK_CONST_METHOD0(ethernet_eap_provider, EthernetEapProvider*());
41 #endif  // DISABLE_WIRED_8021X
42   MOCK_METHOD0(wimax_provider, WiMaxProvider*());
43   MOCK_METHOD0(mutable_store, PropertyStore*());
44   MOCK_CONST_METHOD0(store, const PropertyStore&());
45   MOCK_CONST_METHOD0(run_path, const base::FilePath&());
46   MOCK_METHOD0(Start, void());
47   MOCK_METHOD0(Stop, void());
48   MOCK_METHOD3(SetProfileForService, void(const ServiceRefPtr& to_set,
49                                           const std::string& profile,
50                                           Error* error));
51   MOCK_METHOD1(RegisterDevice, void(const DeviceRefPtr& to_manage));
52   MOCK_METHOD1(DeregisterDevice, void(const DeviceRefPtr& to_forget));
53   MOCK_METHOD1(HasService, bool(const ServiceRefPtr& to_manage));
54   MOCK_METHOD1(RegisterService, void(const ServiceRefPtr& to_manage));
55   MOCK_METHOD1(UpdateService, void(const ServiceRefPtr& to_update));
56   MOCK_METHOD1(DeregisterService, void(const ServiceRefPtr& to_forget));
57   MOCK_METHOD1(RegisterDefaultServiceCallback,
58                int(const ServiceCallback& callback));
59   MOCK_METHOD1(DeregisterDefaultServiceCallback, void(int tag));
60   MOCK_METHOD1(UpdateDevice, void(const DeviceRefPtr& to_update));
61   MOCK_METHOD0(UpdateWiFiProvider, void());
62   MOCK_METHOD1(OnDeviceGeolocationInfoUpdated,
63                void(const DeviceRefPtr& device));
64   MOCK_METHOD1(RecheckPortalOnService, void(const ServiceRefPtr& service));
65   MOCK_METHOD2(HandleProfileEntryDeletion,
66                bool(const ProfileRefPtr& profile,
67                     const std::string& entry_name));
68   MOCK_CONST_METHOD0(GetDefaultService, ServiceRefPtr());
69   MOCK_METHOD3(GetServiceWithStorageIdentifier,
70                ServiceRefPtr(const ProfileRefPtr& profile,
71                              const std::string& entry_name,
72                              Error* error));
73   MOCK_METHOD3(CreateTemporaryServiceFromProfile,
74                ServiceRefPtr(const ProfileRefPtr& profile,
75                              const std::string& entry_name,
76                              Error* error));
77   MOCK_CONST_METHOD0(IsConnected, bool());
78   MOCK_METHOD0(UpdateEnabledTechnologies, void());
79   MOCK_METHOD1(IsPortalDetectionEnabled, bool(Technology::Identifier tech));
80   MOCK_CONST_METHOD1(IsServiceEphemeral,
81                      bool(const ServiceConstRefPtr& service));
82   MOCK_CONST_METHOD2(IsProfileBefore,
83                      bool(const ProfileRefPtr& a,
84                           const ProfileRefPtr& b));
85   MOCK_CONST_METHOD1(IsTechnologyConnected,
86                      bool(Technology::Identifier tech));
87   MOCK_CONST_METHOD1(IsTechnologyLinkMonitorEnabled,
88                      bool(Technology::Identifier tech));
89   MOCK_CONST_METHOD1(IsTechnologyAutoConnectDisabled,
90                      bool(Technology::Identifier tech));
91   MOCK_CONST_METHOD1(IsDefaultProfile, bool(const StoreInterface* storage));
92   MOCK_METHOD3(RequestScan, void(Device::ScanType request_origin,
93                                  const std::string& technology, Error* error));
94   MOCK_CONST_METHOD0(GetPortalCheckURL, const std::string&());
95   MOCK_CONST_METHOD0(GetPortalCheckInterval, int());
96   MOCK_METHOD0(IsSuspending, bool());
97   MOCK_CONST_METHOD1(GetEnabledDeviceWithTechnology,
98                      DeviceRefPtr(Technology::Identifier technology));
99   MOCK_CONST_METHOD1(GetEnabledDeviceByLinkName,
100                      DeviceRefPtr(const std::string& link_name));
101   MOCK_CONST_METHOD0(GetMinimumMTU, int());
102   MOCK_CONST_METHOD1(ShouldAcceptHostnameFrom,
103                      bool(const std::string& device_name));
104   MOCK_CONST_METHOD1(IsDHCPv6EnabledForDevice,
105                      bool(const std::string& device_name));
106   MOCK_METHOD1(SetBlacklistedDevices,
107                void(const std::vector<std::string>& blacklisted_devices));
108   MOCK_METHOD1(SetDHCPv6EnabledDevices,
109                void(const std::vector<std::string>& device_list));
110   MOCK_METHOD2(SetTechnologyOrder,
111                void(const std::string& order, Error* error));
112   MOCK_METHOD1(SetIgnoreUnknownEthernet, void(bool ignore));
113   MOCK_METHOD1(SetStartupPortalList, void(const std::string& portal_list));
114   MOCK_METHOD0(SetPassiveMode, void());
115   MOCK_METHOD1(SetPrependDNSServers,
116                void(const std::string& prepend_dns_servers));
117   MOCK_METHOD1(SetMinimumMTU, void(const int mtu));
118   MOCK_METHOD1(SetAcceptHostnameFrom, void(const std::string& hostname_from));
119   MOCK_CONST_METHOD0(ignore_unknown_ethernet, bool());
120   MOCK_CONST_METHOD1(FilterPrependDNSServersByFamily,
121                      std::vector<std::string>(IPAddress::Family family));
122   MOCK_METHOD0(OnInnerDevicesChanged, void());
123   MOCK_METHOD3(ClaimDevice,
124                void(const std::string& claimer_name,
125                     const std::string& interface_name, Error* error));
126   MOCK_METHOD4(ReleaseDevice, void(const std::string& claimer_name,
127                                    const std::string& interface_name,
128                                    bool* claimer_removed, Error* error));
129   MOCK_METHOD0(OnDeviceClaimerVanished, void());
130 #if !defined(DISABLE_WIFI) && defined(__BRILLO__)
131   MOCK_METHOD2(SetupApModeInterface,
132                bool(std::string* out_interface_name, Error* error));
133   MOCK_METHOD2(SetupStationModeInterface,
134                bool(std::string* out_interface_name, Error* error));
135   MOCK_METHOD0(OnApModeSetterVanished, void());
136 #endif  // !DISABLE_WIFI && __BRILLO__
137 
138   // Getter and setter for a mocked device info instance.
mock_device_info()139   DeviceInfo* mock_device_info() { return mock_device_info_; }
set_mock_device_info(DeviceInfo * mock_device_info)140   void set_mock_device_info(DeviceInfo* mock_device_info) {
141       mock_device_info_ = mock_device_info;
142   }
143 
144  private:
145   DeviceInfo* mock_device_info_;
146 
147   DISALLOW_COPY_AND_ASSIGN(MockManager);
148 };
149 
150 }  // namespace shill
151 
152 #endif  // SHILL_MOCK_MANAGER_H_
153