Add |written_| member to QuicStreamSequencerBufferTest.

This results in fewer lines than having to declare a local variable in every
test.  Just like there is already an |error_details_| base test class member
that is used as an argument of OnStreamData().

gfe-relnote: n/a, test-only change.
PiperOrigin-RevId: 254784062
Change-Id: I398912c1a48d0addb2c776888fe2220954b20bf1
diff --git a/quic/core/quic_stream_sequencer_buffer_test.cc b/quic/core/quic_stream_sequencer_buffer_test.cc
index 67d9b28..f36e076 100644
--- a/quic/core/quic_stream_sequencer_buffer_test.cc
+++ b/quic/core/quic_stream_sequencer_buffer_test.cc
@@ -73,6 +73,7 @@
 
   std::unique_ptr<QuicStreamSequencerBuffer> buffer_;
   std::unique_ptr<QuicStreamSequencerBufferPeer> helper_;
+  size_t written_ = 0;
   std::string error_details_;
 };
 
@@ -102,9 +103,8 @@
 }
 
 TEST_F(QuicStreamSequencerBufferTest, OnStreamData0length) {
-  size_t written;
   QuicErrorCode error =
-      buffer_->OnStreamData(800, "", &written, &error_details_);
+      buffer_->OnStreamData(800, "", &written_, &error_details_);
   EXPECT_EQ(error, QUIC_EMPTY_STREAM_FRAME_NO_FIN);
   EXPECT_TRUE(helper_->CheckBufferInvariants());
 }
@@ -112,9 +112,8 @@
 TEST_F(QuicStreamSequencerBufferTest, OnStreamDataWithinBlock) {
   EXPECT_FALSE(helper_->IsBufferAllocated());
   std::string source(1024, 'a');
-  size_t written;
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(800, source, &written, &error_details_));
+            buffer_->OnStreamData(800, source, &written_, &error_details_));
   BufferBlock* block_ptr = helper_->GetBlock(0);
   for (size_t i = 0; i < source.size(); ++i) {
     ASSERT_EQ('a', block_ptr->buffer[helper_->GetInBlockOffset(800) + i]);
@@ -131,9 +130,8 @@
 TEST_F(QuicStreamSequencerBufferTest, Move) {
   EXPECT_FALSE(helper_->IsBufferAllocated());
   std::string source(1024, 'a');
-  size_t written;
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(800, source, &written, &error_details_));
+            buffer_->OnStreamData(800, source, &written_, &error_details_));
   BufferBlock* block_ptr = helper_->GetBlock(0);
   for (size_t i = 0; i < source.size(); ++i) {
     ASSERT_EQ('a', block_ptr->buffer[helper_->GetInBlockOffset(800) + i]);
@@ -157,9 +155,8 @@
   // Pass in an invalid source, expects to return error.
   QuicStringPiece source;
   source = QuicStringPiece(nullptr, 1024);
-  size_t written;
   EXPECT_EQ(QUIC_STREAM_SEQUENCER_INVALID_STATE,
-            buffer_->OnStreamData(800, source, &written, &error_details_));
+            buffer_->OnStreamData(800, source, &written_, &error_details_));
   EXPECT_EQ(0u, error_details_.find(QuicStrCat(
                     "QuicStreamSequencerBuffer error: OnStreamData() "
                     "dest == nullptr: ",
@@ -169,50 +166,47 @@
 TEST_F(QuicStreamSequencerBufferTest, OnStreamDataWithOverlap) {
   std::string source(1024, 'a');
   // Write something into [800, 1824)
-  size_t written;
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(800, source, &written, &error_details_));
+            buffer_->OnStreamData(800, source, &written_, &error_details_));
   // Try to write to [0, 1024) and [1024, 2048).
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(0, source, &written, &error_details_));
+            buffer_->OnStreamData(0, source, &written_, &error_details_));
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(1024, source, &written, &error_details_));
+            buffer_->OnStreamData(1024, source, &written_, &error_details_));
 }
 
 TEST_F(QuicStreamSequencerBufferTest,
        OnStreamDataOverlapAndDuplicateCornerCases) {
   std::string source(1024, 'a');
   // Write something into [800, 1824)
-  size_t written;
-  buffer_->OnStreamData(800, source, &written, &error_details_);
+  buffer_->OnStreamData(800, source, &written_, &error_details_);
   source = std::string(800, 'b');
   std::string one_byte = "c";
   // Write [1, 801).
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(1, source, &written, &error_details_));
+            buffer_->OnStreamData(1, source, &written_, &error_details_));
   // Write [0, 800).
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(0, source, &written, &error_details_));
+            buffer_->OnStreamData(0, source, &written_, &error_details_));
   // Write [1823, 1824).
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(1823, one_byte, &written, &error_details_));
-  EXPECT_EQ(0u, written);
+            buffer_->OnStreamData(1823, one_byte, &written_, &error_details_));
+  EXPECT_EQ(0u, written_);
   // write one byte to [1824, 1825)
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(1824, one_byte, &written, &error_details_));
+            buffer_->OnStreamData(1824, one_byte, &written_, &error_details_));
   EXPECT_TRUE(helper_->CheckBufferInvariants());
 }
 
 TEST_F(QuicStreamSequencerBufferTest, OnStreamDataWithoutOverlap) {
   std::string source(1024, 'a');
   // Write something into [800, 1824).
-  size_t written;
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(800, source, &written, &error_details_));
+            buffer_->OnStreamData(800, source, &written_, &error_details_));
   source = std::string(100, 'b');
   // Write something into [kBlockSizeBytes * 2 - 20, kBlockSizeBytes * 2 + 80).
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(kBlockSizeBytes * 2 - 20, source, &written,
+            buffer_->OnStreamData(kBlockSizeBytes * 2 - 20, source, &written_,
                                   &error_details_));
   EXPECT_EQ(3, helper_->IntervalSize());
   EXPECT_EQ(1024u + 100u, buffer_->BytesBuffered());
@@ -228,23 +222,22 @@
   // Three new out of order frames arrive.
   const size_t kBytesToWrite = 100;
   std::string source(kBytesToWrite, 'a');
-  size_t written;
   // Frame [2^32 + 500, 2^32 + 600).
   QuicStreamOffset offset = pow(2, 32) + 500;
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(offset, source, &written, &error_details_));
+            buffer_->OnStreamData(offset, source, &written_, &error_details_));
   EXPECT_EQ(2, helper_->IntervalSize());
 
   // Frame [2^32 + 700, 2^32 + 800).
   offset = pow(2, 32) + 700;
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(offset, source, &written, &error_details_));
+            buffer_->OnStreamData(offset, source, &written_, &error_details_));
   EXPECT_EQ(3, helper_->IntervalSize());
 
   // Another frame [2^32 + 300, 2^32 + 400).
   offset = pow(2, 32) + 300;
   EXPECT_EQ(QUIC_NO_ERROR,
-            buffer_->OnStreamData(offset, source, &written, &error_details_));
+            buffer_->OnStreamData(offset, source, &written_, &error_details_));
   EXPECT_EQ(4, helper_->IntervalSize());
 }
 
@@ -252,10 +245,9 @@
   // Write 50 bytes to the end.
   const size_t kBytesToWrite = 50;
   std::string source(kBytesToWrite, 'a');
-  size_t written;
   EXPECT_EQ(QUIC_NO_ERROR,
             buffer_->OnStreamData(max_capacity_bytes_ - kBytesToWrite, source,
-                                  &written, &error_details_));
+                                  &written_, &error_details_));
   EXPECT_EQ(50u, buffer_->BytesBuffered());
   EXPECT_TRUE(helper_->CheckBufferInvariants());
 }
@@ -264,44 +256,42 @@
   // Write 1 byte to the end.
   const size_t kBytesToWrite = 1;
   std::string source(kBytesToWrite, 'a');
-  size_t written;
   EXPECT_EQ(QUIC_NO_ERROR,
             buffer_->OnStreamData(max_capacity_bytes_ - kBytesToWrite, source,
-                                  &written, &error_details_));
+                                  &written_, &error_details_));
   EXPECT_EQ(1u, buffer_->BytesBuffered());
   EXPECT_TRUE(helper_->CheckBufferInvariants());
 }
 
 TEST_F(QuicStreamSequencerBufferTest, OnStreamDataBeyondCapacity) {
   std::string source(60, 'a');
-  size_t written;
   EXPECT_EQ(QUIC_INTERNAL_ERROR,
-            buffer_->OnStreamData(max_capacity_bytes_ - 50, source, &written,
+            buffer_->OnStreamData(max_capacity_bytes_ - 50, source, &written_,
                                   &error_details_));
   EXPECT_TRUE(helper_->CheckBufferInvariants());
 
   source = "b";
   EXPECT_EQ(QUIC_INTERNAL_ERROR,
-            buffer_->OnStreamData(max_capacity_bytes_, source, &written,
+            buffer_->OnStreamData(max_capacity_bytes_, source, &written_,
                                   &error_details_));
   EXPECT_TRUE(helper_->CheckBufferInvariants());
 
   EXPECT_EQ(QUIC_INTERNAL_ERROR,
-            buffer_->OnStreamData(max_capacity_bytes_ * 1000, source, &written,
+            buffer_->OnStreamData(max_capacity_bytes_ * 1000, source, &written_,
                                   &error_details_));
   EXPECT_TRUE(helper_->CheckBufferInvariants());
 
   // Disallow current_gap != gaps_.end()
   EXPECT_EQ(QUIC_INTERNAL_ERROR,
             buffer_->OnStreamData(static_cast<QuicStreamOffset>(-1), source,
-                                  &written, &error_details_));
+                                  &written_, &error_details_));
   EXPECT_TRUE(helper_->CheckBufferInvariants());
 
   // Disallow offset + size overflow
   source = "bbb";
   EXPECT_EQ(QUIC_INTERNAL_ERROR,
             buffer_->OnStreamData(static_cast<QuicStreamOffset>(-2), source,
-                                  &written, &error_details_));
+                                  &written_, &error_details_));
   EXPECT_TRUE(helper_->CheckBufferInvariants());
   EXPECT_EQ(0u, buffer_->BytesBuffered());
 }
@@ -309,12 +299,11 @@
 TEST_F(QuicStreamSequencerBufferTest, Readv100Bytes) {
   std::string source(1024, 'a');
   // Write something into [kBlockSizeBytes, kBlockSizeBytes + 1024).
-  size_t written;
-  buffer_->OnStreamData(kBlockSizeBytes, source, &written, &error_details_);
+  buffer_->OnStreamData(kBlockSizeBytes, source, &written_, &error_details_);
   EXPECT_FALSE(buffer_->HasBytesToRead());
   source = std::string(100, 'b');
   // Write something into [0, 100).
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   EXPECT_TRUE(buffer_->HasBytesToRead());
   // Read into a iovec array with total capacity of 120 bytes.
   char dest[120];
@@ -333,8 +322,7 @@
 TEST_F(QuicStreamSequencerBufferTest, ReadvAcrossBlocks) {
   std::string source(kBlockSizeBytes + 50, 'a');
   // Write 1st block to full and extand 50 bytes to next block.
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   EXPECT_EQ(source.size(), helper_->ReadableBytes());
   // Iteratively read 512 bytes from buffer_-> Overwrite dest[] each time.
   char dest[512];
@@ -355,8 +343,7 @@
 TEST_F(QuicStreamSequencerBufferTest, ClearAfterRead) {
   std::string source(kBlockSizeBytes + 50, 'a');
   // Write 1st block to full with 'a'.
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   // Read first 512 bytes from buffer to make space at the beginning.
   char dest[512]{0};
   const iovec iov{dest, 512};
@@ -372,21 +359,20 @@
        OnStreamDataAcrossLastBlockAndFillCapacity) {
   std::string source(kBlockSizeBytes + 50, 'a');
   // Write 1st block to full with 'a'.
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   // Read first 512 bytes from buffer to make space at the beginning.
   char dest[512]{0};
   const iovec iov{dest, 512};
   size_t read;
   EXPECT_EQ(QUIC_NO_ERROR, buffer_->Readv(&iov, 1, &read, &error_details_));
-  EXPECT_EQ(source.size(), written);
+  EXPECT_EQ(source.size(), written_);
 
   // Write more than half block size of bytes in the last block with 'b', which
   // will wrap to the beginning and reaches the full capacity.
   source = std::string(0.5 * kBlockSizeBytes + 512, 'b');
   EXPECT_EQ(QUIC_NO_ERROR, buffer_->OnStreamData(2 * kBlockSizeBytes, source,
-                                                 &written, &error_details_));
-  EXPECT_EQ(source.size(), written);
+                                                 &written_, &error_details_));
+  EXPECT_EQ(source.size(), written_);
   EXPECT_TRUE(helper_->CheckBufferInvariants());
 }
 
@@ -394,8 +380,7 @@
        OnStreamDataAcrossLastBlockAndExceedCapacity) {
   std::string source(kBlockSizeBytes + 50, 'a');
   // Write 1st block to full.
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   // Read first 512 bytes from buffer to make space at the beginning.
   char dest[512]{0};
   const iovec iov{dest, 512};
@@ -406,7 +391,7 @@
   // max_capacity_bytes_ +  512 + 1). But last bytes exceeds current capacity.
   source = std::string(0.5 * kBlockSizeBytes + 512 + 1, 'b');
   EXPECT_EQ(QUIC_INTERNAL_ERROR,
-            buffer_->OnStreamData(2 * kBlockSizeBytes, source, &written,
+            buffer_->OnStreamData(2 * kBlockSizeBytes, source, &written_,
                                   &error_details_));
   EXPECT_TRUE(helper_->CheckBufferInvariants());
 }
@@ -415,14 +400,14 @@
   // Write to full capacity and read out 512 bytes at beginning and continue
   // appending 256 bytes.
   std::string source(max_capacity_bytes_, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[512]{0};
   const iovec iov{dest, 512};
   size_t read;
   EXPECT_EQ(QUIC_NO_ERROR, buffer_->Readv(&iov, 1, &read, &error_details_));
   source = std::string(256, 'b');
-  buffer_->OnStreamData(max_capacity_bytes_, source, &written, &error_details_);
+  buffer_->OnStreamData(max_capacity_bytes_, source, &written_,
+                        &error_details_);
   EXPECT_TRUE(helper_->CheckBufferInvariants());
 
   // Read all data out.
@@ -457,8 +442,7 @@
   // Tests that buffer is not deallocated unless ReleaseWholeBuffer() is called.
   std::string source(100, 'b');
   // Write something into [0, 100).
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   EXPECT_TRUE(buffer_->HasBytesToRead());
   char dest[120];
   iovec iovecs[3]{iovec{dest, 40}, iovec{dest + 40, 40}, iovec{dest + 80, 40}};
@@ -475,8 +459,7 @@
 TEST_F(QuicStreamSequencerBufferTest, GetReadableRegionsBlockedByGap) {
   // Write into [1, 1024).
   std::string source(1023, 'a');
-  size_t written;
-  buffer_->OnStreamData(1, source, &written, &error_details_);
+  buffer_->OnStreamData(1, source, &written_, &error_details_);
   // Try to get readable regions, but none is there.
   iovec iovs[2];
   int iov_count = buffer_->GetReadableRegions(iovs, 2);
@@ -487,8 +470,7 @@
   // Write first block to full with [0, 256) 'a' and the rest 'b' then read out
   // [0, 256)
   std::string source(kBlockSizeBytes, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[256];
   helper_->Read(dest, 256);
   // Get readable region from [256, 1024)
@@ -503,8 +485,7 @@
 TEST_F(QuicStreamSequencerBufferTest, GetReadableRegionsWithinOneBlock) {
   // Write into [0, 1024) and then read out [0, 256)
   std::string source(1024, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[256];
   helper_->Read(dest, 256);
   // Get readable region from [256, 1024)
@@ -520,8 +501,7 @@
        GetReadableRegionsAcrossBlockWithLongIOV) {
   // Write into [0, 2 * kBlockSizeBytes + 1024) and then read out [0, 1024)
   std::string source(2 * kBlockSizeBytes + 1024, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[1024];
   helper_->Read(dest, 1024);
 
@@ -538,13 +518,12 @@
   // Write into [0, 2 * kBlockSizeBytes + 1024) and then read out [0, 1024)
   // and then append 1024 + 512 bytes.
   std::string source(2.5 * kBlockSizeBytes - 1024, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[1024];
   helper_->Read(dest, 1024);
   // Write across the end.
   source = std::string(1024 + 512, 'b');
-  buffer_->OnStreamData(2.5 * kBlockSizeBytes - 1024, source, &written,
+  buffer_->OnStreamData(2.5 * kBlockSizeBytes - 1024, source, &written_,
                         &error_details_);
   // Use short iovec's.
   iovec iovs[2];
@@ -572,8 +551,7 @@
 TEST_F(QuicStreamSequencerBufferTest, GetReadableRegionBeforeGap) {
   // Write into [1, 1024).
   std::string source(1023, 'a');
-  size_t written;
-  buffer_->OnStreamData(1, source, &written, &error_details_);
+  buffer_->OnStreamData(1, source, &written_, &error_details_);
   // GetReadableRegion should return false because range  [0,1) hasn't been
   // filled yet.
   iovec iov;
@@ -583,8 +561,7 @@
 TEST_F(QuicStreamSequencerBufferTest, GetReadableRegionTillEndOfBlock) {
   // Write into [0, kBlockSizeBytes + 1) and then read out [0, 256)
   std::string source(kBlockSizeBytes + 1, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[256];
   helper_->Read(dest, 256);
   // Get readable region from [256, 1024)
@@ -598,8 +575,7 @@
 TEST_F(QuicStreamSequencerBufferTest, GetReadableRegionTillGap) {
   // Write into [0, kBlockSizeBytes - 1) and then read out [0, 256)
   std::string source(kBlockSizeBytes - 1, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[256];
   helper_->Read(dest, 256);
   // Get readable region from [256, 1023)
@@ -617,8 +593,7 @@
 
 TEST_F(QuicStreamSequencerBufferTest, PrefetchInitialBuffer) {
   std::string source(kBlockSizeBytes, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   iovec iov;
   EXPECT_TRUE(buffer_->PrefetchNextRegion(&iov));
   EXPECT_EQ(source, std::string(reinterpret_cast<const char*>(iov.iov_base),
@@ -627,15 +602,14 @@
 
 TEST_F(QuicStreamSequencerBufferTest, PrefetchBufferWithOffset) {
   std::string source(1024, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   iovec iov;
   EXPECT_TRUE(buffer_->PrefetchNextRegion(&iov));
   EXPECT_EQ(source, std::string(reinterpret_cast<const char*>(iov.iov_base),
                                 iov.iov_len));
   // The second frame goes into the same bucket.
   std::string source2(800, 'a');
-  buffer_->OnStreamData(1024, source2, &written, &error_details_);
+  buffer_->OnStreamData(1024, source2, &written_, &error_details_);
   EXPECT_TRUE(buffer_->PrefetchNextRegion(&iov));
   EXPECT_EQ(source2, std::string(reinterpret_cast<const char*>(iov.iov_base),
                                  iov.iov_len));
@@ -644,14 +618,13 @@
 TEST_F(QuicStreamSequencerBufferTest, PrefetchBufferWithMultipleBucket) {
   const size_t data_size = 1024;
   std::string source(data_size, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   iovec iov;
   EXPECT_TRUE(buffer_->PrefetchNextRegion(&iov));
   EXPECT_EQ(source, std::string(reinterpret_cast<const char*>(iov.iov_base),
                                 iov.iov_len));
   std::string source2(kBlockSizeBytes, 'b');
-  buffer_->OnStreamData(data_size, source2, &written, &error_details_);
+  buffer_->OnStreamData(data_size, source2, &written_, &error_details_);
   EXPECT_TRUE(buffer_->PrefetchNextRegion(&iov));
   EXPECT_EQ(
       std::string(kBlockSizeBytes - data_size, 'b'),
@@ -664,8 +637,7 @@
 
 TEST_F(QuicStreamSequencerBufferTest, PrefetchBufferAfterBlockRetired) {
   std::string source(kBlockSizeBytes, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   iovec iov;
   EXPECT_TRUE(buffer_->PrefetchNextRegion(&iov));
   EXPECT_EQ(source, std::string(reinterpret_cast<const char*>(iov.iov_base),
@@ -675,7 +647,7 @@
   helper_->Read(dest, kBlockSizeBytes);
 
   std::string source2(300, 'b');
-  buffer_->OnStreamData(kBlockSizeBytes, source2, &written, &error_details_);
+  buffer_->OnStreamData(kBlockSizeBytes, source2, &written_, &error_details_);
 
   EXPECT_TRUE(buffer_->PrefetchNextRegion(&iov));
   EXPECT_EQ(source2, std::string(reinterpret_cast<const char*>(iov.iov_base),
@@ -684,14 +656,13 @@
 
 TEST_F(QuicStreamSequencerBufferTest, PrefetchContinously) {
   std::string source(kBlockSizeBytes, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   iovec iov;
   EXPECT_TRUE(buffer_->PrefetchNextRegion(&iov));
   EXPECT_EQ(source, std::string(reinterpret_cast<const char*>(iov.iov_base),
                                 iov.iov_len));
   std::string source2(kBlockSizeBytes, 'b');
-  buffer_->OnStreamData(kBlockSizeBytes, source2, &written, &error_details_);
+  buffer_->OnStreamData(kBlockSizeBytes, source2, &written_, &error_details_);
   EXPECT_TRUE(buffer_->PrefetchNextRegion(&iov));
   EXPECT_EQ(source2, std::string(reinterpret_cast<const char*>(iov.iov_base),
                                  iov.iov_len));
@@ -699,8 +670,7 @@
 
 TEST_F(QuicStreamSequencerBufferTest, ConsumeMoreThanPrefetch) {
   std::string source(100, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[30];
   helper_->Read(dest, 30);
   iovec iov;
@@ -709,7 +679,7 @@
       std::string(70, 'a'),
       std::string(reinterpret_cast<const char*>(iov.iov_base), iov.iov_len));
   std::string source2(100, 'b');
-  buffer_->OnStreamData(100, source2, &written, &error_details_);
+  buffer_->OnStreamData(100, source2, &written_, &error_details_);
   buffer_->MarkConsumed(100);
   EXPECT_TRUE(buffer_->PrefetchNextRegion(&iov));
   EXPECT_EQ(
@@ -719,8 +689,7 @@
 
 TEST_F(QuicStreamSequencerBufferTest, PrefetchMoreThanBufferHas) {
   std::string source(100, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   iovec iov;
   EXPECT_TRUE(buffer_->PrefetchNextRegion(&iov));
   EXPECT_EQ(
@@ -732,8 +701,7 @@
 TEST_F(QuicStreamSequencerBufferTest, MarkConsumedInOneBlock) {
   // Write into [0, 1024) and then read out [0, 256)
   std::string source(1024, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[256];
   helper_->Read(dest, 256);
 
@@ -748,8 +716,7 @@
 TEST_F(QuicStreamSequencerBufferTest, MarkConsumedNotEnoughBytes) {
   // Write into [0, 1024) and then read out [0, 256)
   std::string source(1024, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[256];
   helper_->Read(dest, 256);
 
@@ -768,8 +735,7 @@
 TEST_F(QuicStreamSequencerBufferTest, MarkConsumedAcrossBlock) {
   // Write into [0, 2 * kBlockSizeBytes + 1024) and then read out [0, 1024)
   std::string source(2 * kBlockSizeBytes + 1024, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[1024];
   helper_->Read(dest, 1024);
 
@@ -783,12 +749,11 @@
   // Write into [0, 2.5 * kBlockSizeBytes - 1024) and then read out [0, 1024)
   // and then append 1024 + 512 bytes.
   std::string source(2.5 * kBlockSizeBytes - 1024, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[1024];
   helper_->Read(dest, 1024);
   source = std::string(1024 + 512, 'b');
-  buffer_->OnStreamData(2.5 * kBlockSizeBytes - 1024, source, &written,
+  buffer_->OnStreamData(2.5 * kBlockSizeBytes - 1024, source, &written_,
                         &error_details_);
   EXPECT_EQ(1024u, buffer_->BytesConsumed());
 
@@ -809,15 +774,15 @@
 TEST_F(QuicStreamSequencerBufferTest, FlushBufferedFrames) {
   // Write into [0, 2.5 * kBlockSizeBytes - 1024) and then read out [0, 1024).
   std::string source(max_capacity_bytes_ - 1024, 'a');
-  size_t written;
-  buffer_->OnStreamData(0, source, &written, &error_details_);
+  buffer_->OnStreamData(0, source, &written_, &error_details_);
   char dest[1024];
   helper_->Read(dest, 1024);
   EXPECT_EQ(1024u, buffer_->BytesConsumed());
   // Write [1024, 512) to the physical beginning.
   source = std::string(512, 'b');
-  buffer_->OnStreamData(max_capacity_bytes_, source, &written, &error_details_);
-  EXPECT_EQ(512u, written);
+  buffer_->OnStreamData(max_capacity_bytes_, source, &written_,
+                        &error_details_);
+  EXPECT_EQ(512u, written_);
   EXPECT_EQ(max_capacity_bytes_ - 1024 + 512, buffer_->FlushBufferedFrames());
   EXPECT_EQ(max_capacity_bytes_ + 512, buffer_->BytesConsumed());
   EXPECT_TRUE(buffer_->Empty());
@@ -834,9 +799,8 @@
   max_capacity_bytes_ = 3 * kBlockSizeBytes;
   // Feed buffer with 1-byte discontiguous frames. e.g. [1,2), [3,4), [5,6)...
   for (QuicStreamOffset begin = 1; begin <= max_capacity_bytes_; begin += 2) {
-    size_t written;
     QuicErrorCode rs =
-        buffer_->OnStreamData(begin, "a", &written, &error_details_);
+        buffer_->OnStreamData(begin, "a", &written_, &error_details_);
 
     QuicStreamOffset last_straw = 2 * kMaxNumGapsAllowed - 1;
     if (begin == last_straw) {
@@ -914,8 +878,7 @@
       write_buf[i] = (offset + i) % 256;
     }
     QuicStringPiece string_piece_w(write_buf.get(), num_to_write);
-    size_t written;
-    auto result = buffer_->OnStreamData(offset, string_piece_w, &written,
+    auto result = buffer_->OnStreamData(offset, string_piece_w, &written_,
                                         &error_details_);
     if (result == QUIC_NO_ERROR) {
       shuffled_buf_.pop_front();
@@ -1082,10 +1045,9 @@
 TEST_F(QuicStreamSequencerBufferTest, PrefetchAfterClear) {
   // Write a few bytes.
   const std::string kData("foo");
-  size_t written = 0;
   EXPECT_EQ(QUIC_NO_ERROR, buffer_->OnStreamData(/* offset = */ 0, kData,
-                                                 &written, &error_details_));
-  EXPECT_EQ(kData.size(), written);
+                                                 &written_, &error_details_));
+  EXPECT_EQ(kData.size(), written_);
 
   // Prefetch all buffered data.
   iovec iov;