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

Side by Side Diff: net/http/http_network_transaction_spdy3_unittest.cc

Issue 10704042: Fix race in HttpNetworkTransactionSpdy2Test.BasicAuthSpdyProxy (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Remove debug lines Created 8 years, 5 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
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/http/http_network_transaction.h" 5 #include "net/http/http_network_transaction.h"
6 6
7 #include <math.h> // ceil 7 #include <math.h> // ceil
8 #include <stdarg.h> 8 #include <stdarg.h>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 4925 matching lines...) Expand 10 before | Expand all | Expand 10 after
4936 scoped_ptr<SpdyFrame> connect2( 4936 scoped_ptr<SpdyFrame> connect2(
4937 ConstructSpdyConnect(kAuthCredentials, arraysize(kAuthCredentials)/2, 3)); 4937 ConstructSpdyConnect(kAuthCredentials, arraysize(kAuthCredentials)/2, 3));
4938 // fetch https://www.google.com/ via HTTP 4938 // fetch https://www.google.com/ via HTTP
4939 const char get[] = "GET / HTTP/1.1\r\n" 4939 const char get[] = "GET / HTTP/1.1\r\n"
4940 "Host: www.google.com\r\n" 4940 "Host: www.google.com\r\n"
4941 "Connection: keep-alive\r\n\r\n"; 4941 "Connection: keep-alive\r\n\r\n";
4942 scoped_ptr<SpdyFrame> wrapped_get( 4942 scoped_ptr<SpdyFrame> wrapped_get(
4943 ConstructSpdyBodyFrame(3, get, strlen(get), false)); 4943 ConstructSpdyBodyFrame(3, get, strlen(get), false));
4944 4944
4945 MockWrite spdy_writes[] = { 4945 MockWrite spdy_writes[] = {
4946 CreateMockWrite(*req, 0, ASYNC), 4946 CreateMockWrite(*req, 1, ASYNC),
4947 CreateMockWrite(*connect2, 2), 4947 CreateMockWrite(*connect2, 4),
4948 CreateMockWrite(*rst, 3, ASYNC), 4948 CreateMockWrite(*rst, 5, ASYNC),
4949 CreateMockWrite(*wrapped_get, 5) 4949 CreateMockWrite(*wrapped_get, 8)
4950 }; 4950 };
4951 4951
4952 // The proxy responds to the connect with a 407, using a persistent 4952 // The proxy responds to the connect with a 407, using a persistent
4953 // connection. 4953 // connection.
4954 const char* const kAuthChallenge[] = { 4954 const char* const kAuthChallenge[] = {
4955 ":status", "407 Proxy Authentication Required", 4955 ":status", "407 Proxy Authentication Required",
4956 ":version", "HTTP/1.1", 4956 ":version", "HTTP/1.1",
4957 "proxy-authenticate", "Basic realm=\"MyRealm1\"", 4957 "proxy-authenticate", "Basic realm=\"MyRealm1\"",
4958 }; 4958 };
4959 4959
(...skipping 10 matching lines...) Expand all
4970 4970
4971 scoped_ptr<SpdyFrame> conn_resp(ConstructSpdyGetSynReply(NULL, 0, 3)); 4971 scoped_ptr<SpdyFrame> conn_resp(ConstructSpdyGetSynReply(NULL, 0, 3));
4972 const char resp[] = "HTTP/1.1 200 OK\r\n" 4972 const char resp[] = "HTTP/1.1 200 OK\r\n"
4973 "Content-Length: 5\r\n\r\n"; 4973 "Content-Length: 5\r\n\r\n";
4974 4974
4975 scoped_ptr<SpdyFrame> wrapped_get_resp( 4975 scoped_ptr<SpdyFrame> wrapped_get_resp(
4976 ConstructSpdyBodyFrame(3, resp, strlen(resp), false)); 4976 ConstructSpdyBodyFrame(3, resp, strlen(resp), false));
4977 scoped_ptr<SpdyFrame> wrapped_body( 4977 scoped_ptr<SpdyFrame> wrapped_body(
4978 ConstructSpdyBodyFrame(3, "hello", 5, false)); 4978 ConstructSpdyBodyFrame(3, "hello", 5, false));
4979 MockRead spdy_reads[] = { 4979 MockRead spdy_reads[] = {
4980 CreateMockRead(*conn_auth_resp, 1, ASYNC), 4980 CreateMockRead(*conn_auth_resp, 2, ASYNC),
4981 CreateMockRead(*conn_resp, 4, ASYNC), 4981 CreateMockRead(*conn_resp, 6, ASYNC),
4982 CreateMockRead(*wrapped_get_resp, 5, ASYNC), 4982 CreateMockRead(*wrapped_get_resp, 9, ASYNC),
4983 CreateMockRead(*wrapped_body, 6, ASYNC), 4983 CreateMockRead(*wrapped_body, 10, ASYNC),
4984 MockRead(SYNCHRONOUS, ERR_IO_PENDING), 4984 MockRead(SYNCHRONOUS, ERR_IO_PENDING), // EOF. May or may not be read.
4985 }; 4985 };
4986 4986
4987 scoped_ptr<OrderedSocketData> spdy_data( 4987 scoped_ptr<OrderedSocketData> spdy_data(
4988 new OrderedSocketData( 4988 new OrderedSocketData(
4989 spdy_reads, arraysize(spdy_reads), 4989 spdy_reads, arraysize(spdy_reads),
4990 spdy_writes, arraysize(spdy_writes))); 4990 spdy_writes, arraysize(spdy_writes)));
4991 session_deps.socket_factory.AddSocketDataProvider(spdy_data.get()); 4991 session_deps.socket_factory.AddSocketDataProvider(spdy_data.get());
4992 // Negotiate SPDY to the proxy 4992 // Negotiate SPDY to the proxy
4993 SSLSocketDataProvider proxy(ASYNC, OK); 4993 SSLSocketDataProvider proxy(ASYNC, OK);
4994 proxy.SetNextProto(kProtoSPDY3); 4994 proxy.SetNextProto(kProtoSPDY3);
(...skipping 4804 matching lines...) Expand 10 before | Expand all | Expand 10 after
9799 StaticSocketDataProvider* data[] = { &data1, &data2 }; 9799 StaticSocketDataProvider* data[] = { &data1, &data2 };
9800 9800
9801 SimpleGetHelperResult out = SimpleGetHelperForData(data, arraysize(data)); 9801 SimpleGetHelperResult out = SimpleGetHelperForData(data, arraysize(data));
9802 9802
9803 EXPECT_EQ(OK, out.rv); 9803 EXPECT_EQ(OK, out.rv);
9804 EXPECT_EQ("HTTP/1.0 200 OK", out.status_line); 9804 EXPECT_EQ("HTTP/1.0 200 OK", out.status_line);
9805 EXPECT_EQ("hello world", out.response_data); 9805 EXPECT_EQ("hello world", out.response_data);
9806 } 9806 }
9807 9807
9808 } // namespace net 9808 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698