Minor QuicSimpleServerSessionServerPushTest refactor.

This is prework for cr/231494986.

gfe-relnote: n/a.  Test-only change, no functional change.
PiperOrigin-RevId: 238511157
Change-Id: I0ac8321d1d62a4198a0a405df2b7c14457377352
diff --git a/quic/tools/quic_simple_server_session_test.cc b/quic/tools/quic_simple_server_session_test.cc
index 9a4996a..3ccd9e4 100644
--- a/quic/tools/quic_simple_server_session_test.cc
+++ b/quic/tools/quic_simple_server_session_test.cc
@@ -592,8 +592,8 @@
   // them by sending PUSH_PROMISE for all and sending push responses for as much
   // as possible(limited by kMaxStreamsForTest).
   // If |num_resources| > kMaxStreamsForTest, the left over will be queued.
-  // Returns the length of the data frame header, 0 if the version doesn't
-  // require header.
+  // Returns the length of the DATA frame header, or 0 if the version does not
+  // use DATA frames.
   QuicByteCount PromisePushResources(size_t num_resources) {
     // testing::InSequence seq;
     // To prevent push streams from being closed the response need to be larger
@@ -606,7 +606,7 @@
     std::string partial_push_resource_path = "/server_push_src";
     std::list<QuicBackendResponse::ServerPushInfo> push_resources;
     std::string scheme = "http";
-    QuicByteCount header_length = 0;
+    QuicByteCount data_frame_header_length = 0;
     for (unsigned int i = 1; i <= num_resources; ++i) {
       QuicStreamId stream_id = GetNthServerInitiatedUnidirectionalId(i - 1);
       std::string path =
@@ -615,13 +615,13 @@
       QuicUrl resource_url = QuicUrl(url);
       std::string body(body_size, 'a');
       std::string data;
-      header_length = 0;
+      data_frame_header_length = 0;
       if (VersionHasDataFrameHeader(connection_->transport_version())) {
         HttpEncoder encoder;
         std::unique_ptr<char[]> buffer;
-        header_length =
+        data_frame_header_length =
             encoder.SerializeDataFrameHeader(body.length(), &buffer);
-        std::string header = std::string(buffer.get(), header_length);
+        std::string header(buffer.get(), data_frame_header_length);
         data = header + body;
       } else {
         data = body;
@@ -639,21 +639,23 @@
         // |kMaxStreamsForTest| promised responses should be sent.
         // Since flow control window is smaller than response body, not the
         // whole body will be sent.
+        QuicStreamOffset offset = 0;
         if (VersionHasDataFrameHeader(connection_->transport_version())) {
           EXPECT_CALL(*connection_,
-                      SendStreamData(stream_id, header_length, 0, NO_FIN));
+                      SendStreamData(stream_id, data_frame_header_length,
+                                     offset, NO_FIN));
+          offset += data_frame_header_length;
         }
-        EXPECT_CALL(*connection_,
-                    SendStreamData(stream_id, _, header_length, NO_FIN))
+        EXPECT_CALL(*connection_, SendStreamData(stream_id, _, offset, NO_FIN))
             .WillOnce(Return(QuicConsumedData(
-                kStreamFlowControlWindowSize - header_length, false)));
+                kStreamFlowControlWindowSize - offset, false)));
         EXPECT_CALL(*session_, SendBlocked(stream_id));
       }
     }
     session_->PromisePushResources(request_url, push_resources,
                                    GetNthClientInitiatedBidirectionalId(0),
                                    request_headers);
-    return header_length;
+    return data_frame_header_length;
   }
 
   void ConsumeHeadersStreamData() {
@@ -684,20 +686,23 @@
        HandlePromisedPushRequestsAfterStreamDraining) {
   ConsumeHeadersStreamData();
   size_t num_resources = kMaxStreamsForTest + 1;
-  QuicByteCount header_length = PromisePushResources(num_resources);
+  QuicByteCount data_frame_header_length = PromisePushResources(num_resources);
   QuicStreamId next_out_going_stream_id =
       GetNthServerInitiatedUnidirectionalId(kMaxStreamsForTest);
 
   // After an open stream is marked draining, a new stream is expected to be
   // created and a response sent on the stream.
+  QuicStreamOffset offset = 0;
   if (VersionHasDataFrameHeader(connection_->transport_version())) {
-    EXPECT_CALL(*connection_, SendStreamData(next_out_going_stream_id,
-                                             header_length, 0, NO_FIN));
+    EXPECT_CALL(*connection_,
+                SendStreamData(next_out_going_stream_id,
+                               data_frame_header_length, offset, NO_FIN));
+    offset += data_frame_header_length;
   }
-  EXPECT_CALL(*connection_, SendStreamData(next_out_going_stream_id, _,
-                                           header_length, NO_FIN))
-      .WillOnce(Return(QuicConsumedData(
-          kStreamFlowControlWindowSize - header_length, false)));
+  EXPECT_CALL(*connection_,
+              SendStreamData(next_out_going_stream_id, _, offset, NO_FIN))
+      .WillOnce(Return(
+          QuicConsumedData(kStreamFlowControlWindowSize - offset, false)));
   EXPECT_CALL(*session_, SendBlocked(next_out_going_stream_id));
 
   if (IsVersion99()) {
@@ -732,7 +737,7 @@
         .WillOnce(Invoke(
             this, &QuicSimpleServerSessionServerPushTest::ClearControlFrame));
   }
-  QuicByteCount header_length = PromisePushResources(num_resources);
+  QuicByteCount data_frame_header_length = PromisePushResources(num_resources);
 
   // Reset the last stream in the queue. It should be marked cancelled.
   QuicStreamId stream_got_reset =
@@ -753,14 +758,16 @@
   QuicStreamId stream_not_reset =
       GetNthServerInitiatedUnidirectionalId(kMaxStreamsForTest);
   InSequence s;
+  QuicStreamOffset offset = 0;
   if (VersionHasDataFrameHeader(connection_->transport_version())) {
     EXPECT_CALL(*connection_,
-                SendStreamData(stream_not_reset, header_length, 0, NO_FIN));
+                SendStreamData(stream_not_reset, data_frame_header_length,
+                               offset, NO_FIN));
+    offset += data_frame_header_length;
   }
-  EXPECT_CALL(*connection_,
-              SendStreamData(stream_not_reset, _, header_length, NO_FIN))
-      .WillOnce(Return(QuicConsumedData(
-          kStreamFlowControlWindowSize - header_length, false)));
+  EXPECT_CALL(*connection_, SendStreamData(stream_not_reset, _, offset, NO_FIN))
+      .WillOnce(Return(
+          QuicConsumedData(kStreamFlowControlWindowSize - offset, false)));
   EXPECT_CALL(*session_, SendBlocked(stream_not_reset));
 
   if (IsVersion99()) {
@@ -790,7 +797,7 @@
         .WillOnce(Invoke(
             this, &QuicSimpleServerSessionServerPushTest::ClearControlFrame));
   }
-  QuicByteCount header_length = PromisePushResources(num_resources);
+  QuicByteCount data_frame_header_length = PromisePushResources(num_resources);
   QuicStreamId stream_to_open =
       GetNthServerInitiatedUnidirectionalId(kMaxStreamsForTest);
 
@@ -804,14 +811,16 @@
     EXPECT_CALL(*connection_,
                 OnStreamReset(stream_got_reset, QUIC_RST_ACKNOWLEDGEMENT));
   }
+  QuicStreamOffset offset = 0;
   if (VersionHasDataFrameHeader(connection_->transport_version())) {
     EXPECT_CALL(*connection_,
-                SendStreamData(stream_to_open, header_length, 0, NO_FIN));
+                SendStreamData(stream_to_open, data_frame_header_length, offset,
+                               NO_FIN));
+    offset += data_frame_header_length;
   }
-  EXPECT_CALL(*connection_,
-              SendStreamData(stream_to_open, _, header_length, NO_FIN))
-      .WillOnce(Return(QuicConsumedData(
-          kStreamFlowControlWindowSize - header_length, false)));
+  EXPECT_CALL(*connection_, SendStreamData(stream_to_open, _, offset, NO_FIN))
+      .WillOnce(Return(
+          QuicConsumedData(kStreamFlowControlWindowSize - offset, false)));
 
   EXPECT_CALL(*session_, SendBlocked(stream_to_open));
   QuicRstStreamFrame rst(kInvalidControlFrameId, stream_got_reset,