| // Copyright (c) 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #ifndef QUICHE_QUIC_TEST_TOOLS_MOCK_QUIC_SESSION_VISITOR_H_ |
| #define QUICHE_QUIC_TEST_TOOLS_MOCK_QUIC_SESSION_VISITOR_H_ |
| |
| #include "net/third_party/quiche/src/quic/core/quic_crypto_server_stream.h" |
| #include "net/third_party/quiche/src/quic/core/quic_time_wait_list_manager.h" |
| #include "net/third_party/quiche/src/quic/platform/api/quic_test.h" |
| |
| namespace quic { |
| namespace test { |
| |
| class MockQuicSessionVisitor : public QuicTimeWaitListManager::Visitor { |
| public: |
| MockQuicSessionVisitor(); |
| MockQuicSessionVisitor(const MockQuicSessionVisitor&) = delete; |
| MockQuicSessionVisitor& operator=(const MockQuicSessionVisitor&) = delete; |
| ~MockQuicSessionVisitor() override; |
| MOCK_METHOD4(OnConnectionClosed, |
| void(QuicConnectionId connection_id, |
| QuicErrorCode error, |
| const std::string& error_details, |
| ConnectionCloseSource source)); |
| MOCK_METHOD1(OnWriteBlocked, |
| void(QuicBlockedWriterInterface* blocked_writer)); |
| MOCK_METHOD1(OnRstStreamReceived, void(const QuicRstStreamFrame& frame)); |
| MOCK_METHOD1(OnStopSendingReceived, void(const QuicStopSendingFrame& frame)); |
| MOCK_METHOD1(OnConnectionAddedToTimeWaitList, |
| void(QuicConnectionId connection_id)); |
| }; |
| |
| class MockQuicCryptoServerStreamHelper : public QuicCryptoServerStream::Helper { |
| public: |
| MockQuicCryptoServerStreamHelper(); |
| MockQuicCryptoServerStreamHelper(const MockQuicCryptoServerStreamHelper&) = |
| delete; |
| MockQuicCryptoServerStreamHelper& operator=( |
| const MockQuicCryptoServerStreamHelper&) = delete; |
| ~MockQuicCryptoServerStreamHelper() override; |
| MOCK_CONST_METHOD5(CanAcceptClientHello, |
| bool(const CryptoHandshakeMessage& message, |
| const QuicSocketAddress& client_address, |
| const QuicSocketAddress& peer_address, |
| const QuicSocketAddress& self_address, |
| std::string* error_details)); |
| }; |
| |
| } // namespace test |
| } // namespace quic |
| |
| #endif // QUICHE_QUIC_TEST_TOOLS_MOCK_QUIC_SESSION_VISITOR_H_ |