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_NET_MOCK_TIME_H_ 18#define SHILL_NET_MOCK_TIME_H_ 19 20#include "shill/net/shill_time.h" 21 22#include <base/macros.h> 23#include <gmock/gmock.h> 24 25namespace shill { 26 27class MockTime : public Time { 28 public: 29 MockTime() {} 30 ~MockTime() override {} 31 32 MOCK_METHOD1(GetSecondsMonotonic, bool(time_t* seconds)); 33 MOCK_METHOD1(GetSecondsBoottime, bool(time_t* seconds)); 34 MOCK_METHOD1(GetTimeMonotonic, int(struct timeval* tv)); 35 MOCK_METHOD1(GetTimeBoottime, int(struct timeval* tv)); 36 MOCK_METHOD2(GetTimeOfDay, int(struct timeval* tv, struct timezone* tz)); 37 MOCK_METHOD0(GetNow, Timestamp()); 38 MOCK_CONST_METHOD0(GetSecondsSinceEpoch, time_t()); 39 40 private: 41 DISALLOW_COPY_AND_ASSIGN(MockTime); 42}; 43 44} // namespace shill 45 46#endif // SHILL_NET_MOCK_TIME_H_ 47