Fix test expectations differ when --gfe2_reloadable_flag_quic_stop_reading_also_stops_header_decompression is true.

These test exercise StopReading() code which with the new flag will cause extra write for stream cancellation.

PiperOrigin-RevId: 629129323
diff --git a/quiche/quic/core/http/quic_spdy_stream_test.cc b/quiche/quic/core/http/quic_spdy_stream_test.cc
index 0848648..0eb0837 100644
--- a/quiche/quic/core/http/quic_spdy_stream_test.cc
+++ b/quiche/quic/core/http/quic_spdy_stream_test.cc
@@ -2964,7 +2964,18 @@
       CloseConnection(QUIC_HTTP_INVALID_FRAME_SEQUENCE_ON_SPDY_STREAM,
                       "Unexpected DATA frame received.",
                       ConnectionCloseBehavior::SEND_CONNECTION_CLOSE_PACKET))
-      .WillOnce(InvokeWithoutArgs([this]() { stream_->StopReading(); }));
+      .WillOnce(InvokeWithoutArgs([this]() {
+        auto* qpack_decoder_stream =
+            QuicSpdySessionPeer::GetQpackDecoderSendStream(session_.get());
+        if (!GetQuicRestartFlag(quic_opport_bundle_qpack_decoder_data4) &&
+            GetQuicReloadableFlag(
+                quic_stop_reading_also_stops_header_decompression)) {
+          EXPECT_CALL(*session_,
+                      WritevData(qpack_decoder_stream->id(), _, _, _, _, _))
+              .Times(2);
+        }
+        stream_->StopReading();
+      }));
 
   std::string data = DataFrame(kDataFramePayload);
   stream_->OnStreamFrame(QuicStreamFrame(stream_->id(), false, 0, data));
@@ -3013,7 +3024,18 @@
       CloseConnection(QUIC_HTTP_INVALID_FRAME_SEQUENCE_ON_SPDY_STREAM,
                       "HEADERS frame received after trailing HEADERS.",
                       ConnectionCloseBehavior::SEND_CONNECTION_CLOSE_PACKET))
-      .WillOnce(InvokeWithoutArgs([this]() { stream_->StopReading(); }));
+      .WillOnce(InvokeWithoutArgs([this]() {
+        auto* qpack_decoder_stream =
+            QuicSpdySessionPeer::GetQpackDecoderSendStream(session_.get());
+        if (!GetQuicRestartFlag(quic_opport_bundle_qpack_decoder_data4) &&
+            GetQuicReloadableFlag(
+                quic_stop_reading_also_stops_header_decompression)) {
+          EXPECT_CALL(*session_,
+                      WritevData(qpack_decoder_stream->id(), _, _, _, _, _))
+              .Times(2);
+        }
+        stream_->StopReading();
+      }));
 
   // Receive another HEADERS frame, with no header fields.
   std::string trailers2 = HeadersFrame(Http2HeaderBlock());
@@ -3063,10 +3085,21 @@
       CloseConnection(QUIC_HTTP_INVALID_FRAME_SEQUENCE_ON_SPDY_STREAM,
                       "Unexpected DATA frame received.",
                       ConnectionCloseBehavior::SEND_CONNECTION_CLOSE_PACKET))
-      .WillOnce(InvokeWithoutArgs([this]() { stream_->StopReading(); }));
+      .WillOnce(InvokeWithoutArgs([this]() {
+        auto* qpack_decoder_stream =
+            QuicSpdySessionPeer::GetQpackDecoderSendStream(session_.get());
+        if (!GetQuicRestartFlag(quic_opport_bundle_qpack_decoder_data4) &&
+            GetQuicReloadableFlag(
+                quic_stop_reading_also_stops_header_decompression)) {
+          EXPECT_CALL(*session_,
+                      WritevData(qpack_decoder_stream->id(), _, _, _, _, _))
+              .Times(2);
+        }
+        stream_->StopReading();
+      }));
 
   // Receive more data.
-  std::string data2 = DataFrame("This payload should not be proccessed.");
+  std::string data2 = DataFrame("This payload should not be processed.");
   stream_->OnStreamFrame(QuicStreamFrame(stream_->id(), false, offset, data2));
 }