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

Side by Side Diff: net/quic/quic_headers_stream_test.cc

Issue 180723003: Land Recent QUIC Changes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix unintialized memory error Created 6 years, 9 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 | Annotate | Revision Log
« no previous file with comments | « net/quic/quic_framer_test.cc ('k') | net/quic/quic_packet_creator.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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/quic_headers_stream.h" 5 #include "net/quic/quic_headers_stream.h"
6 6
7 #include "net/quic/quic_utils.h" 7 #include "net/quic/quic_utils.h"
8 #include "net/quic/spdy_utils.h" 8 #include "net/quic/spdy_utils.h"
9 #include "net/quic/test_tools/quic_connection_peer.h" 9 #include "net/quic/test_tools/quic_connection_peer.h"
10 #include "net/quic/test_tools/quic_session_peer.h" 10 #include "net/quic/test_tools/quic_session_peer.h"
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
75 body_("hello world"), 75 body_("hello world"),
76 framer_(SPDY3) { 76 framer_(SPDY3) {
77 headers_[":version"] = "HTTP/1.1"; 77 headers_[":version"] = "HTTP/1.1";
78 headers_[":status"] = "200 Ok"; 78 headers_[":status"] = "200 Ok";
79 headers_["content-length"] = "11"; 79 headers_["content-length"] = "11";
80 framer_.set_visitor(&visitor_); 80 framer_.set_visitor(&visitor_);
81 EXPECT_EQ(QUIC_VERSION_13, session_.connection()->version()); 81 EXPECT_EQ(QUIC_VERSION_13, session_.connection()->version());
82 EXPECT_TRUE(headers_stream_ != NULL); 82 EXPECT_TRUE(headers_stream_ != NULL);
83 } 83 }
84 84
85 QuicConsumedData SaveIov(const struct iovec* iov, int count) { 85 QuicConsumedData SaveIov(const IOVector& data) {
86 const iovec* iov = data.iovec();
87 int count = data.Capacity();
86 for (int i = 0 ; i < count; ++i) { 88 for (int i = 0 ; i < count; ++i) {
87 saved_data_.append(static_cast<char*>(iov[i].iov_base), iov[i].iov_len); 89 saved_data_.append(static_cast<char*>(iov[i].iov_base), iov[i].iov_len);
88 } 90 }
89 return QuicConsumedData(saved_data_.length(), false); 91 return QuicConsumedData(saved_data_.length(), false);
90 } 92 }
91 93
92 bool SaveHeaderData(const char* data, int len) { 94 bool SaveHeaderData(const char* data, int len) {
93 saved_header_data_.append(data, len); 95 saved_header_data_.append(data, len);
94 return true; 96 return true;
95 } 97 }
(...skipping 11 matching lines...) Expand all
107 void WriteHeadersAndExpectSynReply(QuicStreamId stream_id, 109 void WriteHeadersAndExpectSynReply(QuicStreamId stream_id,
108 bool fin) { 110 bool fin) {
109 WriteHeadersAndCheckData(stream_id, fin, 0, SYN_REPLY); 111 WriteHeadersAndCheckData(stream_id, fin, 0, SYN_REPLY);
110 } 112 }
111 113
112 void WriteHeadersAndCheckData(QuicStreamId stream_id, 114 void WriteHeadersAndCheckData(QuicStreamId stream_id,
113 bool fin, 115 bool fin,
114 QuicPriority priority, 116 QuicPriority priority,
115 SpdyFrameType type) { 117 SpdyFrameType type) {
116 // Write the headers and capture the outgoing data 118 // Write the headers and capture the outgoing data
117 EXPECT_CALL(session_, WritevData(kHeadersStreamId, _, _, _, false, NULL)) 119 EXPECT_CALL(session_, WritevData(kHeadersStreamId, _, _, false, NULL))
118 .WillOnce(WithArgs<1, 2>( 120 .WillOnce(WithArgs<1>(Invoke(this, &QuicHeadersStreamTest::SaveIov)));
119 Invoke(this, &QuicHeadersStreamTest::SaveIov)));
120 headers_stream_->WriteHeaders(stream_id, headers_, fin); 121 headers_stream_->WriteHeaders(stream_id, headers_, fin);
121 122
122 // Parse the outgoing data and check that it matches was was written. 123 // Parse the outgoing data and check that it matches was was written.
123 if (type == SYN_STREAM) { 124 if (type == SYN_STREAM) {
124 EXPECT_CALL(visitor_, OnSynStream(stream_id, kNoAssociatedStream, 0, 125 EXPECT_CALL(visitor_, OnSynStream(stream_id, kNoAssociatedStream, 0,
125 // priority, 126 // priority,
126 fin, kNotUnidirectional)); 127 fin, kNotUnidirectional));
127 } else { 128 } else {
128 EXPECT_CALL(visitor_, OnSynReply(stream_id, fin)); 129 EXPECT_CALL(visitor_, OnSynReply(stream_id, fin));
129 } 130 }
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after
307 QUIC_INVALID_HEADERS_STREAM_DATA, 308 QUIC_INVALID_HEADERS_STREAM_DATA,
308 "SPDY WINDOW_UPDATE frame recevied.")) 309 "SPDY WINDOW_UPDATE frame recevied."))
309 .WillOnce(InvokeWithoutArgs(this, 310 .WillOnce(InvokeWithoutArgs(this,
310 &QuicHeadersStreamTest::CloseConnection)); 311 &QuicHeadersStreamTest::CloseConnection));
311 headers_stream_->ProcessRawData(frame->data(), frame->size()); 312 headers_stream_->ProcessRawData(frame->data(), frame->size());
312 } 313 }
313 314
314 } // namespace 315 } // namespace
315 } // namespace test 316 } // namespace test
316 } // namespace net 317 } // namespace net
OLDNEW
« no previous file with comments | « net/quic/quic_framer_test.cc ('k') | net/quic/quic_packet_creator.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698