| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 // Common utilities for Quic tests | 5 // Common utilities for Quic tests |
| 6 | 6 |
| 7 #ifndef NET_QUIC_TEST_TOOLS_QUIC_TEST_UTILS_H_ | 7 #ifndef NET_QUIC_TEST_TOOLS_QUIC_TEST_UTILS_H_ |
| 8 #define NET_QUIC_TEST_TOOLS_QUIC_TEST_UTILS_H_ | 8 #define NET_QUIC_TEST_TOOLS_QUIC_TEST_UTILS_H_ |
| 9 | 9 |
| 10 #include <stddef.h> | 10 #include <stddef.h> |
| (...skipping 494 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 505 QuicCryptoStream* GetCryptoStream() override { return crypto_stream_.get(); } | 505 QuicCryptoStream* GetCryptoStream() override { return crypto_stream_.get(); } |
| 506 | 506 |
| 507 MOCK_METHOD3(OnConnectionClosed, | 507 MOCK_METHOD3(OnConnectionClosed, |
| 508 void(QuicErrorCode error, | 508 void(QuicErrorCode error, |
| 509 const std::string& error_details, | 509 const std::string& error_details, |
| 510 ConnectionCloseSource source)); | 510 ConnectionCloseSource source)); |
| 511 MOCK_METHOD1(CreateIncomingDynamicStream, QuicStream*(QuicStreamId id)); | 511 MOCK_METHOD1(CreateIncomingDynamicStream, QuicStream*(QuicStreamId id)); |
| 512 MOCK_METHOD1(CreateOutgoingDynamicStream, QuicStream*(SpdyPriority priority)); | 512 MOCK_METHOD1(CreateOutgoingDynamicStream, QuicStream*(SpdyPriority priority)); |
| 513 MOCK_METHOD1(ShouldCreateIncomingDynamicStream, bool(QuicStreamId id)); | 513 MOCK_METHOD1(ShouldCreateIncomingDynamicStream, bool(QuicStreamId id)); |
| 514 MOCK_METHOD0(ShouldCreateOutgoingDynamicStream, bool()); | 514 MOCK_METHOD0(ShouldCreateOutgoingDynamicStream, bool()); |
| 515 MOCK_METHOD6(WritevData, | 515 MOCK_METHOD6( |
| 516 QuicConsumedData(QuicStream* stream, | 516 WritevData, |
| 517 QuicStreamId id, | 517 QuicConsumedData(QuicStream* stream, |
| 518 QuicIOVector data, | 518 QuicStreamId id, |
| 519 QuicStreamOffset offset, | 519 QuicIOVector data, |
| 520 bool fin, | 520 QuicStreamOffset offset, |
| 521 scoped_refptr<QuicAckListenerInterface>)); | 521 bool fin, |
| 522 QuicReferenceCountedPointer<QuicAckListenerInterface>)); |
| 522 | 523 |
| 523 MOCK_METHOD3(SendRstStream, | 524 MOCK_METHOD3(SendRstStream, |
| 524 void(QuicStreamId stream_id, | 525 void(QuicStreamId stream_id, |
| 525 QuicRstStreamErrorCode error, | 526 QuicRstStreamErrorCode error, |
| 526 QuicStreamOffset bytes_written)); | 527 QuicStreamOffset bytes_written)); |
| 527 | 528 |
| 528 MOCK_METHOD2(OnStreamHeaders, | 529 MOCK_METHOD2(OnStreamHeaders, |
| 529 void(QuicStreamId stream_id, base::StringPiece headers_data)); | 530 void(QuicStreamId stream_id, base::StringPiece headers_data)); |
| 530 MOCK_METHOD2(OnStreamHeadersPriority, | 531 MOCK_METHOD2(OnStreamHeadersPriority, |
| 531 void(QuicStreamId stream_id, SpdyPriority priority)); | 532 void(QuicStreamId stream_id, SpdyPriority priority)); |
| 532 MOCK_METHOD3(OnStreamHeadersComplete, | 533 MOCK_METHOD3(OnStreamHeadersComplete, |
| 533 void(QuicStreamId stream_id, bool fin, size_t frame_len)); | 534 void(QuicStreamId stream_id, bool fin, size_t frame_len)); |
| 534 MOCK_METHOD0(IsCryptoHandshakeConfirmed, bool()); | 535 MOCK_METHOD0(IsCryptoHandshakeConfirmed, bool()); |
| 535 | 536 |
| 536 using QuicSession::ActivateStream; | 537 using QuicSession::ActivateStream; |
| 537 | 538 |
| 538 // Returns a QuicConsumedData that indicates all of |data| (and |fin| if set) | 539 // Returns a QuicConsumedData that indicates all of |data| (and |fin| if set) |
| 539 // has been consumed. | 540 // has been consumed. |
| 540 static QuicConsumedData ConsumeAllData( | 541 static QuicConsumedData ConsumeAllData( |
| 541 QuicStream* stream, | 542 QuicStream* stream, |
| 542 QuicStreamId id, | 543 QuicStreamId id, |
| 543 const QuicIOVector& data, | 544 const QuicIOVector& data, |
| 544 QuicStreamOffset offset, | 545 QuicStreamOffset offset, |
| 545 bool fin, | 546 bool fin, |
| 546 const scoped_refptr<QuicAckListenerInterface>& ack_notifier_delegate); | 547 const QuicReferenceCountedPointer<QuicAckListenerInterface>& |
| 548 ack_notifier_delegate); |
| 547 | 549 |
| 548 private: | 550 private: |
| 549 std::unique_ptr<QuicCryptoStream> crypto_stream_; | 551 std::unique_ptr<QuicCryptoStream> crypto_stream_; |
| 550 | 552 |
| 551 DISALLOW_COPY_AND_ASSIGN(MockQuicSession); | 553 DISALLOW_COPY_AND_ASSIGN(MockQuicSession); |
| 552 }; | 554 }; |
| 553 | 555 |
| 554 class MockQuicSpdySession : public QuicSpdySession { | 556 class MockQuicSpdySession : public QuicSpdySession { |
| 555 public: | 557 public: |
| 556 // Takes ownership of |connection|. | 558 // Takes ownership of |connection|. |
| 557 explicit MockQuicSpdySession(QuicConnection* connection); | 559 explicit MockQuicSpdySession(QuicConnection* connection); |
| 558 ~MockQuicSpdySession() override; | 560 ~MockQuicSpdySession() override; |
| 559 | 561 |
| 560 QuicCryptoStream* GetCryptoStream() override { return crypto_stream_.get(); } | 562 QuicCryptoStream* GetCryptoStream() override { return crypto_stream_.get(); } |
| 561 const SpdyHeaderBlock& GetWriteHeaders() { return write_headers_; } | 563 const SpdyHeaderBlock& GetWriteHeaders() { return write_headers_; } |
| 562 | 564 |
| 563 // From QuicSession. | 565 // From QuicSession. |
| 564 MOCK_METHOD3(OnConnectionClosed, | 566 MOCK_METHOD3(OnConnectionClosed, |
| 565 void(QuicErrorCode error, | 567 void(QuicErrorCode error, |
| 566 const std::string& error_details, | 568 const std::string& error_details, |
| 567 ConnectionCloseSource source)); | 569 ConnectionCloseSource source)); |
| 568 MOCK_METHOD1(CreateIncomingDynamicStream, QuicSpdyStream*(QuicStreamId id)); | 570 MOCK_METHOD1(CreateIncomingDynamicStream, QuicSpdyStream*(QuicStreamId id)); |
| 569 MOCK_METHOD1(CreateOutgoingDynamicStream, | 571 MOCK_METHOD1(CreateOutgoingDynamicStream, |
| 570 QuicSpdyStream*(SpdyPriority priority)); | 572 QuicSpdyStream*(SpdyPriority priority)); |
| 571 MOCK_METHOD1(ShouldCreateIncomingDynamicStream, bool(QuicStreamId id)); | 573 MOCK_METHOD1(ShouldCreateIncomingDynamicStream, bool(QuicStreamId id)); |
| 572 MOCK_METHOD0(ShouldCreateOutgoingDynamicStream, bool()); | 574 MOCK_METHOD0(ShouldCreateOutgoingDynamicStream, bool()); |
| 573 MOCK_METHOD6( | 575 MOCK_METHOD6( |
| 574 WritevData, | 576 WritevData, |
| 575 QuicConsumedData(QuicStream* stream, | 577 QuicConsumedData( |
| 576 QuicStreamId id, | 578 QuicStream* stream, |
| 577 QuicIOVector data, | 579 QuicStreamId id, |
| 578 QuicStreamOffset offset, | 580 QuicIOVector data, |
| 579 bool fin, | 581 QuicStreamOffset offset, |
| 580 scoped_refptr<QuicAckListenerInterface> ack_listener)); | 582 bool fin, |
| 583 QuicReferenceCountedPointer<QuicAckListenerInterface> ack_listener)); |
| 581 | 584 |
| 582 MOCK_METHOD3(SendRstStream, | 585 MOCK_METHOD3(SendRstStream, |
| 583 void(QuicStreamId stream_id, | 586 void(QuicStreamId stream_id, |
| 584 QuicRstStreamErrorCode error, | 587 QuicRstStreamErrorCode error, |
| 585 QuicStreamOffset bytes_written)); | 588 QuicStreamOffset bytes_written)); |
| 586 | 589 |
| 587 MOCK_METHOD2(OnStreamHeaders, | 590 MOCK_METHOD2(OnStreamHeaders, |
| 588 void(QuicStreamId stream_id, StringPiece headers_data)); | 591 void(QuicStreamId stream_id, StringPiece headers_data)); |
| 589 MOCK_METHOD2(OnStreamHeadersPriority, | 592 MOCK_METHOD2(OnStreamHeadersPriority, |
| 590 void(QuicStreamId stream_id, SpdyPriority priority)); | 593 void(QuicStreamId stream_id, SpdyPriority priority)); |
| (...skipping 11 matching lines...) Expand all Loading... |
| 602 void(QuicStreamId stream_id, | 605 void(QuicStreamId stream_id, |
| 603 QuicStreamId promised_stream_id, | 606 QuicStreamId promised_stream_id, |
| 604 size_t frame_len)); | 607 size_t frame_len)); |
| 605 MOCK_METHOD4(OnPromiseHeaderList, | 608 MOCK_METHOD4(OnPromiseHeaderList, |
| 606 void(QuicStreamId stream_id, | 609 void(QuicStreamId stream_id, |
| 607 QuicStreamId promised_stream_id, | 610 QuicStreamId promised_stream_id, |
| 608 size_t frame_len, | 611 size_t frame_len, |
| 609 const QuicHeaderList& header_list)); | 612 const QuicHeaderList& header_list)); |
| 610 // Methods taking non-copyable types like SpdyHeaderBlock by value cannot be | 613 // Methods taking non-copyable types like SpdyHeaderBlock by value cannot be |
| 611 // mocked directly. | 614 // mocked directly. |
| 612 size_t WriteHeaders( | 615 size_t WriteHeaders(QuicStreamId id, |
| 613 QuicStreamId id, | 616 SpdyHeaderBlock headers, |
| 614 SpdyHeaderBlock headers, | 617 bool fin, |
| 615 bool fin, | 618 SpdyPriority priority, |
| 616 SpdyPriority priority, | 619 QuicReferenceCountedPointer<QuicAckListenerInterface> |
| 617 scoped_refptr<QuicAckListenerInterface> ack_notifier_delegate) override { | 620 ack_notifier_delegate) override { |
| 618 write_headers_ = std::move(headers); | 621 write_headers_ = std::move(headers); |
| 619 return WriteHeadersMock(id, write_headers_, fin, priority, | 622 return WriteHeadersMock(id, write_headers_, fin, priority, |
| 620 ack_notifier_delegate); | 623 ack_notifier_delegate); |
| 621 } | 624 } |
| 622 MOCK_METHOD5(WriteHeadersMock, | 625 MOCK_METHOD5( |
| 623 size_t(QuicStreamId id, | 626 WriteHeadersMock, |
| 624 const SpdyHeaderBlock& headers, | 627 size_t(QuicStreamId id, |
| 625 bool fin, | 628 const SpdyHeaderBlock& headers, |
| 626 SpdyPriority priority, | 629 bool fin, |
| 627 const scoped_refptr<QuicAckListenerInterface>& | 630 SpdyPriority priority, |
| 628 ack_notifier_delegate)); | 631 const QuicReferenceCountedPointer<QuicAckListenerInterface>& |
| 632 ack_notifier_delegate)); |
| 629 MOCK_METHOD1(OnHeadersHeadOfLineBlocking, void(QuicTime::Delta delta)); | 633 MOCK_METHOD1(OnHeadersHeadOfLineBlocking, void(QuicTime::Delta delta)); |
| 630 MOCK_METHOD4( | 634 MOCK_METHOD4( |
| 631 OnStreamFrameData, | 635 OnStreamFrameData, |
| 632 void(QuicStreamId stream_id, const char* data, size_t len, bool fin)); | 636 void(QuicStreamId stream_id, const char* data, size_t len, bool fin)); |
| 633 | 637 |
| 634 using QuicSession::ActivateStream; | 638 using QuicSession::ActivateStream; |
| 635 | 639 |
| 636 private: | 640 private: |
| 637 std::unique_ptr<QuicCryptoStream> crypto_stream_; | 641 std::unique_ptr<QuicCryptoStream> crypto_stream_; |
| 638 SpdyHeaderBlock write_headers_; | 642 SpdyHeaderBlock write_headers_; |
| (...skipping 417 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1056 iov->iov_base = const_cast<char*>(str.data()); | 1060 iov->iov_base = const_cast<char*>(str.data()); |
| 1057 iov->iov_len = static_cast<size_t>(str.size()); | 1061 iov->iov_len = static_cast<size_t>(str.size()); |
| 1058 QuicIOVector quic_iov(iov, 1, str.size()); | 1062 QuicIOVector quic_iov(iov, 1, str.size()); |
| 1059 return quic_iov; | 1063 return quic_iov; |
| 1060 } | 1064 } |
| 1061 | 1065 |
| 1062 } // namespace test | 1066 } // namespace test |
| 1063 } // namespace net | 1067 } // namespace net |
| 1064 | 1068 |
| 1065 #endif // NET_QUIC_TEST_TOOLS_QUIC_TEST_UTILS_H_ | 1069 #endif // NET_QUIC_TEST_TOOLS_QUIC_TEST_UTILS_H_ |
| OLD | NEW |