Chromium Code Reviews| Index: net/spdy/spdy_test_util_common.cc |
| diff --git a/net/spdy/spdy_test_util_common.cc b/net/spdy/spdy_test_util_common.cc |
| index 6a2879480215d37315b1cfd4f48546f911d3f846..22e468c56e19cd711b64eb5f243e6116b8148a1c 100644 |
| --- a/net/spdy/spdy_test_util_common.cc |
| +++ b/net/spdy/spdy_test_util_common.cc |
| @@ -17,6 +17,7 @@ |
| #include "net/http/http_cache.h" |
| #include "net/http/http_network_session.h" |
| #include "net/http/http_network_transaction.h" |
| +#include "net/http/http_response_headers.h" |
|
bengr
2016/01/26 23:23:26
You also need to include "http_request_headers.h"
tbansal1
2016/01/27 00:13:34
Done.
|
| #include "net/http/http_server_properties_impl.h" |
| #include "net/socket/socket_test_util.h" |
| #include "net/socket/ssl_client_socket.h" |
| @@ -436,7 +437,7 @@ HttpNetworkSession::Params SpdySessionDependencies::CreateSessionParams( |
| session_deps->stream_max_recv_window_size; |
| params.time_func = session_deps->time_func; |
| params.next_protos = session_deps->next_protos; |
| - params.trusted_spdy_proxy = session_deps->trusted_spdy_proxy; |
| + params.proxy_delegate = session_deps->proxy_delegate.get(); |
| params.use_alternative_services = session_deps->use_alternative_services; |
| params.net_log = session_deps->net_log; |
| return params; |
| @@ -1347,4 +1348,77 @@ void SpdyTestUtil::SetPriority(RequestPriority priority, |
| priority, spdy_version())); |
| } |
| +TestProxyDelegate::TestProxyDelegate() |
| + : on_before_tunnel_request_called_(false), |
| + on_tunnel_request_completed_called_(false), |
| + on_tunnel_headers_received_called_(false) {} |
| + |
| +TestProxyDelegate::~TestProxyDelegate() {} |
| + |
| +void TestProxyDelegate::VerifyOnTunnelRequestCompleted( |
| + const std::string& endpoint, |
| + const std::string& proxy_server) const { |
| + EXPECT_TRUE(on_tunnel_request_completed_called_); |
| + EXPECT_TRUE(HostPortPair::FromString(endpoint) |
| + .Equals(on_tunnel_request_completed_endpoint_)); |
| + EXPECT_TRUE(HostPortPair::FromString(proxy_server) |
| + .Equals(on_tunnel_request_completed_proxy_server_)); |
| +} |
| + |
| +void TestProxyDelegate::VerifyOnTunnelHeadersReceived( |
| + const std::string& origin, |
| + const std::string& proxy_server, |
| + const std::string& status_line) const { |
| + EXPECT_TRUE(on_tunnel_headers_received_called_); |
| + EXPECT_TRUE(HostPortPair::FromString(origin) |
| + .Equals(on_tunnel_headers_received_origin_)); |
| + EXPECT_TRUE(HostPortPair::FromString(proxy_server) |
| + .Equals(on_tunnel_headers_received_proxy_server_)); |
| + EXPECT_EQ(status_line, on_tunnel_headers_received_status_line_); |
| +} |
| + |
| +void TestProxyDelegate::OnResolveProxy(const GURL& url, |
| + int load_flags, |
| + const ProxyService& proxy_service, |
| + ProxyInfo* result) {} |
| + |
| +void TestProxyDelegate::OnTunnelConnectCompleted( |
| + const HostPortPair& endpoint, |
| + const HostPortPair& proxy_server, |
| + int net_error) { |
| + on_tunnel_request_completed_called_ = true; |
| + on_tunnel_request_completed_endpoint_ = endpoint; |
| + on_tunnel_request_completed_proxy_server_ = proxy_server; |
| +} |
| + |
| +void TestProxyDelegate::OnFallback(const ProxyServer& bad_proxy, |
| + int net_error) {} |
| + |
| +void TestProxyDelegate::OnBeforeSendHeaders(URLRequest* request, |
| + const ProxyInfo& proxy_info, |
| + HttpRequestHeaders* headers) {} |
| + |
| +void TestProxyDelegate::OnBeforeTunnelRequest( |
| + const HostPortPair& proxy_server, |
| + HttpRequestHeaders* extra_headers) { |
| + on_before_tunnel_request_called_ = true; |
| + if (extra_headers) |
| + extra_headers->SetHeader("Foo", proxy_server.ToString()); |
| +} |
| + |
| +void TestProxyDelegate::OnTunnelHeadersReceived( |
| + const HostPortPair& origin, |
| + const HostPortPair& proxy_server, |
| + const HttpResponseHeaders& response_headers) { |
| + on_tunnel_headers_received_called_ = true; |
| + on_tunnel_headers_received_origin_ = origin; |
| + on_tunnel_headers_received_proxy_server_ = proxy_server; |
| + on_tunnel_headers_received_status_line_ = response_headers.GetStatusLine(); |
| +} |
| + |
| +bool TestProxyDelegate::IsTrustedSpdyProxy( |
| + const net::ProxyServer& proxy_server) const { |
| + return proxy_server.is_valid() && trusted_spdy_proxy_ == proxy_server; |
| +} |
| + |
| } // namespace net |