Add support for draft-27
This CL updates v99 from draft 26 to draft 27. The main change is a rewrite of how transport parameters are read and written. This CL also replaces quic_enable_version_draft_25_v2 with quic_enable_version_draft_25_v3 to ensure that we only enable draft25 with the new code.
gfe-relnote: refactor transport parameter encoding code, protected by disabled flag quic_enable_version_draft_25_v3
PiperOrigin-RevId: 298427763
Change-Id: I2417b25584d914d38a55155ffddbac6e073fcd80
diff --git a/quic/core/quic_data_writer_test.cc b/quic/core/quic_data_writer_test.cc
index d27b8b1..36038cf 100644
--- a/quic/core/quic_data_writer_test.cc
+++ b/quic/core/quic_data_writer_test.cc
@@ -1269,6 +1269,23 @@
sizeof(buffer));
}
+TEST_P(QuicDataWriterTest, StringPieceVarInt62) {
+ char inner_buffer[16] = {1, 2, 3, 4, 5, 6, 7, 8,
+ 9, 10, 11, 12, 13, 14, 15, 16};
+ quiche::QuicheStringPiece inner_payload_write(inner_buffer,
+ sizeof(inner_buffer));
+ char buffer[sizeof(inner_buffer) + sizeof(uint8_t)] = {};
+ QuicDataWriter writer(sizeof(buffer), buffer);
+ EXPECT_TRUE(writer.WriteStringPieceVarInt62(inner_payload_write));
+ EXPECT_EQ(0u, writer.remaining());
+ QuicDataReader reader(buffer, sizeof(buffer));
+ quiche::QuicheStringPiece inner_payload_read;
+ EXPECT_TRUE(reader.ReadStringPieceVarInt62(&inner_payload_read));
+ quiche::test::CompareCharArraysWithHexError(
+ "inner_payload", inner_payload_write.data(), inner_payload_write.length(),
+ inner_payload_read.data(), inner_payload_read.length());
+}
+
} // namespace
} // namespace test
} // namespace quic