Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(353)

Unified Diff: net/quic/test_tools/quic_test_packet_maker.cc

Issue 848443004: Adds QUIC_VERSION_24 which uses SPDY/4 header compression instead of SPDY/3. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@Final_0114
Patch Set: Changes to make version 24 to work with chromium unittests Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/quic/quic_session_test.cc ('k') | net/tools/quic/end_to_end_test.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/quic/test_tools/quic_test_packet_maker.cc
diff --git a/net/quic/test_tools/quic_test_packet_maker.cc b/net/quic/test_tools/quic_test_packet_maker.cc
index 65404264643876614d13fbdb49efd24d86661dc8..58fa576a86dea2bd445924de5dac30ebbe797c94 100644
--- a/net/quic/test_tools/quic_test_packet_maker.cc
+++ b/net/quic/test_tools/quic_test_packet_maker.cc
@@ -22,8 +22,8 @@ QuicTestPacketMaker::QuicTestPacketMaker(QuicVersion version,
: version_(version),
connection_id_(connection_id),
clock_(clock),
- spdy_request_framer_(SPDY3),
- spdy_response_framer_(SPDY3) {
+ spdy_request_framer_(version > QUIC_VERSION_23 ? SPDY4 : SPDY3),
+ spdy_response_framer_(version > QUIC_VERSION_23 ? SPDY4 : SPDY3) {
}
QuicTestPacketMaker::~QuicTestPacketMaker() {
@@ -181,12 +181,20 @@ scoped_ptr<QuicEncryptedPacket> QuicTestPacketMaker::MakeRequestHeadersPacket(
bool fin,
const SpdyHeaderBlock& headers) {
InitializeHeader(sequence_number, should_include_version);
- SpdySynStreamIR syn_stream(stream_id);
- syn_stream.set_name_value_block(headers);
- syn_stream.set_fin(fin);
- syn_stream.set_priority(0);
- scoped_ptr<SpdySerializedFrame> spdy_frame(
- spdy_request_framer_.SerializeSynStream(syn_stream));
+ scoped_ptr<SpdySerializedFrame> spdy_frame;
+ if (spdy_request_framer_.protocol_version() == SPDY3) {
+ SpdySynStreamIR syn_stream(stream_id);
+ syn_stream.set_name_value_block(headers);
+ syn_stream.set_fin(fin);
+ syn_stream.set_priority(0);
+ spdy_frame.reset(spdy_request_framer_.SerializeSynStream(syn_stream));
+ } else {
+ SpdyHeadersIR headers_frame(stream_id);
+ headers_frame.set_name_value_block(headers);
+ headers_frame.set_fin(fin);
+ headers_frame.set_has_priority(true);
+ spdy_frame.reset(spdy_request_framer_.SerializeFrame(headers_frame));
+ }
QuicStreamFrame frame(kHeadersStreamId, false, 0,
MakeIOVector(base::StringPiece(spdy_frame->data(),
spdy_frame->size())));
@@ -200,11 +208,18 @@ scoped_ptr<QuicEncryptedPacket> QuicTestPacketMaker::MakeResponseHeadersPacket(
bool fin,
const SpdyHeaderBlock& headers) {
InitializeHeader(sequence_number, should_include_version);
- SpdySynReplyIR syn_reply(stream_id);
- syn_reply.set_name_value_block(headers);
- syn_reply.set_fin(fin);
- scoped_ptr<SpdySerializedFrame> spdy_frame(
- spdy_response_framer_.SerializeSynReply(syn_reply));
+ scoped_ptr<SpdySerializedFrame> spdy_frame;
+ if (spdy_request_framer_.protocol_version() == SPDY3) {
+ SpdySynReplyIR syn_reply(stream_id);
+ syn_reply.set_name_value_block(headers);
+ syn_reply.set_fin(fin);
+ spdy_frame.reset(spdy_response_framer_.SerializeSynReply(syn_reply));
+ } else {
+ SpdyHeadersIR headers_frame(stream_id);
+ headers_frame.set_name_value_block(headers);
+ headers_frame.set_fin(fin);
+ spdy_frame.reset(spdy_request_framer_.SerializeFrame(headers_frame));
+ }
QuicStreamFrame frame(kHeadersStreamId, false, 0,
MakeIOVector(base::StringPiece(spdy_frame->data(),
spdy_frame->size())));
« no previous file with comments | « net/quic/quic_session_test.cc ('k') | net/tools/quic/end_to_end_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698