blob: 075551efa61dbe61efef4bcd17c4cdccb7633e31 [file] [log] [blame]
Paul Stewartac1328e2012-07-20 11:55:40 -07001// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef SHILL_MOCK_ARP_CLIENT_H_
6#define SHILL_MOCK_ARP_CLIENT_H_
7
8#include "shill/arp_client.h"
9
10#include <gmock/gmock.h>
11
12#include "shill/arp_packet.h"
Paul Stewartac1328e2012-07-20 11:55:40 -070013
14namespace shill {
15
16class MockArpClient : public ArpClient {
17 public:
18 MockArpClient();
Ben Chan5ea763b2014-08-13 11:07:54 -070019 ~MockArpClient() override;
Paul Stewartac1328e2012-07-20 11:55:40 -070020
Paul Stewart417e5f02014-10-09 08:52:35 -070021 MOCK_METHOD0(StartReplyListener, bool());
22 MOCK_METHOD0(StartRequestListener, bool());
Paul Stewartac1328e2012-07-20 11:55:40 -070023 MOCK_METHOD0(Stop, void());
Paul Stewart1e006c62015-06-16 12:29:06 -070024 MOCK_CONST_METHOD2(ReceivePacket, bool(ArpPacket* packet,
25 ByteString* sender));
26 MOCK_CONST_METHOD1(TransmitRequest, bool(const ArpPacket& packet));
Paul Stewartac1328e2012-07-20 11:55:40 -070027 MOCK_CONST_METHOD0(socket, int());
28
29 private:
30 DISALLOW_COPY_AND_ASSIGN(MockArpClient);
31};
32
33} // namespace shill
34
35#endif // SHILL_MOCK_ARP_CLIENT_H_