Chromium Code Reviews| Index: net/socket/ssl_client_socket_unittest.cc |
| diff --git a/net/socket/ssl_client_socket_unittest.cc b/net/socket/ssl_client_socket_unittest.cc |
| index cdb268521157f866d6cdf8fc2c3a5583809bb5d5..6789d67ab3a7e170924af275b632bc294cbb7ab6 100644 |
| --- a/net/socket/ssl_client_socket_unittest.cc |
| +++ b/net/socket/ssl_client_socket_unittest.cc |
| @@ -2721,9 +2721,6 @@ TEST_F(SSLClientSocketTest, HandshakeCallbackIsRun_WithSuccess) { |
| sock->SetHandshakeCompletionCallback(base::Bind( |
| &SSLClientSocketTest::RecordCompletedHandshake, base::Unretained(this))); |
| - if (sock->IsConnected()) |
| - LOG(ERROR) << "SSL Socket prematurely connected"; |
|
wtc
2014/08/07 20:04:04
Did you mean to delete this? (I agree it's not use
|
| - |
| rv = callback.GetResult(sock->Connect(callback.callback())); |
| EXPECT_EQ(OK, rv); |
| @@ -2731,6 +2728,42 @@ TEST_F(SSLClientSocketTest, HandshakeCallbackIsRun_WithSuccess) { |
| EXPECT_TRUE(ran_handshake_completion_callback_); |
| } |
| +// Tests that the completion callback is run with connections |
| +// that do not cache their session. |
|
wtc
2014/08/07 20:04:04
Nit: this should point out it is the server that d
|
| +TEST_F(SSLClientSocketTest, HandshakeCallbackIsRun_WithDisabledSessionCache) { |
| + SpawnedTestServer::SSLOptions ssl_options; |
| + ssl_options.disable_session_cache = true; |
| + SpawnedTestServer test_server( |
| + SpawnedTestServer::TYPE_HTTPS, ssl_options, base::FilePath()); |
| + ASSERT_TRUE(test_server.Start()); |
| + |
| + AddressList addr; |
| + ASSERT_TRUE(test_server.GetAddressList(&addr)); |
| + |
| + scoped_ptr<StreamSocket> transport( |
| + new TCPClientSocket(addr, NULL, NetLog::Source())); |
| + |
| + TestCompletionCallback callback; |
| + int rv = transport->Connect(callback.callback()); |
| + if (rv == ERR_IO_PENDING) |
| + rv = callback.WaitForResult(); |
| + EXPECT_EQ(OK, rv); |
| + |
| + SSLConfig ssl_config = kDefaultSSLConfig; |
| + ssl_config.false_start_enabled = false; |
| + |
| + scoped_ptr<SSLClientSocket> sock(CreateSSLClientSocket( |
| + transport.Pass(), test_server.host_port_pair(), ssl_config)); |
| + |
| + sock->SetHandshakeCompletionCallback(base::Bind( |
| + &SSLClientSocketTest::RecordCompletedHandshake, base::Unretained(this))); |
| + |
| + rv = callback.GetResult(sock->Connect(callback.callback())); |
| + |
| + EXPECT_EQ(OK, rv); |
| + EXPECT_TRUE(sock->IsConnected()); |
| + EXPECT_TRUE(ran_handshake_completion_callback_); |
| +} |
| #endif // defined(USE_OPENSSL) |
| TEST_F(SSLClientSocketFalseStartTest, FalseStartEnabled) { |