Index: net/quic/chromium/quic_chromium_client_stream_test.cc |
diff --git a/net/quic/chromium/quic_chromium_client_stream_test.cc b/net/quic/chromium/quic_chromium_client_stream_test.cc |
index 95f258d9515acb06408423c5ee908e6d2da50310..764c2f408f1d9732f31852936fa9a6307235cfd4 100644 |
--- a/net/quic/chromium/quic_chromium_client_stream_test.cc |
+++ b/net/quic/chromium/quic_chromium_client_stream_test.cc |
@@ -16,9 +16,12 @@ |
#include "net/quic/core/quic_client_session_base.h" |
#include "net/quic/core/quic_utils.h" |
#include "net/quic/core/spdy_utils.h" |
+#include "net/quic/platform/api/quic_ptr_util.h" |
#include "net/quic/test_tools/crypto_test_utils.h" |
+#include "net/quic/test_tools/quic_spdy_session_peer.h" |
#include "net/quic/test_tools/quic_test_utils.h" |
#include "net/test/gtest_util.h" |
+#include "net/tools/quic/quic_spdy_client_stream.h" |
#include "testing/gmock/include/gmock/gmock.h" |
#include "testing/gmock_mutant.h" |
@@ -60,6 +63,14 @@ class MockDelegate : public QuicChromiumClientStream::Delegate { |
DISALLOW_COPY_AND_ASSIGN(MockDelegate); |
}; |
+class TestQuicClientSessionBaseStream : public QuicSpdyStream { |
+ public: |
+ TestQuicClientSessionBaseStream(QuicStreamId id, QuicSpdySession* session) |
+ : QuicSpdyStream(id, session) {} |
+ |
+ void OnDataAvailable() override {} |
+}; |
+ |
class MockQuicClientSessionBase : public QuicClientSessionBase { |
public: |
explicit MockQuicClientSessionBase(QuicConnection* connection, |
@@ -129,6 +140,10 @@ class MockQuicClientSessionBase : public QuicClientSessionBase { |
ack_listener)); |
MOCK_METHOD1(OnHeadersHeadOfLineBlocking, void(QuicTime::Delta delta)); |
+ std::unique_ptr<QuicStream> CreateStream(QuicStreamId id) { |
+ return QuicMakeUnique<TestQuicClientSessionBaseStream>(id, this); |
+ } |
+ |
using QuicSession::ActivateStream; |
// Returns a QuicConsumedData that indicates all of |data| (and |fin| if set) |
@@ -246,6 +261,14 @@ class QuicChromiumClientStreamTest |
return h; |
} |
+ QuicStreamId GetNthClientInitiatedStreamId(int n) { |
+ return QuicSpdySessionPeer::GetNthClientInitiatedStreamId(session_, n); |
+ } |
+ |
+ QuicStreamId GetNthServerInitiatedStreamId(int n) { |
+ return QuicSpdySessionPeer::GetNthServerInitiatedStreamId(session_, n); |
+ } |
+ |
QuicCryptoClientConfig crypto_config_; |
testing::StrictMock<MockDelegate> delegate_; |
MockQuicConnectionHelper helper_; |
@@ -593,7 +616,7 @@ TEST_P(QuicChromiumClientStreamTest, HeadersBeforeDelegate) { |
// We don't use stream_ because we want an incoming server push |
// stream. |
QuicChromiumClientStream* stream = new QuicChromiumClientStream( |
- kServerDataStreamId1, &session_, NetLogWithSource()); |
+ GetNthServerInitiatedStreamId(0), &session_, NetLogWithSource()); |
session_.ActivateStream(base::WrapUnique(stream)); |
InitializeHeaders(); |