| OLD | NEW |
| 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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.h" | 5 #include "net/spdy/spdy_test_util.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
| 10 #include "base/string_util.h" | 10 #include "base/string_util.h" |
| 11 #include "net/http/http_network_transaction.h" |
| 12 #include "net/spdy/spdy_framer.h" |
| 11 | 13 |
| 12 namespace net { | 14 namespace net { |
| 13 | 15 |
| 14 // Chop a frame into an array of MockWrites. | 16 // Chop a frame into an array of MockWrites. |
| 15 // |data| is the frame to chop. | 17 // |data| is the frame to chop. |
| 16 // |length| is the length of the frame to chop. | 18 // |length| is the length of the frame to chop. |
| 17 // |num_chunks| is the number of chunks to create. | 19 // |num_chunks| is the number of chunks to create. |
| 18 MockWrite* ChopWriteFrame(const char* data, int length, int num_chunks) { | 20 MockWrite* ChopWriteFrame(const char* data, int length, int num_chunks) { |
| 19 MockWrite* chunks = new MockWrite[num_chunks]; | 21 MockWrite* chunks = new MockWrite[num_chunks]; |
| 20 int chunk_size = length / num_chunks; | 22 int chunk_size = length / num_chunks; |
| (...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 254 // will vary the most between calls. | 256 // will vary the most between calls. |
| 255 // Returns a SpdyFrame. | 257 // Returns a SpdyFrame. |
| 256 spdy::SpdyFrame* ConstructSpdyGet(const char* const url, | 258 spdy::SpdyFrame* ConstructSpdyGet(const char* const url, |
| 257 bool compressed, | 259 bool compressed, |
| 258 int stream_id, | 260 int stream_id, |
| 259 RequestPriority request_priority) { | 261 RequestPriority request_priority) { |
| 260 const SpdyHeaderInfo kSynStartHeader = { | 262 const SpdyHeaderInfo kSynStartHeader = { |
| 261 spdy::SYN_STREAM, // Kind = Syn | 263 spdy::SYN_STREAM, // Kind = Syn |
| 262 stream_id, // Stream ID | 264 stream_id, // Stream ID |
| 263 0, // Associated stream ID | 265 0, // Associated stream ID |
| 264 request_priority, // Priority | 266 net::ConvertRequestPriorityToSpdyPriority(request_priority), |
| 267 // Priority |
| 265 spdy::CONTROL_FLAG_FIN, // Control Flags | 268 spdy::CONTROL_FLAG_FIN, // Control Flags |
| 266 compressed, // Compressed | 269 compressed, // Compressed |
| 267 spdy::INVALID, // Status | 270 spdy::INVALID, // Status |
| 268 NULL, // Data | 271 NULL, // Data |
| 269 0, // Length | 272 0, // Length |
| 270 spdy::DATA_FLAG_NONE // Data Flags | 273 spdy::DATA_FLAG_NONE // Data Flags |
| 271 }; | 274 }; |
| 272 | 275 |
| 273 GURL gurl(url); | 276 GURL gurl(url); |
| 274 | 277 |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 312 // Returns a SpdyFrame. | 315 // Returns a SpdyFrame. |
| 313 spdy::SpdyFrame* ConstructSpdyGet(const char* const extra_headers[], | 316 spdy::SpdyFrame* ConstructSpdyGet(const char* const extra_headers[], |
| 314 int extra_header_count, | 317 int extra_header_count, |
| 315 bool compressed, | 318 bool compressed, |
| 316 int stream_id, | 319 int stream_id, |
| 317 RequestPriority request_priority) { | 320 RequestPriority request_priority) { |
| 318 const SpdyHeaderInfo kSynStartHeader = { | 321 const SpdyHeaderInfo kSynStartHeader = { |
| 319 spdy::SYN_STREAM, // Kind = Syn | 322 spdy::SYN_STREAM, // Kind = Syn |
| 320 stream_id, // Stream ID | 323 stream_id, // Stream ID |
| 321 0, // Associated stream ID | 324 0, // Associated stream ID |
| 322 request_priority, // Priority | 325 net::ConvertRequestPriorityToSpdyPriority(request_priority), |
| 326 // Priority |
| 323 spdy::CONTROL_FLAG_FIN, // Control Flags | 327 spdy::CONTROL_FLAG_FIN, // Control Flags |
| 324 compressed, // Compressed | 328 compressed, // Compressed |
| 325 spdy::INVALID, // Status | 329 spdy::INVALID, // Status |
| 326 NULL, // Data | 330 NULL, // Data |
| 327 0, // Length | 331 0, // Length |
| 328 spdy::DATA_FLAG_NONE // Data Flags | 332 spdy::DATA_FLAG_NONE // Data Flags |
| 329 }; | 333 }; |
| 330 static const char* const kStandardGetHeaders[] = { | 334 static const char* const kStandardGetHeaders[] = { |
| 331 "method", | 335 "method", |
| 332 "GET", | 336 "GET", |
| (...skipping 18 matching lines...) Expand all Loading... |
| 351 // |extra_headers| are the extra header-value pairs, which typically | 355 // |extra_headers| are the extra header-value pairs, which typically |
| 352 // will vary the most between calls. | 356 // will vary the most between calls. |
| 353 // Returns a SpdyFrame. | 357 // Returns a SpdyFrame. |
| 354 spdy::SpdyFrame* ConstructSpdyGetSynReply(const char* const extra_headers[], | 358 spdy::SpdyFrame* ConstructSpdyGetSynReply(const char* const extra_headers[], |
| 355 int extra_header_count, | 359 int extra_header_count, |
| 356 int stream_id) { | 360 int stream_id) { |
| 357 const SpdyHeaderInfo kSynStartHeader = { | 361 const SpdyHeaderInfo kSynStartHeader = { |
| 358 spdy::SYN_REPLY, // Kind = SynReply | 362 spdy::SYN_REPLY, // Kind = SynReply |
| 359 stream_id, // Stream ID | 363 stream_id, // Stream ID |
| 360 0, // Associated stream ID | 364 0, // Associated stream ID |
| 361 SPDY_PRIORITY_LOWEST, // Priority | 365 net::ConvertRequestPriorityToSpdyPriority(LOWEST), |
| 366 // Priority |
| 362 spdy::CONTROL_FLAG_NONE, // Control Flags | 367 spdy::CONTROL_FLAG_NONE, // Control Flags |
| 363 false, // Compressed | 368 false, // Compressed |
| 364 spdy::INVALID, // Status | 369 spdy::INVALID, // Status |
| 365 NULL, // Data | 370 NULL, // Data |
| 366 0, // Length | 371 0, // Length |
| 367 spdy::DATA_FLAG_NONE // Data Flags | 372 spdy::DATA_FLAG_NONE // Data Flags |
| 368 }; | 373 }; |
| 369 static const char* const kStandardGetHeaders[] = { | 374 static const char* const kStandardGetHeaders[] = { |
| 370 "hello", | 375 "hello", |
| 371 "bye", | 376 "bye", |
| (...skipping 15 matching lines...) Expand all Loading... |
| 387 // Constructs a standard SPDY POST SYN packet. | 392 // Constructs a standard SPDY POST SYN packet. |
| 388 // |extra_headers| are the extra header-value pairs, which typically | 393 // |extra_headers| are the extra header-value pairs, which typically |
| 389 // will vary the most between calls. | 394 // will vary the most between calls. |
| 390 // Returns a SpdyFrame. | 395 // Returns a SpdyFrame. |
| 391 spdy::SpdyFrame* ConstructSpdyPost(const char* const extra_headers[], | 396 spdy::SpdyFrame* ConstructSpdyPost(const char* const extra_headers[], |
| 392 int extra_header_count) { | 397 int extra_header_count) { |
| 393 const SpdyHeaderInfo kSynStartHeader = { | 398 const SpdyHeaderInfo kSynStartHeader = { |
| 394 spdy::SYN_STREAM, // Kind = Syn | 399 spdy::SYN_STREAM, // Kind = Syn |
| 395 1, // Stream ID | 400 1, // Stream ID |
| 396 0, // Associated stream ID | 401 0, // Associated stream ID |
| 397 SPDY_PRIORITY_LOWEST, // Priority | 402 net::ConvertRequestPriorityToSpdyPriority(LOWEST), |
| 403 // Priority |
| 398 spdy::CONTROL_FLAG_NONE, // Control Flags | 404 spdy::CONTROL_FLAG_NONE, // Control Flags |
| 399 false, // Compressed | 405 false, // Compressed |
| 400 spdy::INVALID, // Status | 406 spdy::INVALID, // Status |
| 401 NULL, // Data | 407 NULL, // Data |
| 402 0, // Length | 408 0, // Length |
| 403 spdy::DATA_FLAG_NONE // Data Flags | 409 spdy::DATA_FLAG_NONE // Data Flags |
| 404 }; | 410 }; |
| 405 static const char* const kStandardGetHeaders[] = { | 411 static const char* const kStandardGetHeaders[] = { |
| 406 "method", | 412 "method", |
| 407 "POST", | 413 "POST", |
| (...skipping 17 matching lines...) Expand all Loading... |
| 425 // Constructs a standard SPDY SYN_REPLY packet to match the SPDY POST. | 431 // Constructs a standard SPDY SYN_REPLY packet to match the SPDY POST. |
| 426 // |extra_headers| are the extra header-value pairs, which typically | 432 // |extra_headers| are the extra header-value pairs, which typically |
| 427 // will vary the most between calls. | 433 // will vary the most between calls. |
| 428 // Returns a SpdyFrame. | 434 // Returns a SpdyFrame. |
| 429 spdy::SpdyFrame* ConstructSpdyPostSynReply(const char* const extra_headers[], | 435 spdy::SpdyFrame* ConstructSpdyPostSynReply(const char* const extra_headers[], |
| 430 int extra_header_count) { | 436 int extra_header_count) { |
| 431 const SpdyHeaderInfo kSynStartHeader = { | 437 const SpdyHeaderInfo kSynStartHeader = { |
| 432 spdy::SYN_REPLY, // Kind = SynReply | 438 spdy::SYN_REPLY, // Kind = SynReply |
| 433 1, // Stream ID | 439 1, // Stream ID |
| 434 0, // Associated stream ID | 440 0, // Associated stream ID |
| 435 SPDY_PRIORITY_LOWEST, // Priority | 441 net::ConvertRequestPriorityToSpdyPriority(LOWEST), |
| 442 // Priority |
| 436 spdy::CONTROL_FLAG_NONE, // Control Flags | 443 spdy::CONTROL_FLAG_NONE, // Control Flags |
| 437 false, // Compressed | 444 false, // Compressed |
| 438 spdy::INVALID, // Status | 445 spdy::INVALID, // Status |
| 439 NULL, // Data | 446 NULL, // Data |
| 440 0, // Length | 447 0, // Length |
| 441 spdy::DATA_FLAG_NONE // Data Flags | 448 spdy::DATA_FLAG_NONE // Data Flags |
| 442 }; | 449 }; |
| 443 static const char* const kStandardGetHeaders[] = { | 450 static const char* const kStandardGetHeaders[] = { |
| 444 "hello", | 451 "hello", |
| 445 "bye", | 452 "bye", |
| (...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 580 char* ptr = buff; | 587 char* ptr = buff; |
| 581 for (int i = 0; i < num_frames; ++i) { | 588 for (int i = 0; i < num_frames; ++i) { |
| 582 int len = frames[i]->length() + spdy::SpdyFrame::size(); | 589 int len = frames[i]->length() + spdy::SpdyFrame::size(); |
| 583 memcpy(ptr, frames[i]->data(), len); | 590 memcpy(ptr, frames[i]->data(), len); |
| 584 ptr += len; | 591 ptr += len; |
| 585 } | 592 } |
| 586 return total_len; | 593 return total_len; |
| 587 } | 594 } |
| 588 | 595 |
| 589 } // namespace net | 596 } // namespace net |
| OLD | NEW |