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.
4
5#ifndef NET_TOOLS_QUIC_TEST_TOOLS_MOCK_QUIC_DISPATCHER_H_
6#define NET_TOOLS_QUIC_TEST_TOOLS_MOCK_QUIC_DISPATCHER_H_
7
8#include "net/base/ip_endpoint.h"
9#include "net/quic/crypto/crypto_server_config.h"
10#include "net/quic/quic_config.h"
11#include "net/quic/quic_protocol.h"
12#include "net/tools/flip_server/epoll_server.h"
13#include "net/tools/quic/quic_dispatcher.h"
14#include "testing/gmock/include/gmock/gmock.h"
15
16namespace net {
17namespace tools {
18namespace test {
19
20class MockQuicDispatcher : public QuicDispatcher {
21 public:
22  MockQuicDispatcher(const QuicConfig& config,
23                     const QuicCryptoServerConfig& crypto_config,
24                     QuicGuid guid,
25                     EpollServer* eps);
26  virtual ~MockQuicDispatcher();
27
28  MOCK_METHOD4(ProcessPacket, void(const IPEndPoint& server_address,
29                                   const IPEndPoint& client_address,
30                                   QuicGuid guid,
31                                   const QuicEncryptedPacket& packet));
32};
33
34}  // namespace test
35}  // namespace tools
36}  // namespace net
37
38#endif  // NET_TOOLS_QUIC_TEST_TOOLS_MOCK_QUIC_DISPATCHER_H_
39