summaryrefslogtreecommitdiffstats
path: root/net/base/ssl_client_socket_unittest.cc
diff options
context:
space:
mode:
authordkegel@google.com <dkegel@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-14 23:14:35 +0000
committerdkegel@google.com <dkegel@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-14 23:14:35 +0000
commit518fdec3a07a94dc45d6e7e4ad1b529747dc03d3 (patch)
treefb2b17479a907a8960a8dc865630fe7272d041fc /net/base/ssl_client_socket_unittest.cc
parent5e997eacfb2234633831d06c91859ee76af44468 (diff)
downloadchromium_src-518fdec3a07a94dc45d6e7e4ad1b529747dc03d3.zip
chromium_src-518fdec3a07a94dc45d6e7e4ad1b529747dc03d3.tar.gz
chromium_src-518fdec3a07a94dc45d6e7e4ad1b529747dc03d3.tar.bz2
Reverting r9823 (http://codereview.chromium.org/16207) because
1) the Interactive Tests (dbg) buildbot needs the SSL cert installed 2) the same buildbot showed a refcounting problem, e.g. FATAL:ref_counted.cc(22)] Check failed: in_dtor_. RefCounted object deleted without calling Release() c:\b\slave\chromium-dbg-builder\build\src\chrome\browser\views\find_bar_win_interactive_uitest.cc(57): error: Value of: NULL != server.get() Actual: false Expected: true [ FAILED ] FindInPageTest.CrashEscHandlers (2109 ms) 3) the Webkit Linux buildbot failed four tests redirect302-frames.html cross-frame-access-protocol-explicit-domain.html cross-frame-access-protocol.html origin-header-for-https.html I'm leaving the tcp_pinger files in for the moment, they shouldn't hurt anything. Review URL: http://codereview.chromium.org/23028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9827 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/base/ssl_client_socket_unittest.cc')
-rw-r--r--net/base/ssl_client_socket_unittest.cc158
1 files changed, 28 insertions, 130 deletions
diff --git a/net/base/ssl_client_socket_unittest.cc b/net/base/ssl_client_socket_unittest.cc
index 4710151..faf5a4a 100644
--- a/net/base/ssl_client_socket_unittest.cc
+++ b/net/base/ssl_client_socket_unittest.cc
@@ -10,7 +10,6 @@
#include "net/base/net_errors.h"
#include "net/base/ssl_client_socket.h"
#include "net/base/ssl_config_service.h"
-#include "net/base/ssl_test_util.h"
#include "net/base/tcp_client_socket.h"
#include "net/base/test_completion_callback.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -23,74 +22,41 @@ const net::SSLConfig kDefaultSSLConfig;
class SSLClientSocketTest : public PlatformTest {
public:
SSLClientSocketTest()
- : socket_factory_(net::ClientSocketFactory::GetDefaultFactory()) {
- }
-
- void StartOKServer() {
- bool success = server_.Start(net::TestServerLauncher::ProtoHTTP,
- server_.kHostName, server_.kOKHTTPSPort,
- FilePath(), server_.GetOKCertPath());
- ASSERT_TRUE(success);
- }
-
- void StartMismatchedServer() {
- bool success = server_.Start(net::TestServerLauncher::ProtoHTTP,
- server_.kMismatchedHostName, server_.kOKHTTPSPort,
- FilePath(), server_.GetOKCertPath());
- ASSERT_TRUE(success);
- }
-
- void StartExpiredServer() {
- bool success = server_.Start(net::TestServerLauncher::ProtoHTTP,
- server_.kHostName, server_.kBadHTTPSPort,
- FilePath(), server_.GetExpiredCertPath());
- ASSERT_TRUE(success);
+ : host_mapper_(new net::RuleBasedHostMapper()),
+ scoped_host_mapper_(host_mapper_.get()),
+ socket_factory_(net::ClientSocketFactory::GetDefaultFactory()) {
+ // TODO(darin): kill this exception once we have a way to test out the
+ // TCPClientSocket class using loopback connections.
+ host_mapper_->AddRule("bugs.webkit.org", "bugs.webkit.org");
}
protected:
+ scoped_refptr<net::RuleBasedHostMapper> host_mapper_;
+ net::ScopedHostMapper scoped_host_mapper_;
net::ClientSocketFactory* socket_factory_;
- net::TestServerLauncher server_;
};
//-----------------------------------------------------------------------------
-#if defined(OS_MACOSX)
-#define MAYBE_Connect DISABLED_Connect
-#define MAYBE_ConnectExpired DISABLED_ConnectExpired
-#define MAYBE_ConnectMismatched DISABLED_ConnectMismatched
-#define MAYBE_Read DISABLED_Read
-#define MAYBE_Read_SmallChunks DISABLED_Read_SmallChunks
-#define MAYBE_Read_Interrupted DISABLED_Read_Interrupted
-#else
-#define MAYBE_Connect Connect
-#define MAYBE_ConnectExpired ConnectExpired
-#define MAYBE_ConnectMismatched ConnectMismatched
-#define MAYBE_Read Read
-#define MAYBE_Read_SmallChunks Read_SmallChunks
-#define MAYBE_Read_Interrupted Read_Interrupted
-#endif
-
-TEST_F(SSLClientSocketTest, MAYBE_Connect) {
- StartOKServer();
-
+// bug 1354783
+TEST_F(SSLClientSocketTest, DISABLED_Connect) {
net::AddressList addr;
net::HostResolver resolver;
TestCompletionCallback callback;
- int rv = resolver.Resolve(server_.kHostName, server_.kOKHTTPSPort,
- &addr, NULL);
+ std::string hostname = "bugs.webkit.org";
+ int rv = resolver.Resolve(hostname, 443, &addr, NULL);
EXPECT_EQ(net::OK, rv);
scoped_ptr<net::SSLClientSocket> sock(
socket_factory_->CreateSSLClientSocket(new net::TCPClientSocket(addr),
- server_.kHostName, kDefaultSSLConfig));
+ hostname, kDefaultSSLConfig));
EXPECT_FALSE(sock->IsConnected());
rv = sock->Connect(&callback);
if (rv != net::OK) {
ASSERT_EQ(net::ERR_IO_PENDING, rv);
- EXPECT_FALSE(sock->IsConnected());
rv = callback.WaitForResult();
EXPECT_EQ(net::OK, rv);
@@ -102,79 +68,14 @@ TEST_F(SSLClientSocketTest, MAYBE_Connect) {
EXPECT_FALSE(sock->IsConnected());
}
-TEST_F(SSLClientSocketTest, MAYBE_ConnectExpired) {
- StartExpiredServer();
-
+// bug 1354783
+TEST_F(SSLClientSocketTest, DISABLED_Read) {
net::AddressList addr;
net::HostResolver resolver;
TestCompletionCallback callback;
- int rv = resolver.Resolve(server_.kHostName, server_.kBadHTTPSPort,
- &addr, NULL);
- EXPECT_EQ(net::OK, rv);
-
- scoped_ptr<net::SSLClientSocket> sock(
- socket_factory_->CreateSSLClientSocket(new net::TCPClientSocket(addr),
- server_.kHostName, kDefaultSSLConfig));
-
- EXPECT_FALSE(sock->IsConnected());
-
- rv = sock->Connect(&callback);
- if (rv != net::OK) {
- ASSERT_EQ(net::ERR_IO_PENDING, rv);
- EXPECT_FALSE(sock->IsConnected());
-
- rv = callback.WaitForResult();
- EXPECT_EQ(net::ERR_CERT_DATE_INVALID, rv);
- }
-
- EXPECT_TRUE(sock->IsConnected());
-}
-
-TEST_F(SSLClientSocketTest, MAYBE_ConnectMismatched) {
- StartMismatchedServer();
-
- net::AddressList addr;
- net::HostResolver resolver;
- TestCompletionCallback callback;
-
- int rv = resolver.Resolve(server_.kMismatchedHostName, server_.kOKHTTPSPort,
- &addr, NULL);
- EXPECT_EQ(net::OK, rv);
-
- scoped_ptr<net::SSLClientSocket> sock(
- socket_factory_->CreateSSLClientSocket(new net::TCPClientSocket(addr),
- server_.kMismatchedHostName, kDefaultSSLConfig));
-
- EXPECT_FALSE(sock->IsConnected());
-
- rv = sock->Connect(&callback);
- if (rv != net::ERR_CERT_COMMON_NAME_INVALID) {
- ASSERT_EQ(net::ERR_IO_PENDING, rv);
- EXPECT_FALSE(sock->IsConnected());
-
- rv = callback.WaitForResult();
- EXPECT_EQ(net::ERR_CERT_COMMON_NAME_INVALID, rv);
- }
-
- // The Windows code happens to keep the connection
- // open now in spite of an error. The designers of
- // this API intended to also allow the connection
- // to be closed on error, in which case the caller
- // should call ReconnectIgnoringLastError, but
- // that's currently unimplemented.
- EXPECT_TRUE(sock->IsConnected());
-}
-
-TEST_F(SSLClientSocketTest, MAYBE_Read) {
- StartOKServer();
-
- net::AddressList addr;
- net::HostResolver resolver;
- TestCompletionCallback callback;
-
- int rv = resolver.Resolve(server_.kHostName, server_.kOKHTTPSPort,
- &addr, &callback);
+ std::string hostname = "bugs.webkit.org";
+ int rv = resolver.Resolve(hostname, 443, &addr, &callback);
EXPECT_EQ(net::ERR_IO_PENDING, rv);
rv = callback.WaitForResult();
@@ -182,8 +83,7 @@ TEST_F(SSLClientSocketTest, MAYBE_Read) {
scoped_ptr<net::SSLClientSocket> sock(
socket_factory_->CreateSSLClientSocket(new net::TCPClientSocket(addr),
- server_.kHostName,
- kDefaultSSLConfig));
+ hostname, kDefaultSSLConfig));
rv = sock->Connect(&callback);
if (rv != net::OK) {
@@ -217,20 +117,19 @@ TEST_F(SSLClientSocketTest, MAYBE_Read) {
}
}
-TEST_F(SSLClientSocketTest, MAYBE_Read_SmallChunks) {
- StartOKServer();
-
+// bug 1354783
+TEST_F(SSLClientSocketTest, DISABLED_Read_SmallChunks) {
net::AddressList addr;
net::HostResolver resolver;
TestCompletionCallback callback;
- int rv = resolver.Resolve(server_.kHostName, server_.kOKHTTPSPort,
- &addr, NULL);
+ std::string hostname = "bugs.webkit.org";
+ int rv = resolver.Resolve(hostname, 443, &addr, NULL);
EXPECT_EQ(net::OK, rv);
scoped_ptr<net::SSLClientSocket> sock(
socket_factory_->CreateSSLClientSocket(new net::TCPClientSocket(addr),
- server_.kHostName, kDefaultSSLConfig));
+ hostname, kDefaultSSLConfig));
rv = sock->Connect(&callback);
if (rv != net::OK) {
@@ -263,20 +162,19 @@ TEST_F(SSLClientSocketTest, MAYBE_Read_SmallChunks) {
}
}
-TEST_F(SSLClientSocketTest, MAYBE_Read_Interrupted) {
- StartOKServer();
-
+// bug 1354783
+TEST_F(SSLClientSocketTest, DISABLED_Read_Interrupted) {
net::AddressList addr;
net::HostResolver resolver;
TestCompletionCallback callback;
- int rv = resolver.Resolve(server_.kHostName, server_.kOKHTTPSPort,
- &addr, NULL);
+ std::string hostname = "bugs.webkit.org";
+ int rv = resolver.Resolve(hostname, 443, &addr, NULL);
EXPECT_EQ(net::OK, rv);
scoped_ptr<net::SSLClientSocket> sock(
socket_factory_->CreateSSLClientSocket(new net::TCPClientSocket(addr),
- server_.kHostName, kDefaultSSLConfig));
+ hostname, kDefaultSSLConfig));
rv = sock->Connect(&callback);
if (rv != net::OK) {