1 // Copyright (c) 2016 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 QUICHE_QUIC_TEST_TOOLS_MOCK_QUIC_SESSION_VISITOR_H_ 6 #define QUICHE_QUIC_TEST_TOOLS_MOCK_QUIC_SESSION_VISITOR_H_ 7 8 #include "quiche/quic/core/quic_crypto_server_stream_base.h" 9 #include "quiche/quic/core/quic_time_wait_list_manager.h" 10 #include "quiche/quic/platform/api/quic_test.h" 11 12 namespace quic { 13 namespace test { 14 15 class MockQuicSessionVisitor : public QuicTimeWaitListManager::Visitor { 16 public: 17 MockQuicSessionVisitor(); 18 MockQuicSessionVisitor(const MockQuicSessionVisitor&) = delete; 19 MockQuicSessionVisitor& operator=(const MockQuicSessionVisitor&) = delete; 20 ~MockQuicSessionVisitor() override; 21 MOCK_METHOD(void, OnConnectionClosed, 22 (QuicConnectionId connection_id, QuicErrorCode error, 23 const std::string& error_details, ConnectionCloseSource source), 24 (override)); 25 MOCK_METHOD(void, OnWriteBlocked, (QuicBlockedWriterInterface*), (override)); 26 MOCK_METHOD(void, OnRstStreamReceived, (const QuicRstStreamFrame& frame), 27 (override)); 28 MOCK_METHOD(void, OnStopSendingReceived, (const QuicStopSendingFrame& frame), 29 (override)); 30 MOCK_METHOD(bool, TryAddNewConnectionId, 31 (const QuicConnectionId& server_connection_id, 32 const QuicConnectionId& new_connection_id), 33 (override)); 34 MOCK_METHOD(void, OnConnectionIdRetired, 35 (const quic::QuicConnectionId& server_connection_id), (override)); 36 MOCK_METHOD(void, OnConnectionAddedToTimeWaitList, 37 (QuicConnectionId connection_id), (override)); 38 MOCK_METHOD(void, OnServerPreferredAddressAvailable, 39 (const QuicSocketAddress& server_preferred_address), (override)); 40 }; 41 42 class MockQuicCryptoServerStreamHelper 43 : public QuicCryptoServerStreamBase::Helper { 44 public: 45 MockQuicCryptoServerStreamHelper(); 46 MockQuicCryptoServerStreamHelper(const MockQuicCryptoServerStreamHelper&) = 47 delete; 48 MockQuicCryptoServerStreamHelper& operator=( 49 const MockQuicCryptoServerStreamHelper&) = delete; 50 ~MockQuicCryptoServerStreamHelper() override; 51 MOCK_METHOD(bool, CanAcceptClientHello, 52 (const CryptoHandshakeMessage& message, 53 const QuicSocketAddress& client_address, 54 const QuicSocketAddress& peer_address, 55 const QuicSocketAddress& self_address, std::string*), 56 (const, override)); 57 }; 58 59 } // namespace test 60 } // namespace quic 61 62 #endif // QUICHE_QUIC_TEST_TOOLS_MOCK_QUIC_SESSION_VISITOR_H_ 63