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 2639870e81f36f4fefef5ad4626ced9bc629da13..ca8deed39c2479667a5471f565ca27e7acc7bd21 100644 |
--- a/net/socket/ssl_client_socket_unittest.cc |
+++ b/net/socket/ssl_client_socket_unittest.cc |
@@ -592,12 +592,15 @@ class SSLClientSocketTest : public PlatformTest { |
SSLClientSocketTest() |
: socket_factory_(ClientSocketFactory::GetDefaultFactory()), |
cert_verifier_(new MockCertVerifier), |
- transport_security_state_(new TransportSecurityState) { |
+ transport_security_state_(new TransportSecurityState), |
+ ran_completion_callback_(false) { |
cert_verifier_->set_default_result(OK); |
context_.cert_verifier = cert_verifier_.get(); |
context_.transport_security_state = transport_security_state_.get(); |
} |
+ void RecordCompletionCallbackRun() { ran_completion_callback_ = true; } |
wtc
2014/07/30 21:56:57
In ssl_client_socket_openssl_unittest.cc, this met
|
+ |
protected: |
// Sets up a TCP connection to a HTTPS server. To actually do the SSL |
// handshake, follow up with call to CreateAndConnectSSLClientSocket() below. |
@@ -660,6 +663,7 @@ class SSLClientSocketTest : public PlatformTest { |
SSLClientSocketContext context_; |
scoped_ptr<SSLClientSocket> sock_; |
CapturingNetLog log_; |
+ bool ran_completion_callback_; |
wtc
2014/07/30 21:56:58
Same here: this member should be renamed "ran_hand
|
private: |
scoped_ptr<StreamSocket> transport_; |
@@ -943,8 +947,6 @@ TEST_F(SSLClientSocketTest, ConnectMismatched) { |
scoped_ptr<SSLClientSocket> sock(CreateSSLClientSocket( |
transport.Pass(), test_server.host_port_pair(), kDefaultSSLConfig)); |
wtc
2014/07/30 21:56:58
Why don't you call sock->SetHandshakeCompletionCal
|
- EXPECT_FALSE(sock->IsConnected()); |
wtc
2014/07/30 21:56:57
Why did you delete this EXPECT_FALSE?
|
- |
rv = sock->Connect(callback.callback()); |
CapturingNetLog::CapturedEntryList entries; |
@@ -1167,6 +1169,12 @@ TEST_F(SSLClientSocketTest, Read_WithSynchronousError) { |
test_server.host_port_pair(), |
ssl_config)); |
+#if defined(USE_OPENSSL) |
+ sock->SetHandshakeCompletionCallback( |
+ base::Bind(&SSLClientSocketTest::RecordCompletionCallbackRun, |
+ base::Unretained(this))); |
+#endif |
+ |
rv = callback.GetResult(sock->Connect(callback.callback())); |
EXPECT_EQ(OK, rv); |
EXPECT_TRUE(sock->IsConnected()); |
@@ -1197,6 +1205,7 @@ TEST_F(SSLClientSocketTest, Read_WithSynchronousError) { |
#else |
// SSLClientSocketOpenSSL treats any errors as a simple EOF. |
EXPECT_EQ(0, rv); |
+ EXPECT_TRUE(ran_completion_callback_); |
#endif |
} |
@@ -1236,6 +1245,12 @@ TEST_F(SSLClientSocketTest, Write_WithSynchronousError) { |
test_server.host_port_pair(), |
ssl_config)); |
+#if defined(USE_OPENSSL) |
+ sock->SetHandshakeCompletionCallback( |
+ base::Bind(&SSLClientSocketTest::RecordCompletionCallbackRun, |
+ base::Unretained(this))); |
+#endif |
+ |
rv = callback.GetResult(sock->Connect(callback.callback())); |
EXPECT_EQ(OK, rv); |
EXPECT_TRUE(sock->IsConnected()); |
@@ -1278,6 +1293,7 @@ TEST_F(SSLClientSocketTest, Write_WithSynchronousError) { |
#else |
// SSLClientSocketOpenSSL treats any errors as a simple EOF. |
EXPECT_EQ(0, rv); |
+ EXPECT_TRUE(ran_completion_callback_); |
#endif |
} |
@@ -1502,6 +1518,12 @@ TEST_F(SSLClientSocketTest, Read_WithWriteError) { |
test_server.host_port_pair(), |
ssl_config)); |
+#if defined(USE_OPENSSL) |
+ sock->SetHandshakeCompletionCallback( |
+ base::Bind(&SSLClientSocketTest::RecordCompletionCallbackRun, |
+ base::Unretained(this))); |
+#endif |
+ |
rv = callback.GetResult(sock->Connect(callback.callback())); |
EXPECT_EQ(OK, rv); |
EXPECT_TRUE(sock->IsConnected()); |
@@ -1560,6 +1582,7 @@ TEST_F(SSLClientSocketTest, Read_WithWriteError) { |
#else |
// OpenSSL treats the reset as a generic protocol error. |
EXPECT_EQ(ERR_SSL_PROTOCOL_ERROR, rv); |
+ EXPECT_TRUE(ran_completion_callback_); |
#endif |
// Release the read. Some bytes should go through. |
@@ -1834,10 +1857,19 @@ TEST_F(SSLClientSocketTest, PrematureApplicationData) { |
scoped_ptr<SSLClientSocket> sock(CreateSSLClientSocket( |
transport.Pass(), test_server.host_port_pair(), kDefaultSSLConfig)); |
+#if defined(USE_OPENSSL) |
+ sock->SetHandshakeCompletionCallback( |
+ base::Bind(&SSLClientSocketTest::RecordCompletionCallbackRun, |
+ base::Unretained(this))); |
+#endif |
+ |
rv = sock->Connect(callback.callback()); |
if (rv == ERR_IO_PENDING) |
rv = callback.WaitForResult(); |
EXPECT_EQ(ERR_SSL_PROTOCOL_ERROR, rv); |
+#if defined(USE_OPENSSL) |
+ EXPECT_TRUE(ran_completion_callback_); |
+#endif |
} |
TEST_F(SSLClientSocketTest, CipherSuiteDisables) { |