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..1b97bdad44922a005e1cca5e92a7b7daafcd104f 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() { |
@@ -69,21 +69,11 @@ scoped_ptr<QuicEncryptedPacket> QuicTestPacketMaker::MakeAckAndRstPacket( |
QuicAckFrame ack(MakeAckFrame(largest_received)); |
ack.delta_time_largest_observed = QuicTime::Delta::Zero(); |
- if (version_ > QUIC_VERSION_22) { |
- for (QuicPacketSequenceNumber i = least_unacked; i <= largest_received; |
- ++i) { |
- ack.received_packet_times.push_back(make_pair(i, clock_->Now())); |
- } |
+ for (QuicPacketSequenceNumber i = least_unacked; i <= largest_received; ++i) { |
+ ack.received_packet_times.push_back(make_pair(i, clock_->Now())); |
} |
QuicFrames frames; |
frames.push_back(QuicFrame(&ack)); |
- QuicCongestionFeedbackFrame feedback; |
- if (send_feedback && version_ <= QUIC_VERSION_22) { |
- feedback.type = kTCP; |
- feedback.tcp.receive_window = 256000; |
- |
- frames.push_back(QuicFrame(&feedback)); |
- } |
QuicStopWaitingFrame stop_waiting; |
stop_waiting.least_unacked = least_unacked; |
@@ -134,22 +124,13 @@ scoped_ptr<QuicEncryptedPacket> QuicTestPacketMaker::MakeAckPacket( |
QuicAckFrame ack(MakeAckFrame(largest_received)); |
ack.delta_time_largest_observed = QuicTime::Delta::Zero(); |
- if (version_ > QUIC_VERSION_22) { |
- for (QuicPacketSequenceNumber i = least_unacked; i <= largest_received; |
- ++i) { |
- ack.received_packet_times.push_back(make_pair(i, clock_->Now())); |
- } |
+ for (QuicPacketSequenceNumber i = least_unacked; i <= largest_received; ++i) { |
+ ack.received_packet_times.push_back(make_pair(i, clock_->Now())); |
} |
QuicFramer framer(SupportedVersions(version_), clock_->Now(), false); |
QuicFrames frames; |
frames.push_back(QuicFrame(&ack)); |
- QuicCongestionFeedbackFrame feedback; |
- if (send_feedback && version_ <= QUIC_VERSION_22) { |
- feedback.type = kTCP; |
- feedback.tcp.receive_window = 256000; |
- frames.push_back(QuicFrame(&feedback)); |
- } |
QuicStopWaitingFrame stop_waiting; |
stop_waiting.least_unacked = least_unacked; |
@@ -179,14 +160,24 @@ scoped_ptr<QuicEncryptedPacket> QuicTestPacketMaker::MakeRequestHeadersPacket( |
QuicStreamId stream_id, |
bool should_include_version, |
bool fin, |
+ QuicPriority priority, |
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(priority); |
+ 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_priority(priority); |
+ 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 +191,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()))); |