| #ifndef QUICHE_HTTP2_ADAPTER_MOCK_HTTP2_VISITOR_INTERFACE_H_ | 
 | #define QUICHE_HTTP2_ADAPTER_MOCK_HTTP2_VISITOR_INTERFACE_H_ | 
 |  | 
 | #include <cstdint> | 
 |  | 
 | #include "http2/adapter/http2_visitor_interface.h" | 
 | #include "common/platform/api/quiche_export.h" | 
 | #include "common/platform/api/quiche_test.h" | 
 |  | 
 | namespace http2 { | 
 | namespace adapter { | 
 | namespace test { | 
 |  | 
 | // A mock visitor class, for use in tests. | 
 | class QUICHE_NO_EXPORT MockHttp2Visitor : public Http2VisitorInterface { | 
 |  public: | 
 |   MockHttp2Visitor() { | 
 |     ON_CALL(*this, OnFrameHeader).WillByDefault(testing::Return(true)); | 
 |     ON_CALL(*this, OnBeginHeadersForStream) | 
 |         .WillByDefault(testing::Return(true)); | 
 |     ON_CALL(*this, OnHeaderForStream).WillByDefault(testing::Return(HEADER_OK)); | 
 |     ON_CALL(*this, OnEndHeadersForStream).WillByDefault(testing::Return(true)); | 
 |     ON_CALL(*this, OnBeginDataForStream).WillByDefault(testing::Return(true)); | 
 |     ON_CALL(*this, OnDataForStream).WillByDefault(testing::Return(true)); | 
 |     ON_CALL(*this, OnGoAway).WillByDefault(testing::Return(true)); | 
 |     ON_CALL(*this, OnInvalidFrame).WillByDefault(testing::Return(true)); | 
 |     ON_CALL(*this, OnMetadataForStream).WillByDefault(testing::Return(true)); | 
 |     ON_CALL(*this, OnMetadataEndForStream).WillByDefault(testing::Return(true)); | 
 |   } | 
 |  | 
 |   MOCK_METHOD(int64_t, OnReadyToSend, (absl::string_view serialized), | 
 |               (override)); | 
 |   MOCK_METHOD(void, OnConnectionError, (ConnectionError error), (override)); | 
 |   MOCK_METHOD(bool, OnFrameHeader, | 
 |               (Http2StreamId stream_id, size_t length, uint8_t type, | 
 |                uint8_t flags), | 
 |               (override)); | 
 |   MOCK_METHOD(void, OnSettingsStart, (), (override)); | 
 |   MOCK_METHOD(void, OnSetting, (Http2Setting setting), (override)); | 
 |   MOCK_METHOD(void, OnSettingsEnd, (), (override)); | 
 |   MOCK_METHOD(void, OnSettingsAck, (), (override)); | 
 |   MOCK_METHOD(bool, OnBeginHeadersForStream, (Http2StreamId stream_id), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(OnHeaderResult, OnHeaderForStream, | 
 |               (Http2StreamId stream_id, absl::string_view key, | 
 |                absl::string_view value), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(bool, OnEndHeadersForStream, (Http2StreamId stream_id), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(bool, OnBeginDataForStream, | 
 |               (Http2StreamId stream_id, size_t payload_length), (override)); | 
 |  | 
 |   MOCK_METHOD(bool, OnDataForStream, | 
 |               (Http2StreamId stream_id, absl::string_view data), (override)); | 
 |  | 
 |   MOCK_METHOD(void, OnEndStream, (Http2StreamId stream_id), (override)); | 
 |  | 
 |   MOCK_METHOD(void, | 
 |               OnRstStream, | 
 |               (Http2StreamId stream_id, Http2ErrorCode error_code), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(void, | 
 |               OnCloseStream, | 
 |               (Http2StreamId stream_id, Http2ErrorCode error_code), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(void, | 
 |               OnPriorityForStream, | 
 |               (Http2StreamId stream_id, | 
 |                Http2StreamId parent_stream_id, | 
 |                int weight, | 
 |                bool exclusive), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(void, OnPing, (Http2PingId ping_id, bool is_ack), (override)); | 
 |  | 
 |   MOCK_METHOD(void, | 
 |               OnPushPromiseForStream, | 
 |               (Http2StreamId stream_id, Http2StreamId promised_stream_id), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(bool, OnGoAway, | 
 |               (Http2StreamId last_accepted_stream_id, Http2ErrorCode error_code, | 
 |                absl::string_view opaque_data), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(void, | 
 |               OnWindowUpdate, | 
 |               (Http2StreamId stream_id, int window_increment), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(int, OnBeforeFrameSent, | 
 |               (uint8_t frame_type, Http2StreamId stream_id, size_t length, | 
 |                uint8_t flags), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(int, OnFrameSent, | 
 |               (uint8_t frame_type, Http2StreamId stream_id, size_t length, | 
 |                uint8_t flags, uint32_t error_code), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(bool, OnInvalidFrame, | 
 |               (Http2StreamId stream_id, InvalidFrameError error), (override)); | 
 |  | 
 |   MOCK_METHOD(void, | 
 |               OnBeginMetadataForStream, | 
 |               (Http2StreamId stream_id, size_t payload_length), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(bool, OnMetadataForStream, | 
 |               (Http2StreamId stream_id, absl::string_view metadata), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(bool, OnMetadataEndForStream, (Http2StreamId stream_id), | 
 |               (override)); | 
 |  | 
 |   MOCK_METHOD(void, OnErrorDebug, (absl::string_view message), (override)); | 
 | }; | 
 |  | 
 | }  // namespace test | 
 | }  // namespace adapter | 
 | }  // namespace http2 | 
 |  | 
 | #endif  // QUICHE_HTTP2_ADAPTER_MOCK_HTTP2_VISITOR_INTERFACE_H_ |