1//
2// Copyright (C) 2015 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_ACTIVE_LINK_MONITOR_H_
18#define SHILL_MOCK_ACTIVE_LINK_MONITOR_H_
19
20#include "shill/active_link_monitor.h"
21
22#include <base/macros.h>
23#include <gmock/gmock.h>
24
25namespace shill {
26
27class Connection;
28
29class MockActiveLinkMonitor : public ActiveLinkMonitor {
30 public:
31  MockActiveLinkMonitor();
32  ~MockActiveLinkMonitor() override;
33
34  MOCK_METHOD1(Start, bool(int));
35  MOCK_METHOD0(Stop, void());
36  MOCK_CONST_METHOD0(gateway_mac_address, const ByteString&());
37  MOCK_METHOD1(set_gateway_mac_address, void(const ByteString&));
38  MOCK_CONST_METHOD0(gateway_supports_unicast_arp, bool());
39  MOCK_METHOD1(set_gateway_supports_unicast_arp, void(bool));
40
41 private:
42  DISALLOW_COPY_AND_ASSIGN(MockActiveLinkMonitor);
43};
44
45}  // namespace shill
46
47#endif  // SHILL_MOCK_ACTIVE_LINK_MONITOR_H_
48