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

Unified Diff: net/tools/quic/quic_simple_server_session_test.cc

Issue 2102253003: Make SpdyHeaderBlock non-copyable. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: iOS fix. Created 4 years, 6 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/tools/quic/quic_simple_server_session.cc ('k') | net/tools/quic/quic_simple_server_stream.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/tools/quic/quic_simple_server_session_test.cc
diff --git a/net/tools/quic/quic_simple_server_session_test.cc b/net/tools/quic/quic_simple_server_session_test.cc
index 76e21be01ba89f64c3d109d29cd99fb408b31aa6..8e93f9bb37f5ccc8955db940c76349f6961dda96 100644
--- a/net/tools/quic/quic_simple_server_session_test.cc
+++ b/net/tools/quic/quic_simple_server_session_test.cc
@@ -66,17 +66,33 @@ class MockQuicHeadersStream : public QuicHeadersStream {
explicit MockQuicHeadersStream(QuicSpdySession* session)
: QuicHeadersStream(session) {}
- MOCK_METHOD4(WritePushPromise,
+ // Methods taking non-copyable types like SpdyHeaderBlock by value cannot be
+ // mocked directly.
+ size_t WritePushPromise(QuicStreamId original_stream_id,
+ QuicStreamId promised_stream_id,
+ SpdyHeaderBlock headers,
+ QuicAckListenerInterface* ack_listener) override {
+ return WritePushPromiseMock(original_stream_id, promised_stream_id, headers,
+ ack_listener);
+ }
+ MOCK_METHOD4(WritePushPromiseMock,
size_t(QuicStreamId original_stream_id,
QuicStreamId promised_stream_id,
- SpdyHeaderBlock headers,
+ const SpdyHeaderBlock& headers,
QuicAckListenerInterface* ack_listener));
- MOCK_METHOD5(WriteHeaders,
- size_t(QuicStreamId stream_id,
+ size_t WriteHeaders(QuicStreamId stream_id,
SpdyHeaderBlock headers,
bool fin,
SpdyPriority priority,
+ QuicAckListenerInterface* ack_listener) override {
+ return WriteHeadersMock(stream_id, headers, fin, priority, ack_listener);
+ }
+ MOCK_METHOD5(WriteHeadersMock,
+ size_t(QuicStreamId stream_id,
+ const SpdyHeaderBlock& headers,
+ bool fin,
+ SpdyPriority priority,
QuicAckListenerInterface* ack_listener));
};
@@ -462,18 +478,19 @@ class QuicSimpleServerSessionServerPushTest
GURL resource_url = GURL(url);
string body;
GenerateBody(&body, body_size);
- SpdyHeaderBlock response_headers;
QuicInMemoryCache::GetInstance()->AddSimpleResponse(resource_host, path,
200, body);
push_resources.push_back(QuicInMemoryCache::ServerPushInfo(
- resource_url, response_headers, kDefaultPriority, body));
+ resource_url, SpdyHeaderBlock(), kDefaultPriority, body));
// PUSH_PROMISED are sent for all the resources.
- EXPECT_CALL(*headers_stream_, WritePushPromise(kClientDataStreamId1,
- stream_id, _, nullptr));
+ EXPECT_CALL(
+ *headers_stream_,
+ WritePushPromiseMock(kClientDataStreamId1, stream_id, _, nullptr));
if (i <= kMaxStreamsForTest) {
// |kMaxStreamsForTest| promised responses should be sent.
- EXPECT_CALL(*headers_stream_, WriteHeaders(stream_id, _, false,
- kDefaultPriority, nullptr));
+ EXPECT_CALL(
+ *headers_stream_,
+ WriteHeadersMock(stream_id, _, false, kDefaultPriority, nullptr));
// Since flow control window is smaller than response body, not the
// whole body will be sent.
EXPECT_CALL(*connection_,
@@ -511,8 +528,9 @@ TEST_P(QuicSimpleServerSessionServerPushTest,
// After an open stream is marked draining, a new stream is expected to be
// created and a response sent on the stream.
- EXPECT_CALL(*headers_stream_, WriteHeaders(next_out_going_stream_id, _, false,
- kDefaultPriority, nullptr));
+ EXPECT_CALL(*headers_stream_,
+ WriteHeadersMock(next_out_going_stream_id, _, false,
+ kDefaultPriority, nullptr));
EXPECT_CALL(*connection_,
SendStreamData(next_out_going_stream_id, _, 0, false, nullptr))
.WillOnce(Return(QuicConsumedData(kStreamFlowControlWindowSize, false)));
@@ -545,14 +563,14 @@ TEST_P(QuicSimpleServerSessionServerPushTest,
// only one queued resource will be sent out.
QuicStreamId stream_not_reset = (kMaxStreamsForTest + 1) * 2;
InSequence s;
- EXPECT_CALL(*headers_stream_, WriteHeaders(stream_not_reset, _, false,
- kDefaultPriority, nullptr));
+ EXPECT_CALL(*headers_stream_, WriteHeadersMock(stream_not_reset, _, false,
+ kDefaultPriority, nullptr));
EXPECT_CALL(*connection_,
SendStreamData(stream_not_reset, _, 0, false, nullptr))
.WillOnce(Return(QuicConsumedData(kStreamFlowControlWindowSize, false)));
EXPECT_CALL(*connection_, SendBlocked(stream_not_reset));
- EXPECT_CALL(*headers_stream_, WriteHeaders(stream_got_reset, _, false,
- kDefaultPriority, nullptr))
+ EXPECT_CALL(*headers_stream_, WriteHeadersMock(stream_got_reset, _, false,
+ kDefaultPriority, nullptr))
.Times(0);
session_->StreamDraining(2);
@@ -572,8 +590,8 @@ TEST_P(QuicSimpleServerSessionServerPushTest,
QuicStreamId stream_got_reset = 2;
EXPECT_CALL(*connection_,
SendRstStream(stream_got_reset, QUIC_RST_ACKNOWLEDGEMENT, _));
- EXPECT_CALL(*headers_stream_, WriteHeaders(stream_to_open, _, false,
- kDefaultPriority, nullptr));
+ EXPECT_CALL(*headers_stream_, WriteHeadersMock(stream_to_open, _, false,
+ kDefaultPriority, nullptr));
EXPECT_CALL(*connection_,
SendStreamData(stream_to_open, _, 0, false, nullptr))
.WillOnce(Return(QuicConsumedData(kStreamFlowControlWindowSize, false)));
« no previous file with comments | « net/tools/quic/quic_simple_server_session.cc ('k') | net/tools/quic/quic_simple_server_stream.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698