Make QuicSpdyStreamBodyBuffer manage consuming HEADERS frame header and payload.
Rename QuicSpdyStreamBodyBuffer::OnDataHeader(), update documentation, and rely
on it to calculate when HEADERS frame header and payload bytes need to be
consumed (but still call QuicStreamSequencer::MarkConsumed() from
QuicSpdyStream). Rip out MaybeMarkHeadersBytesConsumed() and
headers_bytes_to_be_marked_consumed_ from QuicSpdyStream, which are hacky and
cannot be extended to take care of PUSH_PROMISE frames and unknown frames.
gfe-relnote: n/a, change to QUIC v99-only code. Protected by existing disabled gfe2_reloadable_flag_quic_enable_version_99.
PiperOrigin-RevId: 260059055
Change-Id: I0b457e57e81a12693726a82050dafcefb08e96c8
diff --git a/quic/core/http/quic_spdy_stream_test.cc b/quic/core/http/quic_spdy_stream_test.cc
index 20c1b65..5b2ca81 100644
--- a/quic/core/http/quic_spdy_stream_test.cc
+++ b/quic/core/http/quic_spdy_stream_test.cc
@@ -2098,8 +2098,7 @@
HeadersFrame(QuicTextUtils::HexDecode("00002a94e703626172"));
// All HEADERS frame bytes are consumed even if the frame is not received
- // completely (as long as at least some of the payload is received, which is
- // an implementation detail that should not be tested).
+ // completely.
OnStreamFrame(QuicStringPiece(headers).substr(0, headers.size() - 1));
EXPECT_EQ(headers.size() - 1, NewlyConsumedBytes());