blob: e37460b2902f9571054eed296319f2bb2fde5076 [file] [log] [blame]
Alex Deymoaea4c1c2015-08-19 20:24:43 -07001//
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//
Jay Srinivasan43488792012-06-19 00:25:31 -070016
Gilad Arnoldcf175a02014-07-10 16:48:47 -070017#ifndef UPDATE_ENGINE_MOCK_CONNECTION_MANAGER_H_
18#define UPDATE_ENGINE_MOCK_CONNECTION_MANAGER_H_
Jay Srinivasan43488792012-06-19 00:25:31 -070019
20#include <gmock/gmock.h>
21
Alex Deymof6ee0162015-07-31 12:35:22 -070022#include "update_engine/connection_manager_interface.h"
Jay Srinivasan43488792012-06-19 00:25:31 -070023
24namespace chromeos_update_engine {
25
26// This class mocks the generic interface to the connection manager
27// (e.g FlimFlam, Shill, etc.) to consolidate all connection-related
28// logic in update_engine.
Alex Deymof6ee0162015-07-31 12:35:22 -070029class MockConnectionManager : public ConnectionManagerInterface {
Jay Srinivasan43488792012-06-19 00:25:31 -070030 public:
Alex Deymof6ee0162015-07-31 12:35:22 -070031 MockConnectionManager() = default;
Jay Srinivasan43488792012-06-19 00:25:31 -070032
Alex Deymo30534502015-07-20 15:06:33 -070033 MOCK_METHOD2(GetConnectionProperties,
Sen Jiang255e22b2016-05-20 16:15:29 -070034 bool(ConnectionType* out_type,
35 ConnectionTethering* out_tethering));
Jay Srinivasan43488792012-06-19 00:25:31 -070036
Sen Jiang255e22b2016-05-20 16:15:29 -070037 MOCK_CONST_METHOD2(IsUpdateAllowedOver,
38 bool(ConnectionType type, ConnectionTethering tethering));
Jay Srinivasan43488792012-06-19 00:25:31 -070039};
40
41} // namespace chromeos_update_engine
42
Gilad Arnoldcf175a02014-07-10 16:48:47 -070043#endif // UPDATE_ENGINE_MOCK_CONNECTION_MANAGER_H_