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

Side by Side Diff: net/spdy/spdy_session_unittest.cc

Issue 9425016: Change MockRead and MockWrite (et. al.) to take an IoMode enum, instead (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: sync Created 8 years, 10 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/spdy/spdy_proxy_client_socket_unittest.cc ('k') | net/spdy/spdy_stream_unittest.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 (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/spdy/spdy_session.h" 5 #include "net/spdy/spdy_session.h"
6 6
7 #include "net/base/ip_endpoint.h" 7 #include "net/base/ip_endpoint.h"
8 #include "net/spdy/spdy_io_buffer.h" 8 #include "net/spdy/spdy_io_buffer.h"
9 #include "net/spdy/spdy_session_pool.h" 9 #include "net/spdy/spdy_session_pool.h"
10 #include "net/spdy/spdy_stream.h" 10 #include "net/spdy/spdy_stream.h"
(...skipping 94 matching lines...) Expand 10 before | Expand all | Expand 10 after
105 } 105 }
106 106
107 TEST_F(SpdySessionTest, GoAway) { 107 TEST_F(SpdySessionTest, GoAway) {
108 SpdySessionDependencies session_deps; 108 SpdySessionDependencies session_deps;
109 session_deps.host_resolver->set_synchronous_mode(true); 109 session_deps.host_resolver->set_synchronous_mode(true);
110 110
111 MockConnect connect_data(SYNCHRONOUS, OK); 111 MockConnect connect_data(SYNCHRONOUS, OK);
112 scoped_ptr<spdy::SpdyFrame> goaway(ConstructSpdyGoAway()); 112 scoped_ptr<spdy::SpdyFrame> goaway(ConstructSpdyGoAway());
113 MockRead reads[] = { 113 MockRead reads[] = {
114 CreateMockRead(*goaway), 114 CreateMockRead(*goaway),
115 MockRead(false, 0, 0) // EOF 115 MockRead(SYNCHRONOUS, 0, 0) // EOF
116 }; 116 };
117 StaticSocketDataProvider data(reads, arraysize(reads), NULL, 0); 117 StaticSocketDataProvider data(reads, arraysize(reads), NULL, 0);
118 data.set_connect_data(connect_data); 118 data.set_connect_data(connect_data);
119 session_deps.socket_factory->AddSocketDataProvider(&data); 119 session_deps.socket_factory->AddSocketDataProvider(&data);
120 120
121 SSLSocketDataProvider ssl(false, OK); 121 SSLSocketDataProvider ssl(SYNCHRONOUS, OK);
122 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); 122 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl);
123 123
124 scoped_refptr<HttpNetworkSession> http_session( 124 scoped_refptr<HttpNetworkSession> http_session(
125 SpdySessionDependencies::SpdyCreateSession(&session_deps)); 125 SpdySessionDependencies::SpdyCreateSession(&session_deps));
126 126
127 const std::string kTestHost("www.foo.com"); 127 const std::string kTestHost("www.foo.com");
128 const int kTestPort = 80; 128 const int kTestPort = 80;
129 HostPortPair test_host_port_pair(kTestHost, kTestPort); 129 HostPortPair test_host_port_pair(kTestHost, kTestPort);
130 HostPortProxyPair pair(test_host_port_pair, ProxyServer::Direct()); 130 HostPortProxyPair pair(test_host_port_pair, ProxyServer::Direct());
131 131
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
165 165
166 TEST_F(SpdySessionTest, Ping) { 166 TEST_F(SpdySessionTest, Ping) {
167 SpdySessionDependencies session_deps; 167 SpdySessionDependencies session_deps;
168 session_deps.host_resolver->set_synchronous_mode(true); 168 session_deps.host_resolver->set_synchronous_mode(true);
169 169
170 MockConnect connect_data(SYNCHRONOUS, OK); 170 MockConnect connect_data(SYNCHRONOUS, OK);
171 scoped_ptr<spdy::SpdyFrame> read_ping(ConstructSpdyPing()); 171 scoped_ptr<spdy::SpdyFrame> read_ping(ConstructSpdyPing());
172 MockRead reads[] = { 172 MockRead reads[] = {
173 CreateMockRead(*read_ping), 173 CreateMockRead(*read_ping),
174 CreateMockRead(*read_ping), 174 CreateMockRead(*read_ping),
175 MockRead(false, 0, 0) // EOF 175 MockRead(SYNCHRONOUS, 0, 0) // EOF
176 }; 176 };
177 scoped_ptr<spdy::SpdyFrame> write_ping(ConstructSpdyPing()); 177 scoped_ptr<spdy::SpdyFrame> write_ping(ConstructSpdyPing());
178 MockRead writes[] = { 178 MockRead writes[] = {
179 CreateMockRead(*write_ping), 179 CreateMockRead(*write_ping),
180 CreateMockRead(*write_ping), 180 CreateMockRead(*write_ping),
181 }; 181 };
182 StaticSocketDataProvider data( 182 StaticSocketDataProvider data(
183 reads, arraysize(reads), writes, arraysize(writes)); 183 reads, arraysize(reads), writes, arraysize(writes));
184 data.set_connect_data(connect_data); 184 data.set_connect_data(connect_data);
185 session_deps.socket_factory->AddSocketDataProvider(&data); 185 session_deps.socket_factory->AddSocketDataProvider(&data);
186 186
187 SSLSocketDataProvider ssl(false, OK); 187 SSLSocketDataProvider ssl(SYNCHRONOUS, OK);
188 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); 188 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl);
189 189
190 scoped_refptr<HttpNetworkSession> http_session( 190 scoped_refptr<HttpNetworkSession> http_session(
191 SpdySessionDependencies::SpdyCreateSession(&session_deps)); 191 SpdySessionDependencies::SpdyCreateSession(&session_deps));
192 192
193 static const char kStreamUrl[] = "http://www.google.com/"; 193 static const char kStreamUrl[] = "http://www.google.com/";
194 GURL url(kStreamUrl); 194 GURL url(kStreamUrl);
195 195
196 const std::string kTestHost("www.google.com"); 196 const std::string kTestHost("www.google.com");
197 const int kTestPort = 80; 197 const int kTestPort = 80;
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 } 255 }
256 256
257 TEST_F(SpdySessionTest, FailedPing) { 257 TEST_F(SpdySessionTest, FailedPing) {
258 SpdySessionDependencies session_deps; 258 SpdySessionDependencies session_deps;
259 session_deps.host_resolver->set_synchronous_mode(true); 259 session_deps.host_resolver->set_synchronous_mode(true);
260 260
261 MockConnect connect_data(SYNCHRONOUS, OK); 261 MockConnect connect_data(SYNCHRONOUS, OK);
262 scoped_ptr<spdy::SpdyFrame> read_ping(ConstructSpdyPing()); 262 scoped_ptr<spdy::SpdyFrame> read_ping(ConstructSpdyPing());
263 MockRead reads[] = { 263 MockRead reads[] = {
264 CreateMockRead(*read_ping), 264 CreateMockRead(*read_ping),
265 MockRead(false, 0, 0) // EOF 265 MockRead(SYNCHRONOUS, 0, 0) // EOF
266 }; 266 };
267 scoped_ptr<spdy::SpdyFrame> write_ping(ConstructSpdyPing()); 267 scoped_ptr<spdy::SpdyFrame> write_ping(ConstructSpdyPing());
268 MockRead writes[] = { 268 MockRead writes[] = {
269 CreateMockRead(*write_ping), 269 CreateMockRead(*write_ping),
270 }; 270 };
271 StaticSocketDataProvider data( 271 StaticSocketDataProvider data(
272 reads, arraysize(reads), writes, arraysize(writes)); 272 reads, arraysize(reads), writes, arraysize(writes));
273 data.set_connect_data(connect_data); 273 data.set_connect_data(connect_data);
274 session_deps.socket_factory->AddSocketDataProvider(&data); 274 session_deps.socket_factory->AddSocketDataProvider(&data);
275 275
276 SSLSocketDataProvider ssl(false, OK); 276 SSLSocketDataProvider ssl(SYNCHRONOUS, OK);
277 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); 277 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl);
278 278
279 scoped_refptr<HttpNetworkSession> http_session( 279 scoped_refptr<HttpNetworkSession> http_session(
280 SpdySessionDependencies::SpdyCreateSession(&session_deps)); 280 SpdySessionDependencies::SpdyCreateSession(&session_deps));
281 281
282 static const char kStreamUrl[] = "http://www.gmail.com/"; 282 static const char kStreamUrl[] = "http://www.gmail.com/";
283 GURL url(kStreamUrl); 283 GURL url(kStreamUrl);
284 284
285 const std::string kTestHost("www.gmail.com"); 285 const std::string kTestHost("www.gmail.com");
286 const int kTestPort = 80; 286 const int kTestPort = 80;
(...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after
499 const size_t max_concurrent_streams = 2; 499 const size_t max_concurrent_streams = 2;
500 new_settings.push_back(spdy::SpdySetting(id, max_concurrent_streams)); 500 new_settings.push_back(spdy::SpdySetting(id, max_concurrent_streams));
501 501
502 // Set up the socket so we read a SETTINGS frame that raises max concurrent 502 // Set up the socket so we read a SETTINGS frame that raises max concurrent
503 // streams to 2. 503 // streams to 2.
504 MockConnect connect_data(SYNCHRONOUS, OK); 504 MockConnect connect_data(SYNCHRONOUS, OK);
505 scoped_ptr<spdy::SpdyFrame> settings_frame( 505 scoped_ptr<spdy::SpdyFrame> settings_frame(
506 ConstructSpdySettings(new_settings)); 506 ConstructSpdySettings(new_settings));
507 MockRead reads[] = { 507 MockRead reads[] = {
508 CreateMockRead(*settings_frame), 508 CreateMockRead(*settings_frame),
509 MockRead(false, 0, 0) // EOF 509 MockRead(SYNCHRONOUS, 0, 0) // EOF
510 }; 510 };
511 511
512 StaticSocketDataProvider data(reads, arraysize(reads), NULL, 0); 512 StaticSocketDataProvider data(reads, arraysize(reads), NULL, 0);
513 data.set_connect_data(connect_data); 513 data.set_connect_data(connect_data);
514 session_deps.socket_factory->AddSocketDataProvider(&data); 514 session_deps.socket_factory->AddSocketDataProvider(&data);
515 515
516 SSLSocketDataProvider ssl(false, OK); 516 SSLSocketDataProvider ssl(SYNCHRONOUS, OK);
517 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); 517 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl);
518 518
519 scoped_refptr<HttpNetworkSession> http_session( 519 scoped_refptr<HttpNetworkSession> http_session(
520 SpdySessionDependencies::SpdyCreateSession(&session_deps)); 520 SpdySessionDependencies::SpdyCreateSession(&session_deps));
521 521
522 const std::string kTestHost("www.foo.com"); 522 const std::string kTestHost("www.foo.com");
523 const int kTestPort = 80; 523 const int kTestPort = 80;
524 HostPortPair test_host_port_pair(kTestHost, kTestPort); 524 HostPortPair test_host_port_pair(kTestHost, kTestPort);
525 HostPortProxyPair pair(test_host_port_pair, ProxyServer::Direct()); 525 HostPortProxyPair pair(test_host_port_pair, ProxyServer::Direct());
526 526
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
579 579
580 // Start with max concurrent streams set to 1. Request two streams. When the 580 // Start with max concurrent streams set to 1. Request two streams. When the
581 // first completes, have the callback close itself, which should trigger the 581 // first completes, have the callback close itself, which should trigger the
582 // second stream creation. Then cancel that one immediately. Don't crash. 582 // second stream creation. Then cancel that one immediately. Don't crash.
583 // http://crbug.com/63532 583 // http://crbug.com/63532
584 TEST_F(SpdySessionTest, CancelPendingCreateStream) { 584 TEST_F(SpdySessionTest, CancelPendingCreateStream) {
585 SpdySessionDependencies session_deps; 585 SpdySessionDependencies session_deps;
586 session_deps.host_resolver->set_synchronous_mode(true); 586 session_deps.host_resolver->set_synchronous_mode(true);
587 587
588 MockRead reads[] = { 588 MockRead reads[] = {
589 MockRead(false, ERR_IO_PENDING) // Stall forever. 589 MockRead(SYNCHRONOUS, ERR_IO_PENDING) // Stall forever.
590 }; 590 };
591 591
592 StaticSocketDataProvider data(reads, arraysize(reads), NULL, 0); 592 StaticSocketDataProvider data(reads, arraysize(reads), NULL, 0);
593 MockConnect connect_data(SYNCHRONOUS, OK); 593 MockConnect connect_data(SYNCHRONOUS, OK);
594 594
595 data.set_connect_data(connect_data); 595 data.set_connect_data(connect_data);
596 session_deps.socket_factory->AddSocketDataProvider(&data); 596 session_deps.socket_factory->AddSocketDataProvider(&data);
597 597
598 SSLSocketDataProvider ssl(false, OK); 598 SSLSocketDataProvider ssl(SYNCHRONOUS, OK);
599 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); 599 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl);
600 600
601 scoped_refptr<HttpNetworkSession> http_session( 601 scoped_refptr<HttpNetworkSession> http_session(
602 SpdySessionDependencies::SpdyCreateSession(&session_deps)); 602 SpdySessionDependencies::SpdyCreateSession(&session_deps));
603 603
604 const std::string kTestHost("www.foo.com"); 604 const std::string kTestHost("www.foo.com");
605 const int kTestPort = 80; 605 const int kTestPort = 80;
606 HostPortPair test_host_port_pair(kTestHost, kTestPort); 606 HostPortPair test_host_port_pair(kTestHost, kTestPort);
607 HostPortProxyPair pair(test_host_port_pair, ProxyServer::Direct()); 607 HostPortProxyPair pair(test_host_port_pair, ProxyServer::Direct());
608 608
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
665 665
666 // Should not crash when running the pending callback. 666 // Should not crash when running the pending callback.
667 MessageLoop::current()->RunAllPending(); 667 MessageLoop::current()->RunAllPending();
668 } 668 }
669 669
670 TEST_F(SpdySessionTest, SendSettingsOnNewSession) { 670 TEST_F(SpdySessionTest, SendSettingsOnNewSession) {
671 SpdySessionDependencies session_deps; 671 SpdySessionDependencies session_deps;
672 session_deps.host_resolver->set_synchronous_mode(true); 672 session_deps.host_resolver->set_synchronous_mode(true);
673 673
674 MockRead reads[] = { 674 MockRead reads[] = {
675 MockRead(false, ERR_IO_PENDING) // Stall forever. 675 MockRead(SYNCHRONOUS, ERR_IO_PENDING) // Stall forever.
676 }; 676 };
677 677
678 // Create the bogus setting that we want to verify is sent out. 678 // Create the bogus setting that we want to verify is sent out.
679 // Note that it will be marked as SETTINGS_FLAG_PERSISTED when sent out. But 679 // Note that it will be marked as SETTINGS_FLAG_PERSISTED when sent out. But
680 // to set it into the SpdySettingsStorage, we need to mark as 680 // to set it into the SpdySettingsStorage, we need to mark as
681 // SETTINGS_FLAG_PLEASE_PERSIST. 681 // SETTINGS_FLAG_PLEASE_PERSIST.
682 spdy::SpdySettings settings; 682 spdy::SpdySettings settings;
683 const uint32 kBogusSettingId = 0xABAB; 683 const uint32 kBogusSettingId = 0xABAB;
684 const uint32 kBogusSettingValue = 0xCDCD; 684 const uint32 kBogusSettingValue = 0xCDCD;
685 spdy::SettingsFlagsAndId id(0); 685 spdy::SettingsFlagsAndId id(0);
686 id.set_id(kBogusSettingId); 686 id.set_id(kBogusSettingId);
687 id.set_flags(spdy::SETTINGS_FLAG_PERSISTED); 687 id.set_flags(spdy::SETTINGS_FLAG_PERSISTED);
688 settings.push_back(spdy::SpdySetting(id, kBogusSettingValue)); 688 settings.push_back(spdy::SpdySetting(id, kBogusSettingValue));
689 MockConnect connect_data(SYNCHRONOUS, OK); 689 MockConnect connect_data(SYNCHRONOUS, OK);
690 scoped_ptr<spdy::SpdyFrame> settings_frame( 690 scoped_ptr<spdy::SpdyFrame> settings_frame(
691 ConstructSpdySettings(settings)); 691 ConstructSpdySettings(settings));
692 MockWrite writes[] = { 692 MockWrite writes[] = {
693 CreateMockWrite(*settings_frame), 693 CreateMockWrite(*settings_frame),
694 }; 694 };
695 695
696 StaticSocketDataProvider data( 696 StaticSocketDataProvider data(
697 reads, arraysize(reads), writes, arraysize(writes)); 697 reads, arraysize(reads), writes, arraysize(writes));
698 data.set_connect_data(connect_data); 698 data.set_connect_data(connect_data);
699 session_deps.socket_factory->AddSocketDataProvider(&data); 699 session_deps.socket_factory->AddSocketDataProvider(&data);
700 700
701 SSLSocketDataProvider ssl(false, OK); 701 SSLSocketDataProvider ssl(SYNCHRONOUS, OK);
702 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); 702 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl);
703 703
704 scoped_refptr<HttpNetworkSession> http_session( 704 scoped_refptr<HttpNetworkSession> http_session(
705 SpdySessionDependencies::SpdyCreateSession(&session_deps)); 705 SpdySessionDependencies::SpdyCreateSession(&session_deps));
706 706
707 const std::string kTestHost("www.foo.com"); 707 const std::string kTestHost("www.foo.com");
708 const int kTestPort = 80; 708 const int kTestPort = 80;
709 HostPortPair test_host_port_pair(kTestHost, kTestPort); 709 HostPortPair test_host_port_pair(kTestHost, kTestPort);
710 HostPortProxyPair pair(test_host_port_pair, ProxyServer::Direct()); 710 HostPortProxyPair pair(test_host_port_pair, ProxyServer::Direct());
711 711
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
765 info, &test_hosts[i].addresses, CompletionCallback(), NULL, 765 info, &test_hosts[i].addresses, CompletionCallback(), NULL,
766 BoundNetLog()); 766 BoundNetLog());
767 767
768 // Setup a HostPortProxyPair 768 // Setup a HostPortProxyPair
769 test_hosts[i].pair = HostPortProxyPair( 769 test_hosts[i].pair = HostPortProxyPair(
770 HostPortPair(test_hosts[i].name, kTestPort), ProxyServer::Direct()); 770 HostPortPair(test_hosts[i].name, kTestPort), ProxyServer::Direct());
771 } 771 }
772 772
773 MockConnect connect_data(SYNCHRONOUS, OK); 773 MockConnect connect_data(SYNCHRONOUS, OK);
774 MockRead reads[] = { 774 MockRead reads[] = {
775 MockRead(false, ERR_IO_PENDING) // Stall forever. 775 MockRead(SYNCHRONOUS, ERR_IO_PENDING) // Stall forever.
776 }; 776 };
777 777
778 StaticSocketDataProvider data(reads, arraysize(reads), NULL, 0); 778 StaticSocketDataProvider data(reads, arraysize(reads), NULL, 0);
779 data.set_connect_data(connect_data); 779 data.set_connect_data(connect_data);
780 session_deps.socket_factory->AddSocketDataProvider(&data); 780 session_deps.socket_factory->AddSocketDataProvider(&data);
781 781
782 SSLSocketDataProvider ssl(false, OK); 782 SSLSocketDataProvider ssl(SYNCHRONOUS, OK);
783 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); 783 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl);
784 784
785 scoped_refptr<HttpNetworkSession> http_session( 785 scoped_refptr<HttpNetworkSession> http_session(
786 SpdySessionDependencies::SpdyCreateSession(&session_deps)); 786 SpdySessionDependencies::SpdyCreateSession(&session_deps));
787 787
788 // Setup the first session to the first host. 788 // Setup the first session to the first host.
789 SpdySessionPool* spdy_session_pool(http_session->spdy_session_pool()); 789 SpdySessionPool* spdy_session_pool(http_session->spdy_session_pool());
790 EXPECT_FALSE(spdy_session_pool->HasSession(test_hosts[0].pair)); 790 EXPECT_FALSE(spdy_session_pool->HasSession(test_hosts[0].pair));
791 scoped_refptr<SpdySession> session = 791 scoped_refptr<SpdySession> session =
792 spdy_session_pool->Get(test_hosts[0].pair, BoundNetLog()); 792 spdy_session_pool->Get(test_hosts[0].pair, BoundNetLog());
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after
905 spdy_session_pool->OnIPAddressChanged(); 905 spdy_session_pool->OnIPAddressChanged();
906 EXPECT_EQ(0u, test_http_server_properties->GetSpdySettings( 906 EXPECT_EQ(0u, test_http_server_properties->GetSpdySettings(
907 test_host_port_pair).size()); 907 test_host_port_pair).size());
908 } 908 }
909 909
910 TEST_F(SpdySessionTest, NeedsCredentials) { 910 TEST_F(SpdySessionTest, NeedsCredentials) {
911 SpdySessionDependencies session_deps; 911 SpdySessionDependencies session_deps;
912 912
913 MockConnect connect_data(SYNCHRONOUS, OK); 913 MockConnect connect_data(SYNCHRONOUS, OK);
914 MockRead reads[] = { 914 MockRead reads[] = {
915 MockRead(false, ERR_IO_PENDING) // Stall forever. 915 MockRead(SYNCHRONOUS, ERR_IO_PENDING) // Stall forever.
916 }; 916 };
917 StaticSocketDataProvider data(reads, arraysize(reads), NULL, 0); 917 StaticSocketDataProvider data(reads, arraysize(reads), NULL, 0);
918 data.set_connect_data(connect_data); 918 data.set_connect_data(connect_data);
919 session_deps.socket_factory->AddSocketDataProvider(&data); 919 session_deps.socket_factory->AddSocketDataProvider(&data);
920 920
921 SSLSocketDataProvider ssl(false, OK); 921 SSLSocketDataProvider ssl(SYNCHRONOUS, OK);
922 ssl.origin_bound_cert_type = CLIENT_CERT_RSA_SIGN; 922 ssl.origin_bound_cert_type = CLIENT_CERT_RSA_SIGN;
923 ssl.protocol_negotiated = SSLClientSocket::kProtoSPDY3; 923 ssl.protocol_negotiated = SSLClientSocket::kProtoSPDY3;
924 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); 924 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl);
925 925
926 scoped_refptr<HttpNetworkSession> http_session( 926 scoped_refptr<HttpNetworkSession> http_session(
927 SpdySessionDependencies::SpdyCreateSession(&session_deps)); 927 SpdySessionDependencies::SpdyCreateSession(&session_deps));
928 928
929 const std::string kTestHost("www.foo.com"); 929 const std::string kTestHost("www.foo.com");
930 const int kTestPort = 80; 930 const int kTestPort = 80;
931 HostPortPair test_host_port_pair(kTestHost, kTestPort); 931 HostPortPair test_host_port_pair(kTestHost, kTestPort);
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
973 973
974 spdy_session_pool->Remove(session); 974 spdy_session_pool->Remove(session);
975 EXPECT_FALSE(spdy_session_pool->HasSession(pair)); 975 EXPECT_FALSE(spdy_session_pool->HasSession(pair));
976 } 976 }
977 977
978 TEST_F(SpdySessionTest, SendCredentials) { 978 TEST_F(SpdySessionTest, SendCredentials) {
979 SpdySessionDependencies session_deps; 979 SpdySessionDependencies session_deps;
980 980
981 MockConnect connect_data(SYNCHRONOUS, OK); 981 MockConnect connect_data(SYNCHRONOUS, OK);
982 MockRead reads[] = { 982 MockRead reads[] = {
983 MockRead(false, ERR_IO_PENDING) // Stall forever. 983 MockRead(SYNCHRONOUS, ERR_IO_PENDING) // Stall forever.
984 }; 984 };
985 spdy::SpdySettings settings; 985 spdy::SpdySettings settings;
986 scoped_ptr<spdy::SpdyFrame> settings_frame( 986 scoped_ptr<spdy::SpdyFrame> settings_frame(
987 ConstructSpdySettings(settings)); 987 ConstructSpdySettings(settings));
988 MockWrite writes[] = { 988 MockWrite writes[] = {
989 CreateMockWrite(*settings_frame), 989 CreateMockWrite(*settings_frame),
990 }; 990 };
991 StaticSocketDataProvider data(reads, arraysize(reads), 991 StaticSocketDataProvider data(reads, arraysize(reads),
992 writes, arraysize(writes)); 992 writes, arraysize(writes));
993 data.set_connect_data(connect_data); 993 data.set_connect_data(connect_data);
994 session_deps.socket_factory->AddSocketDataProvider(&data); 994 session_deps.socket_factory->AddSocketDataProvider(&data);
995 995
996 SSLSocketDataProvider ssl(false, OK); 996 SSLSocketDataProvider ssl(SYNCHRONOUS, OK);
997 ssl.origin_bound_cert_type = CLIENT_CERT_RSA_SIGN; 997 ssl.origin_bound_cert_type = CLIENT_CERT_RSA_SIGN;
998 ssl.protocol_negotiated = SSLClientSocket::kProtoSPDY3; 998 ssl.protocol_negotiated = SSLClientSocket::kProtoSPDY3;
999 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl); 999 session_deps.socket_factory->AddSSLSocketDataProvider(&ssl);
1000 1000
1001 scoped_refptr<HttpNetworkSession> http_session( 1001 scoped_refptr<HttpNetworkSession> http_session(
1002 SpdySessionDependencies::SpdyCreateSession(&session_deps)); 1002 SpdySessionDependencies::SpdyCreateSession(&session_deps));
1003 1003
1004 const std::string kTestHost("www.foo.com"); 1004 const std::string kTestHost("www.foo.com");
1005 const int kTestPort = 80; 1005 const int kTestPort = 80;
1006 HostPortPair test_host_port_pair(kTestHost, kTestPort); 1006 HostPortPair test_host_port_pair(kTestHost, kTestPort);
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
1044 EXPECT_TRUE(session->NeedsCredentials(test_host_port_pair2)); 1044 EXPECT_TRUE(session->NeedsCredentials(test_host_port_pair2));
1045 1045
1046 // Flush the SpdySession::OnReadComplete() task. 1046 // Flush the SpdySession::OnReadComplete() task.
1047 MessageLoop::current()->RunAllPending(); 1047 MessageLoop::current()->RunAllPending();
1048 1048
1049 spdy_session_pool->Remove(session); 1049 spdy_session_pool->Remove(session);
1050 EXPECT_FALSE(spdy_session_pool->HasSession(pair)); 1050 EXPECT_FALSE(spdy_session_pool->HasSession(pair));
1051 } 1051 }
1052 1052
1053 } // namespace net 1053 } // namespace net
OLDNEW
« no previous file with comments | « net/spdy/spdy_proxy_client_socket_unittest.cc ('k') | net/spdy/spdy_stream_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698