#include "quiche/quic/core/tls_chlo_extractor.h"
#include <memory>
#include <optional>
#include <string>
#include <utility>
#include <vector>
#include "openssl/ssl.h"
#include "quiche/quic/core/http/quic_spdy_client_session.h"
#include "quiche/quic/core/quic_connection.h"
#include "quiche/quic/core/quic_types.h"
#include "quiche/quic/core/quic_versions.h"
#include "quiche/quic/platform/api/quic_flags.h"
#include "quiche/quic/platform/api/quic_test.h"
#include "quiche/quic/test_tools/crypto_test_utils.h"
#include "quiche/quic/test_tools/first_flight.h"
#include "quiche/quic/test_tools/quic_test_utils.h"
#include "quiche/quic/test_tools/simple_session_cache.h"
#include "quiche/common/print_elements.h"
namespace quic {
namespace test {
namespace {
static int DummyCompressFunc(SSL* , CBB* , const uint8_t* ,
size_t ) { … }
static int DummyDecompressFunc(SSL* , CRYPTO_BUFFER** ,
size_t ,
const uint8_t* , size_t ) { … }
_;
AnyNumber;
class TlsChloExtractorTest : public QuicTestWithParam<ParsedQuicVersion> { … };
INSTANTIATE_TEST_SUITE_P(…);
TEST_P(TlsChloExtractorTest, Simple) { … }
TEST_P(TlsChloExtractorTest, TlsExtensionInfo_ResumptionOnly) { … }
TEST_P(TlsChloExtractorTest, TlsExtensionInfo_ZeroRtt) { … }
TEST_P(TlsChloExtractorTest, TlsExtensionInfo_SupportedGroups) { … }
TEST_P(TlsChloExtractorTest, TlsExtensionInfo_CertCompressionAlgos) { … }
TEST_P(TlsChloExtractorTest, MultiPacket) { … }
TEST_P(TlsChloExtractorTest, MultiPacketReordered) { … }
TEST_P(TlsChloExtractorTest, MoveAssignment) { … }
TEST_P(TlsChloExtractorTest, MoveAssignmentAfterExtraction) { … }
TEST_P(TlsChloExtractorTest, MoveAssignmentBetweenPackets) { … }
}
}
}