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_POWER_MANAGER_H_ 18#define SHILL_MOCK_POWER_MANAGER_H_ 19 20#include <string> 21 22#include <base/macros.h> 23#include <gmock/gmock.h> 24 25#include "shill/power_manager.h" 26 27namespace shill { 28 29class ControlInterface; 30 31class MockPowerManager : public PowerManager { 32 public: 33 MockPowerManager(EventDispatcher* dispatcher, 34 ControlInterface* control_interface); 35 ~MockPowerManager() override; 36 37 MOCK_METHOD0(ReportSuspendReadiness, bool()); 38 MOCK_METHOD0(ReportDarkSuspendReadiness, bool()); 39 MOCK_METHOD4( 40 Start, 41 void(base::TimeDelta suspend_delay, 42 const PowerManager::SuspendImminentCallback& imminent_callback, 43 const PowerManager::SuspendDoneCallback& done_callback, 44 const PowerManager::DarkSuspendImminentCallback& dark_imminent)); 45 MOCK_METHOD0(Stop, void()); 46 47 private: 48 DISALLOW_COPY_AND_ASSIGN(MockPowerManager); 49}; 50 51} // namespace shill 52 53#endif // SHILL_MOCK_POWER_MANAGER_H_ 54