1 // Copyright 2013 The Chromium 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.
5 #ifndef TESTS_NACL_IO_TEST_MOCK_KERNEL_PROXY_H_
6 #define TESTS_NACL_IO_TEST_MOCK_KERNEL_PROXY_H_
10 #include "gmock/gmock.h"
12 #include "nacl_io/kernel_proxy.h"
13 #include "nacl_io/ossignal.h"
14 #include "nacl_io/ossocket.h"
15 #include "nacl_io/ostermios.h"
17 class MockKernelProxy
: public nacl_io::KernelProxy
{
21 MOCK_METHOD2(access
, int(const char*, int));
22 MOCK_METHOD1(chdir
, int(const char*));
23 MOCK_METHOD2(chmod
, int(const char*, mode_t
));
24 MOCK_METHOD3(chown
, int(const char*, uid_t
, gid_t
));
25 MOCK_METHOD1(close
, int(int));
26 MOCK_METHOD1(dup
, int(int));
27 MOCK_METHOD2(dup2
, int(int, int));
28 MOCK_METHOD1(fchdir
, int(int));
29 MOCK_METHOD2(fchmod
, int(int, mode_t
));
30 MOCK_METHOD3(fchown
, int(int, uid_t
, gid_t
));
31 MOCK_METHOD3(fcntl
, int(int, int, va_list));
32 MOCK_METHOD1(fdatasync
, int(int));
33 MOCK_METHOD2(ftruncate
, int(int, off_t
));
34 MOCK_METHOD2(fstat
, int(int, struct stat
*));
35 MOCK_METHOD1(fsync
, int(int));
36 MOCK_METHOD2(futimens
, int(int, const struct timespec
[2]));
37 MOCK_METHOD2(getcwd
, char*(char*, size_t));
38 MOCK_METHOD3(getdents
, int(int, struct dirent
*, unsigned int));
39 MOCK_METHOD1(getwd
, char*(char*));
40 MOCK_METHOD3(ioctl
, int(int, int, va_list));
41 MOCK_METHOD1(isatty
, int(int));
42 MOCK_METHOD2(kill
, int(int, int));
43 MOCK_METHOD3(lchown
, int(const char*, uid_t
, gid_t
));
44 MOCK_METHOD2(link
, int(const char*, const char*));
45 MOCK_METHOD3(lseek
, off_t(int, off_t
, int));
46 MOCK_METHOD2(lstat
, int(const char*, struct stat
*));
47 MOCK_METHOD2(mkdir
, int(const char*, mode_t
));
48 MOCK_METHOD6(mmap
, void*(void*, size_t, int, int, int, size_t));
49 MOCK_METHOD5(mount
, int(const char*, const char*, const char*, unsigned long,
51 MOCK_METHOD2(munmap
, int(void*, size_t));
52 MOCK_METHOD3(open
, int(const char*, int, mode_t
));
53 MOCK_METHOD1(open_resource
, int(const char*));
54 MOCK_METHOD1(pipe
, int(int[2]));
55 MOCK_METHOD3(read
, ssize_t(int, void*, size_t));
56 MOCK_METHOD3(readlink
, int(const char*, char*, size_t count
));
57 MOCK_METHOD1(remove
, int(const char*));
58 MOCK_METHOD2(rename
, int(const char*, const char*));
59 MOCK_METHOD1(rmdir
, int(const char*));
60 MOCK_METHOD3(sigaction
, int(int, const struct sigaction
*, struct sigaction
*));
61 MOCK_METHOD2(stat
, int(const char*, struct stat
*));
62 MOCK_METHOD2(symlink
, int(const char*, const char*));
63 MOCK_METHOD2(tcflush
, int(int, int));
64 MOCK_METHOD2(tcgetattr
, int(int, struct termios
*));
65 MOCK_METHOD3(tcsetattr
, int(int, int, const struct termios
*));
66 MOCK_METHOD2(truncate
, int(const char*, off_t
));
67 MOCK_METHOD1(umount
, int(const char*));
68 MOCK_METHOD1(unlink
, int(const char*));
69 MOCK_METHOD2(utimens
, int(const char*, const struct timespec
[2]));
70 MOCK_METHOD3(write
, ssize_t(int, const void*, size_t));
72 #ifdef PROVIDES_SOCKET_API
73 MOCK_METHOD3(poll
, int(struct pollfd
*, nfds_t
, int));
74 MOCK_METHOD5(select
, int(int, fd_set
*, fd_set
*, fd_set
*, struct timeval
*));
76 // Socket support functions
77 MOCK_METHOD3(accept
, int(int, struct sockaddr
*, socklen_t
*));
78 MOCK_METHOD3(bind
, int(int, const struct sockaddr
*, socklen_t
));
79 MOCK_METHOD3(connect
, int(int, const struct sockaddr
*, socklen_t
));
80 MOCK_METHOD1(gethostbyname
, struct hostent
*(const char*));
81 MOCK_METHOD3(getpeername
, int(int, struct sockaddr
*, socklen_t
*));
82 MOCK_METHOD3(getsockname
, int(int, struct sockaddr
*, socklen_t
*));
83 MOCK_METHOD5(getsockopt
, int(int, int, int, void*, socklen_t
*));
84 MOCK_METHOD2(listen
, int(int, int));
85 MOCK_METHOD4(recv
, ssize_t(int, void*, size_t, int));
86 MOCK_METHOD6(recvfrom
, ssize_t(int, void*, size_t, int,
87 struct sockaddr
*, socklen_t
*));
88 MOCK_METHOD3(recvmsg
, ssize_t(int, struct msghdr
*, int));
89 MOCK_METHOD4(send
, ssize_t(int, const void*, size_t, int));
90 MOCK_METHOD6(sendto
, ssize_t(int, const void*, size_t, int,
91 const struct sockaddr
*, socklen_t
));
92 MOCK_METHOD3(sendmsg
, ssize_t(int, const struct msghdr
*, int));
93 MOCK_METHOD5(setsockopt
, int(int, int, int, const void*, socklen_t
));
94 MOCK_METHOD2(shutdown
, int(int, int));
95 MOCK_METHOD3(socket
, int(int, int, int));
96 MOCK_METHOD4(socketpair
, int(int, int, int, int*));
97 #endif // PROVIDES_SOCKET_API
100 #endif // TESTS_NACL_IO_TEST_MOCK_KERNEL_PROXY_H_