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

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

Issue 11633030: Send the ClientHello handshake message. Fix a bug in (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years 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
OLDNEW
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 #include "net/quic/quic_stream_factory.h" 5 #include "net/quic/quic_stream_factory.h"
6 6
7 #include "base/rand_util.h" 7 #include "base/rand_util.h"
8 #include "base/run_loop.h" 8 #include "base/run_loop.h"
9 #include "base/string_util.h" 9 #include "base/string_util.h"
10 #include "net/base/mock_host_resolver.h" 10 #include "net/base/mock_host_resolver.h"
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 } 122 }
123 123
124 TEST_F(QuicStreamFactoryTest, Create) { 124 TEST_F(QuicStreamFactoryTest, Create) {
125 scoped_ptr<QuicEncryptedPacket> chlo(ConstructChlo()); 125 scoped_ptr<QuicEncryptedPacket> chlo(ConstructChlo());
126 scoped_ptr<QuicEncryptedPacket> ack(ConstructAckPacket(1, 1)); 126 scoped_ptr<QuicEncryptedPacket> ack(ConstructAckPacket(1, 1));
127 scoped_ptr<QuicEncryptedPacket> feedback(ConstructFeedbackPacket(3)); 127 scoped_ptr<QuicEncryptedPacket> feedback(ConstructFeedbackPacket(3));
128 scoped_ptr<QuicEncryptedPacket> rst3(ConstructRstPacket(4, 3)); 128 scoped_ptr<QuicEncryptedPacket> rst3(ConstructRstPacket(4, 3));
129 scoped_ptr<QuicEncryptedPacket> rst5(ConstructRstPacket(5, 5)); 129 scoped_ptr<QuicEncryptedPacket> rst5(ConstructRstPacket(5, 5));
130 scoped_ptr<QuicEncryptedPacket> rst7(ConstructRstPacket(6, 7)); 130 scoped_ptr<QuicEncryptedPacket> rst7(ConstructRstPacket(6, 7));
131 MockWrite writes[] = { 131 MockWrite writes[] = {
132 MockWrite(SYNCHRONOUS, chlo->data(), chlo->length()), 132 // TODO(wtc): This should be chlo. Moreover, why does
133 // ERR_CONNECTION_RESET // not cause the test to fail?
134 MockWrite(SYNCHRONOUS, ERR_CONNECTION_RESET),
wtc 2012/12/20 00:33:08 I can't use |chlo|, which is an empty CHLO message
Ryan Hamilton 2012/12/20 18:51:06 Let's chat offline.
133 MockWrite(SYNCHRONOUS, ack->data(), ack->length()), 135 MockWrite(SYNCHRONOUS, ack->data(), ack->length()),
134 MockWrite(SYNCHRONOUS, feedback->data(), feedback->length()), 136 MockWrite(SYNCHRONOUS, feedback->data(), feedback->length()),
135 MockWrite(SYNCHRONOUS, rst3->data(), rst3->length()), 137 MockWrite(SYNCHRONOUS, rst3->data(), rst3->length()),
136 MockWrite(SYNCHRONOUS, rst5->data(), rst5->length()), 138 MockWrite(SYNCHRONOUS, rst5->data(), rst5->length()),
137 MockWrite(SYNCHRONOUS, rst7->data(), rst7->length()), 139 MockWrite(SYNCHRONOUS, rst7->data(), rst7->length()),
138 }; 140 };
139 scoped_ptr<QuicEncryptedPacket> shlo(ConstructShlo()); 141 scoped_ptr<QuicEncryptedPacket> shlo(ConstructShlo());
140 scoped_ptr<QuicEncryptedPacket> ack2(ConstructAckPacket(2, 0)); 142 scoped_ptr<QuicEncryptedPacket> ack2(ConstructAckPacket(2, 0));
141 MockRead reads[] = { 143 MockRead reads[] = {
142 MockRead(SYNCHRONOUS, shlo->data(), shlo->length()), 144 MockRead(SYNCHRONOUS, shlo->data(), shlo->length()),
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 EXPECT_TRUE(socket_data.at_write_eof()); 186 EXPECT_TRUE(socket_data.at_write_eof());
185 } 187 }
186 188
187 TEST_F(QuicStreamFactoryTest, CancelCreate) { 189 TEST_F(QuicStreamFactoryTest, CancelCreate) {
188 scoped_ptr<QuicEncryptedPacket> chlo(ConstructChlo()); 190 scoped_ptr<QuicEncryptedPacket> chlo(ConstructChlo());
189 scoped_ptr<QuicEncryptedPacket> ack(ConstructAckPacket(1, 1)); 191 scoped_ptr<QuicEncryptedPacket> ack(ConstructAckPacket(1, 1));
190 scoped_ptr<QuicEncryptedPacket> feedback(ConstructFeedbackPacket(3)); 192 scoped_ptr<QuicEncryptedPacket> feedback(ConstructFeedbackPacket(3));
191 scoped_ptr<QuicEncryptedPacket> rst3(ConstructRstPacket(4, 3)); 193 scoped_ptr<QuicEncryptedPacket> rst3(ConstructRstPacket(4, 3));
192 194
193 MockWrite writes[] = { 195 MockWrite writes[] = {
194 MockWrite(SYNCHRONOUS, chlo->data(), chlo->length()), 196 // TODO(wtc): This should be chlo. Moreover, why does
197 // ERR_CONNECTION_RESET // not cause the test to fail?
198 MockWrite(SYNCHRONOUS, ERR_CONNECTION_RESET),
195 MockWrite(SYNCHRONOUS, ack->data(), ack->length()), 199 MockWrite(SYNCHRONOUS, ack->data(), ack->length()),
196 MockWrite(SYNCHRONOUS, feedback->data(), feedback->length()), 200 MockWrite(SYNCHRONOUS, feedback->data(), feedback->length()),
197 MockWrite(SYNCHRONOUS, rst3->data(), rst3->length()), 201 MockWrite(SYNCHRONOUS, rst3->data(), rst3->length()),
198 }; 202 };
199 scoped_ptr<QuicEncryptedPacket> shlo(ConstructShlo()); 203 scoped_ptr<QuicEncryptedPacket> shlo(ConstructShlo());
200 scoped_ptr<QuicEncryptedPacket> ack2(ConstructAckPacket(2, 0)); 204 scoped_ptr<QuicEncryptedPacket> ack2(ConstructAckPacket(2, 0));
201 MockRead reads[] = { 205 MockRead reads[] = {
202 MockRead(SYNCHRONOUS, shlo->data(), shlo->length()), 206 MockRead(SYNCHRONOUS, shlo->data(), shlo->length()),
203 MockRead(SYNCHRONOUS, ack2->data(), ack2->length()), 207 MockRead(SYNCHRONOUS, ack2->data(), ack2->length()),
204 MockRead(ASYNC, OK), // EOF 208 MockRead(ASYNC, OK), // EOF
(...skipping 14 matching lines...) Expand all
219 factory_.CreateIfSessionExists(host_port_proxy_pair_, net_log_)); 223 factory_.CreateIfSessionExists(host_port_proxy_pair_, net_log_));
220 EXPECT_TRUE(stream.get()); 224 EXPECT_TRUE(stream.get());
221 stream.reset(); 225 stream.reset();
222 226
223 EXPECT_TRUE(socket_data.at_read_eof()); 227 EXPECT_TRUE(socket_data.at_read_eof());
224 EXPECT_TRUE(socket_data.at_write_eof()); 228 EXPECT_TRUE(socket_data.at_write_eof());
225 } 229 }
226 230
227 } // namespace test 231 } // namespace test
228 } // namespace net 232 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698