Project import generated by Copybara.
PiperOrigin-RevId: 237361882
Change-Id: I109a68f44db867b20f8c6a7732b0ce657133e52a
diff --git a/quic/test_tools/quic_stream_peer.h b/quic/test_tools/quic_stream_peer.h
new file mode 100644
index 0000000..e0058ba
--- /dev/null
+++ b/quic/test_tools/quic_stream_peer.h
@@ -0,0 +1,57 @@
+// Copyright (c) 2012 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_QUIC_STREAM_PEER_H_
+#define QUICHE_QUIC_TEST_TOOLS_QUIC_STREAM_PEER_H_
+
+#include <cstdint>
+
+#include "base/macros.h"
+#include "net/third_party/quiche/src/quic/core/quic_packets.h"
+#include "net/third_party/quiche/src/quic/core/quic_stream_send_buffer.h"
+#include "net/third_party/quiche/src/quic/core/quic_stream_sequencer.h"
+#include "net/third_party/quiche/src/quic/platform/api/quic_string_piece.h"
+
+namespace quic {
+
+class QuicStream;
+class QuicSession;
+
+namespace test {
+
+class QuicStreamPeer {
+ public:
+ QuicStreamPeer() = delete;
+
+ static void SetWriteSideClosed(bool value, QuicStream* stream);
+ static void SetStreamBytesWritten(QuicStreamOffset stream_bytes_written,
+ QuicStream* stream);
+ static bool write_side_closed(QuicStream* stream);
+ static bool read_side_closed(QuicStream* stream);
+ static void CloseReadSide(QuicStream* stream);
+
+ static bool FinSent(QuicStream* stream);
+ static bool RstSent(QuicStream* stream);
+
+ static uint32_t SizeOfQueuedData(QuicStream* stream);
+
+ static bool StreamContributesToConnectionFlowControl(QuicStream* stream);
+
+ static void WriteOrBufferData(
+ QuicStream* stream,
+ QuicStringPiece data,
+ bool fin,
+ QuicReferenceCountedPointer<QuicAckListenerInterface> ack_listener);
+
+ static QuicStreamSequencer* sequencer(QuicStream* stream);
+ static QuicSession* session(QuicStream* stream);
+
+ static QuicStreamSendBuffer& SendBuffer(QuicStream* stream);
+};
+
+} // namespace test
+
+} // namespace quic
+
+#endif // QUICHE_QUIC_TEST_TOOLS_QUIC_STREAM_PEER_H_