Commit 69957e94 authored by Subodh Iyengar's avatar Subodh Iyengar Committed by Facebook Github Bot

Make method virtual

Summary:
Turns out we needed this method to be virtual to mock it out in tests because it makes
a bunch of syscalls.

Reviewed By: yangchi

Differential Revision: D7665938

fbshipit-source-id: 1ae5768ade2c927929f5cb1f9e1ad62dad1ba237
parent 6c7eaddb
...@@ -222,7 +222,7 @@ class AsyncUDPSocket : public EventHandler { ...@@ -222,7 +222,7 @@ class AsyncUDPSocket : public EventHandler {
/** /**
* Callback for receiving errors on the UDP sockets * Callback for receiving errors on the UDP sockets
*/ */
void setErrMessageCallback(ErrMessageCallback* errMessageCallback); virtual void setErrMessageCallback(ErrMessageCallback* errMessageCallback);
protected: protected:
virtual ssize_t sendmsg(int socket, const struct msghdr* message, int flags) { virtual ssize_t sendmsg(int socket, const struct msghdr* message, int flags) {
......
...@@ -18,7 +18,8 @@ ...@@ -18,7 +18,8 @@
#include <folly/io/async/AsyncUDPSocket.h> #include <folly/io/async/AsyncUDPSocket.h>
#include <folly/portability/GMock.h> #include <folly/portability/GMock.h>
namespace folly { namespace test { namespace folly {
namespace test {
struct MockAsyncUDPSocket : public AsyncUDPSocket { struct MockAsyncUDPSocket : public AsyncUDPSocket {
explicit MockAsyncUDPSocket(EventBase* evb) : AsyncUDPSocket(evb) {} explicit MockAsyncUDPSocket(EventBase* evb) : AsyncUDPSocket(evb) {}
...@@ -28,11 +29,11 @@ struct MockAsyncUDPSocket : public AsyncUDPSocket { ...@@ -28,11 +29,11 @@ struct MockAsyncUDPSocket : public AsyncUDPSocket {
MOCK_METHOD1(bind, void(const SocketAddress&)); MOCK_METHOD1(bind, void(const SocketAddress&));
MOCK_METHOD2(setFD, void(int, AsyncUDPSocket::FDOwnership)); MOCK_METHOD2(setFD, void(int, AsyncUDPSocket::FDOwnership));
MOCK_METHOD2( MOCK_METHOD2(
write, write,
ssize_t(const SocketAddress&, const std::unique_ptr<IOBuf>&)); ssize_t(const SocketAddress&, const std::unique_ptr<IOBuf>&));
MOCK_METHOD3( MOCK_METHOD3(
writev, writev,
ssize_t(const SocketAddress&, const struct iovec*, size_t)); ssize_t(const SocketAddress&, const struct iovec*, size_t));
MOCK_METHOD1(resumeRead, void(ReadCallback*)); MOCK_METHOD1(resumeRead, void(ReadCallback*));
MOCK_METHOD0(pauseRead, void()); MOCK_METHOD0(pauseRead, void());
MOCK_METHOD0(close, void()); MOCK_METHOD0(close, void());
...@@ -40,6 +41,8 @@ struct MockAsyncUDPSocket : public AsyncUDPSocket { ...@@ -40,6 +41,8 @@ struct MockAsyncUDPSocket : public AsyncUDPSocket {
MOCK_METHOD1(setReusePort, void(bool)); MOCK_METHOD1(setReusePort, void(bool));
MOCK_METHOD1(setReuseAddr, void(bool)); MOCK_METHOD1(setReuseAddr, void(bool));
MOCK_METHOD1(dontFragment, void(bool)); MOCK_METHOD1(dontFragment, void(bool));
MOCK_METHOD1(setErrMessageCallback, void(ErrMessageCallback*));
}; };
}} } // namespace test
} // namespace folly
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment