blob: a54beeffce2cf3c9563cfbdffe1285411f738619 [file] [log] [blame]
Darin Petkov633ac6f2011-07-08 13:56:13 -07001// Copyright (c) 2011 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_SOCKETS_H_
6#define SHILL_MOCK_SOCKETS_H_
7
8#include <gmock/gmock.h>
9
10#include "shill/sockets.h"
11
12namespace shill {
13
14class MockSockets : public Sockets {
15 public:
16 MOCK_METHOD3(Bind,
17 int(int sockfd, const struct sockaddr *addr, socklen_t addrlen));
18 MOCK_METHOD1(Close, int(int fd));
Darin Petkove0a312e2011-07-20 13:45:28 -070019 MOCK_METHOD3(Ioctl, int(int d, int request, void *argp));
Darin Petkov633ac6f2011-07-08 13:56:13 -070020 MOCK_METHOD4(Send,
21 ssize_t(int sockfd, const void *buf, size_t len, int flags));
22 MOCK_METHOD6(SendTo, ssize_t(int sockfd,
23 const void *buf,
24 size_t len,
25 int flags,
26 const struct sockaddr *dest_addr,
27 socklen_t addrlen));
28 MOCK_METHOD3(Socket, int(int domain, int type, int protocol));
29};
30
31} // namespace shill
32
33#endif // SHILL_MOCK_SOCKETS_H_