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

Side by Side Diff: net/spdy/spdy_test_util_common.cc

Issue 724523002: Support HTTP/2 drafts 14 and 15 simultaneously. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 1 month 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 unified diff | Download patch
« net/socket/next_proto.h ('K') | « net/spdy/spdy_test_util_common.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "net/spdy/spdy_test_util_common.h" 5 #include "net/spdy/spdy_test_util_common.h"
6 6
7 #include <cstddef> 7 #include <cstddef>
8 8
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 } 50 }
51 51
52 } // namespace 52 } // namespace
53 53
54 NextProtoVector SpdyNextProtos() { 54 NextProtoVector SpdyNextProtos() {
55 NextProtoVector next_protos; 55 NextProtoVector next_protos;
56 next_protos.push_back(kProtoHTTP11); 56 next_protos.push_back(kProtoHTTP11);
57 next_protos.push_back(kProtoDeprecatedSPDY2); 57 next_protos.push_back(kProtoDeprecatedSPDY2);
58 next_protos.push_back(kProtoSPDY3); 58 next_protos.push_back(kProtoSPDY3);
59 next_protos.push_back(kProtoSPDY31); 59 next_protos.push_back(kProtoSPDY31);
60 next_protos.push_back(kProtoSPDY4); 60 next_protos.push_back(kProtoSPDY4_14);
61 next_protos.push_back(kProtoSPDY4_15);
61 next_protos.push_back(kProtoQUIC1SPDY3); 62 next_protos.push_back(kProtoQUIC1SPDY3);
62 return next_protos; 63 return next_protos;
63 } 64 }
64 65
65 // Chop a frame into an array of MockWrites. 66 // Chop a frame into an array of MockWrites.
66 // |data| is the frame to chop. 67 // |data| is the frame to chop.
67 // |length| is the length of the frame to chop. 68 // |length| is the length of the frame to chop.
68 // |num_chunks| is the number of chunks to create. 69 // |num_chunks| is the number of chunks to create.
69 MockWrite* ChopWriteFrame(const char* data, int length, int num_chunks) { 70 MockWrite* ChopWriteFrame(const char* data, int length, int num_chunks) {
70 MockWrite* chunks = new MockWrite[num_chunks]; 71 MockWrite* chunks = new MockWrite[num_chunks];
(...skipping 1029 matching lines...) Expand 10 before | Expand all | Expand 10 after
1100 AppendToHeaderBlock(extra_headers, extra_header_count, 1101 AppendToHeaderBlock(extra_headers, extra_header_count,
1101 headers.mutable_name_value_block()); 1102 headers.mutable_name_value_block());
1102 return CreateFramer(false)->SerializeFrame(headers); 1103 return CreateFramer(false)->SerializeFrame(headers);
1103 } 1104 }
1104 1105
1105 SpdyFrame* SpdyTestUtil::ConstructSpdySyn(int stream_id, 1106 SpdyFrame* SpdyTestUtil::ConstructSpdySyn(int stream_id,
1106 const SpdyHeaderBlock& block, 1107 const SpdyHeaderBlock& block,
1107 RequestPriority priority, 1108 RequestPriority priority,
1108 bool compressed, 1109 bool compressed,
1109 bool fin) const { 1110 bool fin) const {
1110 if (protocol_ < kProtoSPDY4) { 1111 if (protocol_ < kProtoSPDY4MinimumVersion) {
1111 SpdySynStreamIR syn_stream(stream_id); 1112 SpdySynStreamIR syn_stream(stream_id);
1112 syn_stream.set_name_value_block(block); 1113 syn_stream.set_name_value_block(block);
1113 syn_stream.set_priority( 1114 syn_stream.set_priority(
1114 ConvertRequestPriorityToSpdyPriority(priority, spdy_version())); 1115 ConvertRequestPriorityToSpdyPriority(priority, spdy_version()));
1115 syn_stream.set_fin(fin); 1116 syn_stream.set_fin(fin);
1116 return CreateFramer(compressed)->SerializeFrame(syn_stream); 1117 return CreateFramer(compressed)->SerializeFrame(syn_stream);
1117 } else { 1118 } else {
1118 SpdyHeadersIR headers(stream_id); 1119 SpdyHeadersIR headers(stream_id);
1119 headers.set_name_value_block(block); 1120 headers.set_name_value_block(block);
1120 headers.set_has_priority(true); 1121 headers.set_has_priority(true);
1121 headers.set_priority( 1122 headers.set_priority(
1122 ConvertRequestPriorityToSpdyPriority(priority, spdy_version())); 1123 ConvertRequestPriorityToSpdyPriority(priority, spdy_version()));
1123 headers.set_fin(fin); 1124 headers.set_fin(fin);
1124 return CreateFramer(compressed)->SerializeFrame(headers); 1125 return CreateFramer(compressed)->SerializeFrame(headers);
1125 } 1126 }
1126 } 1127 }
1127 1128
1128 SpdyFrame* SpdyTestUtil::ConstructSpdyReply(int stream_id, 1129 SpdyFrame* SpdyTestUtil::ConstructSpdyReply(int stream_id,
1129 const SpdyHeaderBlock& headers) { 1130 const SpdyHeaderBlock& headers) {
1130 if (protocol_ < kProtoSPDY4) { 1131 if (protocol_ < kProtoSPDY4MinimumVersion) {
1131 SpdySynReplyIR syn_reply(stream_id); 1132 SpdySynReplyIR syn_reply(stream_id);
1132 syn_reply.set_name_value_block(headers); 1133 syn_reply.set_name_value_block(headers);
1133 return CreateFramer(false)->SerializeFrame(syn_reply); 1134 return CreateFramer(false)->SerializeFrame(syn_reply);
1134 } else { 1135 } else {
1135 SpdyHeadersIR reply(stream_id); 1136 SpdyHeadersIR reply(stream_id);
1136 reply.set_name_value_block(headers); 1137 reply.set_name_value_block(headers);
1137 return CreateFramer(false)->SerializeFrame(reply); 1138 return CreateFramer(false)->SerializeFrame(reply);
1138 } 1139 }
1139 } 1140 }
1140 1141
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
1261 return is_spdy2() ? "method" : ":method"; 1262 return is_spdy2() ? "method" : ":method";
1262 } 1263 }
1263 1264
1264 const char* SpdyTestUtil::GetStatusKey() const { 1265 const char* SpdyTestUtil::GetStatusKey() const {
1265 return is_spdy2() ? "status" : ":status"; 1266 return is_spdy2() ? "status" : ":status";
1266 } 1267 }
1267 1268
1268 const char* SpdyTestUtil::GetHostKey() const { 1269 const char* SpdyTestUtil::GetHostKey() const {
1269 if (protocol_ < kProtoSPDY3) 1270 if (protocol_ < kProtoSPDY3)
1270 return "host"; 1271 return "host";
1271 if (protocol_ < kProtoSPDY4) 1272 if (protocol_ < kProtoSPDY4MinimumVersion)
1272 return ":host"; 1273 return ":host";
1273 else 1274 else
1274 return ":authority"; 1275 return ":authority";
1275 } 1276 }
1276 1277
1277 const char* SpdyTestUtil::GetSchemeKey() const { 1278 const char* SpdyTestUtil::GetSchemeKey() const {
1278 return is_spdy2() ? "scheme" : ":scheme"; 1279 return is_spdy2() ? "scheme" : ":scheme";
1279 } 1280 }
1280 1281
1281 const char* SpdyTestUtil::GetVersionKey() const { 1282 const char* SpdyTestUtil::GetVersionKey() const {
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
1320 } 1321 }
1321 } 1322 }
1322 1323
1323 void SpdyTestUtil::SetPriority(RequestPriority priority, 1324 void SpdyTestUtil::SetPriority(RequestPriority priority,
1324 SpdySynStreamIR* ir) const { 1325 SpdySynStreamIR* ir) const {
1325 ir->set_priority(ConvertRequestPriorityToSpdyPriority( 1326 ir->set_priority(ConvertRequestPriorityToSpdyPriority(
1326 priority, spdy_version())); 1327 priority, spdy_version()));
1327 } 1328 }
1328 1329
1329 } // namespace net 1330 } // namespace net
OLDNEW
« net/socket/next_proto.h ('K') | « net/spdy/spdy_test_util_common.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698