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

Side by Side Diff: net/quic/chromium/bidirectional_stream_quic_impl_unittest.cc

Issue 2603723002: Add a new QUIC platform API for text utilities. (Closed)
Patch Set: net/tools/quic/quic_packet_printer_bin.cc Created 3 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 unified diff | Download patch
« no previous file with comments | « net/net.gypi ('k') | net/quic/chromium/crypto_test_utils_chromium.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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/quic/chromium/bidirectional_stream_quic_impl.h" 5 #include "net/quic/chromium/bidirectional_stream_quic_impl.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/callback_helpers.h" 9 #include "base/callback_helpers.h"
10 #include "base/memory/ptr_util.h" 10 #include "base/memory/ptr_util.h"
(...skipping 15 matching lines...) Expand all
26 #include "net/quic/chromium/quic_chromium_connection_helper.h" 26 #include "net/quic/chromium/quic_chromium_connection_helper.h"
27 #include "net/quic/chromium/quic_chromium_packet_reader.h" 27 #include "net/quic/chromium/quic_chromium_packet_reader.h"
28 #include "net/quic/chromium/quic_chromium_packet_writer.h" 28 #include "net/quic/chromium/quic_chromium_packet_writer.h"
29 #include "net/quic/chromium/quic_http_utils.h" 29 #include "net/quic/chromium/quic_http_utils.h"
30 #include "net/quic/chromium/quic_server_info.h" 30 #include "net/quic/chromium/quic_server_info.h"
31 #include "net/quic/chromium/quic_test_packet_maker.h" 31 #include "net/quic/chromium/quic_test_packet_maker.h"
32 #include "net/quic/core/crypto/crypto_protocol.h" 32 #include "net/quic/core/crypto/crypto_protocol.h"
33 #include "net/quic/core/crypto/quic_decrypter.h" 33 #include "net/quic/core/crypto/quic_decrypter.h"
34 #include "net/quic/core/crypto/quic_encrypter.h" 34 #include "net/quic/core/crypto/quic_encrypter.h"
35 #include "net/quic/core/quic_connection.h" 35 #include "net/quic/core/quic_connection.h"
36 #include "net/quic/core/quic_utils.h"
37 #include "net/quic/core/spdy_utils.h" 36 #include "net/quic/core/spdy_utils.h"
37 #include "net/quic/platform/api/quic_text_utils.h"
38 #include "net/quic/test_tools/crypto_test_utils.h" 38 #include "net/quic/test_tools/crypto_test_utils.h"
39 #include "net/quic/test_tools/mock_clock.h" 39 #include "net/quic/test_tools/mock_clock.h"
40 #include "net/quic/test_tools/mock_random.h" 40 #include "net/quic/test_tools/mock_random.h"
41 #include "net/quic/test_tools/quic_connection_peer.h" 41 #include "net/quic/test_tools/quic_connection_peer.h"
42 #include "net/quic/test_tools/quic_test_utils.h" 42 #include "net/quic/test_tools/quic_test_utils.h"
43 #include "net/quic/test_tools/test_task_runner.h" 43 #include "net/quic/test_tools/test_task_runner.h"
44 #include "net/socket/socket_test_util.h" 44 #include "net/socket/socket_test_util.h"
45 #include "net/test/gtest_util.h" 45 #include "net/test/gtest_util.h"
46 #include "testing/gmock/include/gmock/gmock.h" 46 #include "testing/gmock/include/gmock/gmock.h"
47 #include "testing/gtest/include/gtest/gtest.h" 47 #include "testing/gtest/include/gtest/gtest.h"
(...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after
466 std::unique_ptr<QuicReceivedPacket> ConstructDataPacket( 466 std::unique_ptr<QuicReceivedPacket> ConstructDataPacket(
467 QuicPacketNumber packet_number, 467 QuicPacketNumber packet_number,
468 bool should_include_version, 468 bool should_include_version,
469 bool fin, 469 bool fin,
470 QuicStreamOffset offset, 470 QuicStreamOffset offset,
471 base::StringPiece data, 471 base::StringPiece data,
472 QuicTestPacketMaker* maker) { 472 QuicTestPacketMaker* maker) {
473 std::unique_ptr<QuicReceivedPacket> packet(maker->MakeDataPacket( 473 std::unique_ptr<QuicReceivedPacket> packet(maker->MakeDataPacket(
474 packet_number, stream_id_, should_include_version, fin, offset, data)); 474 packet_number, stream_id_, should_include_version, fin, offset, data));
475 DVLOG(2) << "packet(" << packet_number << "): " << std::endl 475 DVLOG(2) << "packet(" << packet_number << "): " << std::endl
476 << QuicUtils::HexDump(packet->AsStringPiece()); 476 << QuicTextUtils::HexDump(packet->AsStringPiece());
477 return packet; 477 return packet;
478 } 478 }
479 479
480 std::unique_ptr<QuicReceivedPacket> ConstructServerDataPacket( 480 std::unique_ptr<QuicReceivedPacket> ConstructServerDataPacket(
481 QuicPacketNumber packet_number, 481 QuicPacketNumber packet_number,
482 bool should_include_version, 482 bool should_include_version,
483 bool fin, 483 bool fin,
484 QuicStreamOffset offset, 484 QuicStreamOffset offset,
485 base::StringPiece data) { 485 base::StringPiece data) {
486 return ConstructDataPacket(packet_number, should_include_version, fin, 486 return ConstructDataPacket(packet_number, should_include_version, fin,
487 offset, data, &server_maker_); 487 offset, data, &server_maker_);
488 } 488 }
489 489
490 // Construct a data packet with multiple data frames 490 // Construct a data packet with multiple data frames
491 std::unique_ptr<QuicReceivedPacket> ConstructClientMultipleDataFramesPacket( 491 std::unique_ptr<QuicReceivedPacket> ConstructClientMultipleDataFramesPacket(
492 QuicPacketNumber packet_number, 492 QuicPacketNumber packet_number,
493 bool should_include_version, 493 bool should_include_version,
494 bool fin, 494 bool fin,
495 QuicStreamOffset offset, 495 QuicStreamOffset offset,
496 const std::vector<std::string>& data_writes) { 496 const std::vector<std::string>& data_writes) {
497 std::unique_ptr<QuicReceivedPacket> packet( 497 std::unique_ptr<QuicReceivedPacket> packet(
498 client_maker_.MakeMultipleDataFramesPacket(packet_number, stream_id_, 498 client_maker_.MakeMultipleDataFramesPacket(packet_number, stream_id_,
499 should_include_version, fin, 499 should_include_version, fin,
500 offset, data_writes)); 500 offset, data_writes));
501 DVLOG(2) << "packet(" << packet_number << "): " << std::endl 501 DVLOG(2) << "packet(" << packet_number << "): " << std::endl
502 << QuicUtils::HexDump(packet->AsStringPiece()); 502 << QuicTextUtils::HexDump(packet->AsStringPiece());
503 return packet; 503 return packet;
504 } 504 }
505 505
506 std::unique_ptr<QuicReceivedPacket> ConstructRequestHeadersPacket( 506 std::unique_ptr<QuicReceivedPacket> ConstructRequestHeadersPacket(
507 QuicPacketNumber packet_number, 507 QuicPacketNumber packet_number,
508 bool fin, 508 bool fin,
509 RequestPriority request_priority, 509 RequestPriority request_priority,
510 size_t* spdy_headers_frame_length) { 510 size_t* spdy_headers_frame_length) {
511 return ConstructRequestHeadersPacketInner( 511 return ConstructRequestHeadersPacketInner(
512 packet_number, stream_id_, fin, request_priority, 512 packet_number, stream_id_, fin, request_priority,
513 spdy_headers_frame_length, /*offset=*/nullptr); 513 spdy_headers_frame_length, /*offset=*/nullptr);
514 } 514 }
515 515
516 std::unique_ptr<QuicReceivedPacket> ConstructRequestHeadersPacketInner( 516 std::unique_ptr<QuicReceivedPacket> ConstructRequestHeadersPacketInner(
517 QuicPacketNumber packet_number, 517 QuicPacketNumber packet_number,
518 QuicStreamId stream_id, 518 QuicStreamId stream_id,
519 bool fin, 519 bool fin,
520 RequestPriority request_priority, 520 RequestPriority request_priority,
521 size_t* spdy_headers_frame_length, 521 size_t* spdy_headers_frame_length,
522 QuicStreamOffset* offset) { 522 QuicStreamOffset* offset) {
523 SpdyPriority priority = 523 SpdyPriority priority =
524 ConvertRequestPriorityToQuicPriority(request_priority); 524 ConvertRequestPriorityToQuicPriority(request_priority);
525 std::unique_ptr<QuicReceivedPacket> packet( 525 std::unique_ptr<QuicReceivedPacket> packet(
526 client_maker_.MakeRequestHeadersPacket( 526 client_maker_.MakeRequestHeadersPacket(
527 packet_number, stream_id, kIncludeVersion, fin, priority, 527 packet_number, stream_id, kIncludeVersion, fin, priority,
528 std::move(request_headers_), spdy_headers_frame_length, offset)); 528 std::move(request_headers_), spdy_headers_frame_length, offset));
529 DVLOG(2) << "packet(" << packet_number << "): " << std::endl 529 DVLOG(2) << "packet(" << packet_number << "): " << std::endl
530 << QuicUtils::HexDump(packet->AsStringPiece()); 530 << QuicTextUtils::HexDump(packet->AsStringPiece());
531 return packet; 531 return packet;
532 } 532 }
533 533
534 std::unique_ptr<QuicReceivedPacket> 534 std::unique_ptr<QuicReceivedPacket>
535 ConstructRequestHeadersAndMultipleDataFramesPacket( 535 ConstructRequestHeadersAndMultipleDataFramesPacket(
536 QuicPacketNumber packet_number, 536 QuicPacketNumber packet_number,
537 bool fin, 537 bool fin,
538 RequestPriority request_priority, 538 RequestPriority request_priority,
539 QuicStreamOffset* header_stream_offset, 539 QuicStreamOffset* header_stream_offset,
540 size_t* spdy_headers_frame_length, 540 size_t* spdy_headers_frame_length,
541 const std::vector<std::string>& data) { 541 const std::vector<std::string>& data) {
542 SpdyPriority priority = 542 SpdyPriority priority =
543 ConvertRequestPriorityToQuicPriority(request_priority); 543 ConvertRequestPriorityToQuicPriority(request_priority);
544 std::unique_ptr<QuicReceivedPacket> packet( 544 std::unique_ptr<QuicReceivedPacket> packet(
545 client_maker_.MakeRequestHeadersAndMultipleDataFramesPacket( 545 client_maker_.MakeRequestHeadersAndMultipleDataFramesPacket(
546 packet_number, stream_id_, kIncludeVersion, fin, priority, 546 packet_number, stream_id_, kIncludeVersion, fin, priority,
547 std::move(request_headers_), header_stream_offset, 547 std::move(request_headers_), header_stream_offset,
548 spdy_headers_frame_length, data)); 548 spdy_headers_frame_length, data));
549 DVLOG(2) << "packet(" << packet_number << "): " << std::endl 549 DVLOG(2) << "packet(" << packet_number << "): " << std::endl
550 << QuicUtils::HexDump(packet->AsStringPiece()); 550 << QuicTextUtils::HexDump(packet->AsStringPiece());
551 return packet; 551 return packet;
552 } 552 }
553 553
554 std::unique_ptr<QuicReceivedPacket> ConstructResponseHeadersPacket( 554 std::unique_ptr<QuicReceivedPacket> ConstructResponseHeadersPacket(
555 QuicPacketNumber packet_number, 555 QuicPacketNumber packet_number,
556 bool fin, 556 bool fin,
557 SpdyHeaderBlock response_headers, 557 SpdyHeaderBlock response_headers,
558 size_t* spdy_headers_frame_length, 558 size_t* spdy_headers_frame_length,
559 QuicStreamOffset* offset) { 559 QuicStreamOffset* offset) {
560 return ConstructResponseHeadersPacketInner( 560 return ConstructResponseHeadersPacketInner(
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
596 } 596 }
597 597
598 std::unique_ptr<QuicReceivedPacket> ConstructRstStreamCancelledPacket( 598 std::unique_ptr<QuicReceivedPacket> ConstructRstStreamCancelledPacket(
599 QuicPacketNumber packet_number, 599 QuicPacketNumber packet_number,
600 size_t bytes_written, 600 size_t bytes_written,
601 QuicTestPacketMaker* maker) { 601 QuicTestPacketMaker* maker) {
602 std::unique_ptr<QuicReceivedPacket> packet( 602 std::unique_ptr<QuicReceivedPacket> packet(
603 maker->MakeRstPacket(packet_number, !kIncludeVersion, stream_id_, 603 maker->MakeRstPacket(packet_number, !kIncludeVersion, stream_id_,
604 QUIC_STREAM_CANCELLED, bytes_written)); 604 QUIC_STREAM_CANCELLED, bytes_written));
605 DVLOG(2) << "packet(" << packet_number << "): " << std::endl 605 DVLOG(2) << "packet(" << packet_number << "): " << std::endl
606 << QuicUtils::HexDump(packet->AsStringPiece()); 606 << QuicTextUtils::HexDump(packet->AsStringPiece());
607 return packet; 607 return packet;
608 } 608 }
609 609
610 std::unique_ptr<QuicReceivedPacket> ConstructClientAckAndRstStreamPacket( 610 std::unique_ptr<QuicReceivedPacket> ConstructClientAckAndRstStreamPacket(
611 QuicPacketNumber packet_number, 611 QuicPacketNumber packet_number,
612 QuicPacketNumber largest_received, 612 QuicPacketNumber largest_received,
613 QuicPacketNumber ack_least_unacked, 613 QuicPacketNumber ack_least_unacked,
614 QuicPacketNumber stop_least_unacked) { 614 QuicPacketNumber stop_least_unacked) {
615 return client_maker_.MakeAckAndRstPacket( 615 return client_maker_.MakeAckAndRstPacket(
616 packet_number, !kIncludeVersion, stream_id_, QUIC_STREAM_CANCELLED, 616 packet_number, !kIncludeVersion, stream_id_, QUIC_STREAM_CANCELLED,
617 largest_received, ack_least_unacked, stop_least_unacked, 617 largest_received, ack_least_unacked, stop_least_unacked,
618 !kIncludeCongestionFeedback); 618 !kIncludeCongestionFeedback);
619 } 619 }
620 620
621 std::unique_ptr<QuicReceivedPacket> ConstructAckAndDataPacket( 621 std::unique_ptr<QuicReceivedPacket> ConstructAckAndDataPacket(
622 QuicPacketNumber packet_number, 622 QuicPacketNumber packet_number,
623 bool should_include_version, 623 bool should_include_version,
624 QuicPacketNumber largest_received, 624 QuicPacketNumber largest_received,
625 QuicPacketNumber least_unacked, 625 QuicPacketNumber least_unacked,
626 bool fin, 626 bool fin,
627 QuicStreamOffset offset, 627 QuicStreamOffset offset,
628 base::StringPiece data, 628 base::StringPiece data,
629 QuicTestPacketMaker* maker) { 629 QuicTestPacketMaker* maker) {
630 std::unique_ptr<QuicReceivedPacket> packet(maker->MakeAckAndDataPacket( 630 std::unique_ptr<QuicReceivedPacket> packet(maker->MakeAckAndDataPacket(
631 packet_number, should_include_version, stream_id_, largest_received, 631 packet_number, should_include_version, stream_id_, largest_received,
632 least_unacked, fin, offset, data)); 632 least_unacked, fin, offset, data));
633 DVLOG(2) << "packet(" << packet_number << "): " << std::endl 633 DVLOG(2) << "packet(" << packet_number << "): " << std::endl
634 << QuicUtils::HexDump(packet->AsStringPiece()); 634 << QuicTextUtils::HexDump(packet->AsStringPiece());
635 return packet; 635 return packet;
636 } 636 }
637 637
638 std::unique_ptr<QuicReceivedPacket> ConstructClientAckPacket( 638 std::unique_ptr<QuicReceivedPacket> ConstructClientAckPacket(
639 QuicPacketNumber packet_number, 639 QuicPacketNumber packet_number,
640 QuicPacketNumber largest_received, 640 QuicPacketNumber largest_received,
641 QuicPacketNumber least_unacked) { 641 QuicPacketNumber least_unacked) {
642 return client_maker_.MakeAckPacket(packet_number, largest_received, 642 return client_maker_.MakeAckPacket(packet_number, largest_received,
643 least_unacked, 643 least_unacked,
644 !kIncludeCongestionFeedback); 644 !kIncludeCongestionFeedback);
(...skipping 1196 matching lines...) Expand 10 before | Expand all | Expand 10 after
1841 1841
1842 base::RunLoop().RunUntilIdle(); 1842 base::RunLoop().RunUntilIdle();
1843 1843
1844 EXPECT_EQ(1, delegate->on_data_read_count()); 1844 EXPECT_EQ(1, delegate->on_data_read_count());
1845 EXPECT_EQ(0, delegate->on_data_sent_count()); 1845 EXPECT_EQ(0, delegate->on_data_sent_count());
1846 } 1846 }
1847 1847
1848 } // namespace test 1848 } // namespace test
1849 1849
1850 } // namespace net 1850 } // namespace net
OLDNEW
« no previous file with comments | « net/net.gypi ('k') | net/quic/chromium/crypto_test_utils_chromium.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698