summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorerg@google.com <erg@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-11 20:44:42 +0000
committererg@google.com <erg@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2011-02-11 20:44:42 +0000
commit5322a7f16a374a15fe69b3bb2621678aede48bca (patch)
tree56c8ee955ed32cd69f8b3395cb609dcdd504e58c /net
parent192a05f2e4d8f66d095227439d4dce7bb14b16b5 (diff)
downloadchromium_src-5322a7f16a374a15fe69b3bb2621678aede48bca.zip
chromium_src-5322a7f16a374a15fe69b3bb2621678aede48bca.tar.gz
chromium_src-5322a7f16a374a15fe69b3bb2621678aede48bca.tar.bz2
Continuing with the out-of-lining of test code.
BUG=none TEST=compiles Review URL: http://codereview.chromium.org/6485015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@74660 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net')
-rw-r--r--net/http/http_auth_gssapi_posix_unittest.cc31
-rw-r--r--net/http/http_auth_handler_negotiate_unittest.cc34
-rw-r--r--net/http/http_network_session_peer.cc69
-rw-r--r--net/http/http_network_session_peer.h59
-rw-r--r--net/http/mock_gssapi_library_posix.cc41
-rw-r--r--net/http/mock_gssapi_library_posix.h9
-rw-r--r--net/net.gyp1
7 files changed, 166 insertions, 78 deletions
diff --git a/net/http/http_auth_gssapi_posix_unittest.cc b/net/http/http_auth_gssapi_posix_unittest.cc
index f83acb4..43a3285 100644
--- a/net/http/http_auth_gssapi_posix_unittest.cc
+++ b/net/http/http_auth_gssapi_posix_unittest.cc
@@ -109,23 +109,20 @@ TEST(HttpAuthGSSAPIPOSIXTest, GSSAPICycle) {
1, // Locally initiated
1); // Open
test::MockGSSAPILibrary::SecurityContextQuery queries[] = {
- { "Negotiate", // Package name
- GSS_S_CONTINUE_NEEDED, // Major response code
- 0, // Minor response code
- context1, // Context
- { 0, NULL }, // Expected input token
- { arraysize(kAuthResponse),
- const_cast<char*>(kAuthResponse) } // Output token
- },
- { "Negotiate", // Package name
- GSS_S_COMPLETE, // Major response code
- 0, // Minor response code
- context2, // Context
- { arraysize(kAuthResponse),
- const_cast<char*>(kAuthResponse) }, // Expected input token
- { arraysize(kAuthResponse),
- const_cast<char*>(kAuthResponse) } // Output token
- },
+ test::MockGSSAPILibrary::SecurityContextQuery(
+ "Negotiate", // Package name
+ GSS_S_CONTINUE_NEEDED, // Major response code
+ 0, // Minor response code
+ context1, // Context
+ NULL, // Expected input token
+ kAuthResponse), // Output token
+ test::MockGSSAPILibrary::SecurityContextQuery(
+ "Negotiate", // Package name
+ GSS_S_COMPLETE, // Major response code
+ 0, // Minor response code
+ context2, // Context
+ kAuthResponse, // Expected input token
+ kAuthResponse) // Output token
};
for (size_t i = 0; i < arraysize(queries); ++i) {
diff --git a/net/http/http_auth_handler_negotiate_unittest.cc b/net/http/http_auth_handler_negotiate_unittest.cc
index bb57151..cdaa5f3 100644
--- a/net/http/http_auth_handler_negotiate_unittest.cc
+++ b/net/http/http_auth_handler_negotiate_unittest.cc
@@ -116,23 +116,20 @@ class HttpAuthHandlerNegotiateTest : public PlatformTest {
1, // Locally initiated
1); // Open
test::MockGSSAPILibrary::SecurityContextQuery queries[] = {
- { "Negotiate", // Package name
+ test::MockGSSAPILibrary::SecurityContextQuery(
+ "Negotiate", // Package name
GSS_S_CONTINUE_NEEDED, // Major response code
0, // Minor response code
context1, // Context
- { 0, NULL }, // Expected input token
- { arraysize(kAuthResponse),
- const_cast<char*>(kAuthResponse) } // Output token
- },
- { "Negotiate", // Package name
+ NULL, // Expected input token
+ kAuthResponse), // Output token
+ test::MockGSSAPILibrary::SecurityContextQuery(
+ "Negotiate", // Package name
GSS_S_COMPLETE, // Major response code
0, // Minor response code
context2, // Context
- { arraysize(kAuthResponse),
- const_cast<char*>(kAuthResponse) }, // Expected input token
- { arraysize(kAuthResponse),
- const_cast<char*>(kAuthResponse) } // Output token
- },
+ kAuthResponse, // Expected input token
+ kAuthResponse) // Output token
};
for (size_t i = 0; i < arraysize(queries); ++i) {
@@ -159,14 +156,13 @@ class HttpAuthHandlerNegotiateTest : public PlatformTest {
0, // Context flags
1, // Locally initiated
0); // Open
- test::MockGSSAPILibrary::SecurityContextQuery query = {
- "Negotiate", // Package name
- major_status, // Major response code
- minor_status, // Minor response code
- context, // Context
- { 0, NULL }, // Expected input token
- { 0, NULL } // Output token
- };
+ test::MockGSSAPILibrary::SecurityContextQuery query(
+ "Negotiate", // Package name
+ major_status, // Major response code
+ minor_status, // Minor response code
+ context, // Context
+ NULL, // Expected input token
+ NULL); // Output token
mock_library->ExpectSecurityContext(query.expected_package,
query.response_code,
diff --git a/net/http/http_network_session_peer.cc b/net/http/http_network_session_peer.cc
new file mode 100644
index 0000000..7bb342c
--- /dev/null
+++ b/net/http/http_network_session_peer.cc
@@ -0,0 +1,69 @@
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "net/http/http_network_session_peer.h"
+
+#include "net/http/http_network_session.h"
+#include "net/http/http_proxy_client_socket_pool.h"
+#include "net/socket/socks_client_socket_pool.h"
+#include "net/socket/ssl_client_socket_pool.h"
+#include "net/socket/tcp_client_socket_pool.h"
+
+namespace net {
+
+HttpNetworkSessionPeer::HttpNetworkSessionPeer(
+ const scoped_refptr<HttpNetworkSession>& session)
+ : session_(session) {}
+
+HttpNetworkSessionPeer::~HttpNetworkSessionPeer() {}
+
+void HttpNetworkSessionPeer::SetTCPSocketPool(TCPClientSocketPool* pool) {
+ session_->socket_pool_manager_.tcp_socket_pool_.reset(pool);
+}
+
+void HttpNetworkSessionPeer::SetSocketPoolForSOCKSProxy(
+ const HostPortPair& socks_proxy,
+ SOCKSClientSocketPool* pool) {
+ ClientSocketPoolManager* socket_pool_manager =
+ &session_->socket_pool_manager_;
+
+ // Call through the public interface to force initialization of the
+ // wrapped socket pools.
+ delete socket_pool_manager->GetSocketPoolForSOCKSProxy(socks_proxy);
+ socket_pool_manager->socks_socket_pools_[socks_proxy] = pool;
+}
+
+void HttpNetworkSessionPeer::SetSocketPoolForHTTPProxy(
+ const HostPortPair& http_proxy,
+ HttpProxyClientSocketPool* pool) {
+ ClientSocketPoolManager* socket_pool_manager =
+ &session_->socket_pool_manager_;
+
+ // Call through the public interface to force initialization of the
+ // wrapped socket pools.
+ delete socket_pool_manager->GetSocketPoolForHTTPProxy(http_proxy);
+ socket_pool_manager->http_proxy_socket_pools_[http_proxy] = pool;
+}
+
+void HttpNetworkSessionPeer::SetSSLSocketPool(SSLClientSocketPool* pool) {
+ session_->socket_pool_manager_.ssl_socket_pool_.reset(pool);
+}
+
+void HttpNetworkSessionPeer::SetSocketPoolForSSLWithProxy(
+ const HostPortPair& proxy_host,
+ SSLClientSocketPool* pool) {
+ ClientSocketPoolManager* socket_pool_manager =
+ &session_->socket_pool_manager_;
+
+ // Call through the public interface to force initialization of the
+ // wrapped socket pools.
+ delete socket_pool_manager->GetSocketPoolForSSLWithProxy(proxy_host);
+ socket_pool_manager->ssl_socket_pools_for_proxies_[proxy_host] = pool;
+}
+
+void HttpNetworkSessionPeer::SetProxyService(ProxyService* proxy_service) {
+ session_->proxy_service_ = proxy_service;
+}
+
+} // namespace net
diff --git a/net/http/http_network_session_peer.h b/net/http/http_network_session_peer.h
index 13f3fa7..398488b 100644
--- a/net/http/http_network_session_peer.h
+++ b/net/http/http_network_session_peer.h
@@ -6,66 +6,41 @@
#define NET_HTTP_HTTP_NETWORK_SESSION_PEER_H_
#pragma once
-#include "net/http/http_network_session.h"
-#include "net/http/http_proxy_client_socket_pool.h"
-#include "net/socket/socks_client_socket_pool.h"
-#include "net/socket/ssl_client_socket_pool.h"
+#include "base/ref_counted.h"
namespace net {
+class HostPortPair;
+class HttpNetworkSession;
+class HttpProxyClientSocketPool;
+class ProxyService;
+class SOCKSClientSocketPool;
+class SSLClientSocketPool;
+class TCPClientSocketPool;
+
class HttpNetworkSessionPeer {
public:
explicit HttpNetworkSessionPeer(
- const scoped_refptr<HttpNetworkSession>& session)
- : session_(session) {}
+ const scoped_refptr<HttpNetworkSession>& session);
+ ~HttpNetworkSessionPeer();
- void SetTCPSocketPool(TCPClientSocketPool* pool) {
- session_->socket_pool_manager_.tcp_socket_pool_.reset(pool);
- }
+ void SetTCPSocketPool(TCPClientSocketPool* pool);
void SetSocketPoolForSOCKSProxy(
const HostPortPair& socks_proxy,
- SOCKSClientSocketPool* pool) {
- ClientSocketPoolManager* socket_pool_manager =
- &session_->socket_pool_manager_;
-
- // Call through the public interface to force initialization of the
- // wrapped socket pools.
- delete socket_pool_manager->GetSocketPoolForSOCKSProxy(socks_proxy);
- socket_pool_manager->socks_socket_pools_[socks_proxy] = pool;
- }
+ SOCKSClientSocketPool* pool);
void SetSocketPoolForHTTPProxy(
const HostPortPair& http_proxy,
- HttpProxyClientSocketPool* pool) {
- ClientSocketPoolManager* socket_pool_manager =
- &session_->socket_pool_manager_;
+ HttpProxyClientSocketPool* pool);
- // Call through the public interface to force initialization of the
- // wrapped socket pools.
- delete socket_pool_manager->GetSocketPoolForHTTPProxy(http_proxy);
- socket_pool_manager->http_proxy_socket_pools_[http_proxy] = pool;
- }
-
- void SetSSLSocketPool(SSLClientSocketPool* pool) {
- session_->socket_pool_manager_.ssl_socket_pool_.reset(pool);
- }
+ void SetSSLSocketPool(SSLClientSocketPool* pool);
void SetSocketPoolForSSLWithProxy(
const HostPortPair& proxy_host,
- SSLClientSocketPool* pool) {
- ClientSocketPoolManager* socket_pool_manager =
- &session_->socket_pool_manager_;
-
- // Call through the public interface to force initialization of the
- // wrapped socket pools.
- delete socket_pool_manager->GetSocketPoolForSSLWithProxy(proxy_host);
- socket_pool_manager->ssl_socket_pools_for_proxies_[proxy_host] = pool;
- }
+ SSLClientSocketPool* pool);
- void SetProxyService(ProxyService* proxy_service) {
- session_->proxy_service_ = proxy_service;
- }
+ void SetProxyService(ProxyService* proxy_service);
private:
const scoped_refptr<HttpNetworkSession> session_;
diff --git a/net/http/mock_gssapi_library_posix.cc b/net/http/mock_gssapi_library_posix.cc
index 1ca5040..5ae4721 100644
--- a/net/http/mock_gssapi_library_posix.cc
+++ b/net/http/mock_gssapi_library_posix.cc
@@ -188,6 +188,47 @@ void GssContextMockImpl::Assign(
open = other.open;
}
+MockGSSAPILibrary::SecurityContextQuery::SecurityContextQuery()
+ : expected_package(),
+ response_code(0),
+ minor_response_code(0),
+ context_info() {
+ expected_input_token.length = 0;
+ expected_input_token.value = NULL;
+ output_token.length = 0;
+ output_token.value = NULL;
+}
+
+MockGSSAPILibrary::SecurityContextQuery::SecurityContextQuery(
+ const std::string& in_expected_package,
+ OM_uint32 in_response_code,
+ OM_uint32 in_minor_response_code,
+ const test::GssContextMockImpl& in_context_info,
+ const char* in_expected_input_token,
+ const char* in_output_token)
+ : expected_package(in_expected_package),
+ response_code(in_response_code),
+ minor_response_code(in_minor_response_code),
+ context_info(in_context_info) {
+ if (in_expected_input_token) {
+ expected_input_token.length = strlen(in_expected_input_token);
+ expected_input_token.value = const_cast<char*>(in_expected_input_token);
+ } else {
+ expected_input_token.length = 0;
+ expected_input_token.value = NULL;
+ }
+
+ if (in_output_token) {
+ output_token.length = strlen(in_output_token);
+ output_token.value = const_cast<char*>(in_output_token);
+ } else {
+ output_token.length = 0;
+ output_token.value = NULL;
+ }
+}
+
+MockGSSAPILibrary::SecurityContextQuery::~SecurityContextQuery() {}
+
MockGSSAPILibrary::MockGSSAPILibrary() {
}
diff --git a/net/http/mock_gssapi_library_posix.h b/net/http/mock_gssapi_library_posix.h
index f0652d3..aad5de8 100644
--- a/net/http/mock_gssapi_library_posix.h
+++ b/net/http/mock_gssapi_library_posix.h
@@ -47,6 +47,15 @@ class MockGSSAPILibrary : public GSSAPILibrary {
public:
// Unit tests need access to this. "Friend"ing didn't help.
struct SecurityContextQuery {
+ SecurityContextQuery();
+ SecurityContextQuery(const std::string& expected_package,
+ OM_uint32 response_code,
+ OM_uint32 minor_response_code,
+ const test::GssContextMockImpl& context_info,
+ const char* expected_input_token,
+ const char* output_token);
+ ~SecurityContextQuery();
+
std::string expected_package;
OM_uint32 response_code;
OM_uint32 minor_response_code;
diff --git a/net/net.gyp b/net/net.gyp
index 768aacc..7d5236f 100644
--- a/net/net.gyp
+++ b/net/net.gyp
@@ -488,6 +488,7 @@
'http/http_network_layer.h',
'http/http_network_session.cc',
'http/http_network_session.h',
+ 'http/http_network_session_peer.cc',
'http/http_network_session_peer.h',
'http/http_network_transaction.cc',
'http/http_network_transaction.h',