Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(164)

Side by Side Diff: net/proxy/proxy_service_unittest.cc

Issue 149191: Whenever proxy configurations contain socks and http/https/ftp proxies, socks... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « net/proxy/proxy_service.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "base/compiler_specific.h" 5 #include "base/compiler_specific.h"
6 #include "googleurl/src/gurl.h" 6 #include "googleurl/src/gurl.h"
7 #include "net/base/net_errors.h" 7 #include "net/base/net_errors.h"
8 #include "net/proxy/proxy_config_service.h" 8 #include "net/proxy/proxy_config_service.h"
9 #include "net/proxy/proxy_resolver.h" 9 #include "net/proxy/proxy_resolver.h"
10 #include "net/proxy/proxy_script_fetcher.h" 10 #include "net/proxy/proxy_script_fetcher.h"
(...skipping 925 matching lines...) Expand 10 before | Expand all | Expand 10 after
936 SyncProxyService service4(new MockProxyConfigService(config), 936 SyncProxyService service4(new MockProxyConfigService(config),
937 new MockProxyResolver); 937 new MockProxyResolver);
938 GURL test_url4("www.microsoft.com"); 938 GURL test_url4("www.microsoft.com");
939 net::ProxyInfo info4; 939 net::ProxyInfo info4;
940 rv = service4.ResolveProxy(test_url4, &info4); 940 rv = service4.ResolveProxy(test_url4, &info4);
941 EXPECT_EQ(rv, net::OK); 941 EXPECT_EQ(rv, net::OK);
942 EXPECT_FALSE(info4.is_direct()); 942 EXPECT_FALSE(info4.is_direct());
943 EXPECT_EQ("foopy1:8080", info4.proxy_server().ToURI()); 943 EXPECT_EQ("foopy1:8080", info4.proxy_server().ToURI());
944 } 944 }
945 945
946 // If only HTTP and a SOCKS proxy are specified, check if ftp/https queries
947 // fall back to the SOCKS proxy.
948 TEST(ProxyServiceTest, DefaultProxyFallbackToSOCKS) {
949 net::ProxyConfig config;
950 config.proxy_rules.ParseFromString("http=foopy1:8080;socks=foopy2:1080");
951 config.auto_detect = false;
952 EXPECT_EQ(net::ProxyConfig::ProxyRules::TYPE_PROXY_PER_SCHEME,
953 config.proxy_rules.type);
954
955 SyncProxyService service1(new MockProxyConfigService(config),
956 new MockProxyResolver);
957 GURL test_url1("http://www.msn.com");
958 net::ProxyInfo info1;
959 int rv = service1.ResolveProxy(test_url1, &info1);
960 EXPECT_EQ(net::OK, rv);
961 EXPECT_FALSE(info1.is_direct());
962 EXPECT_EQ("foopy1:8080", info1.proxy_server().ToURI());
963
964 SyncProxyService service2(new MockProxyConfigService(config),
965 new MockProxyResolver);
966 GURL test_url2("ftp://ftp.google.com");
967 net::ProxyInfo info2;
968 rv = service2.ResolveProxy(test_url2, &info2);
969 EXPECT_EQ(net::OK, rv);
970 EXPECT_FALSE(info2.is_direct());
971 EXPECT_EQ("socks4://foopy2:1080", info2.proxy_server().ToURI());
972
973 SyncProxyService service3(new MockProxyConfigService(config),
974 new MockProxyResolver);
975 GURL test_url3("https://webbranch.techcu.com");
976 net::ProxyInfo info3;
977 rv = service3.ResolveProxy(test_url3, &info3);
978 EXPECT_EQ(net::OK, rv);
979 EXPECT_FALSE(info3.is_direct());
980 EXPECT_EQ("socks4://foopy2:1080", info3.proxy_server().ToURI());
981
982 SyncProxyService service4(new MockProxyConfigService(config),
983 new MockProxyResolver);
984 GURL test_url4("www.microsoft.com");
985 net::ProxyInfo info4;
986 rv = service4.ResolveProxy(test_url4, &info4);
987 EXPECT_EQ(net::OK, rv);
988 EXPECT_FALSE(info4.is_direct());
989 EXPECT_EQ("socks4://foopy2:1080", info4.proxy_server().ToURI());
990 }
991
946 // Test cancellation of a queued request. 992 // Test cancellation of a queued request.
947 TEST(ProxyServiceTest, CancelQueuedRequest) { 993 TEST(ProxyServiceTest, CancelQueuedRequest) {
948 MockProxyConfigService* config_service = 994 MockProxyConfigService* config_service =
949 new MockProxyConfigService("http://foopy/proxy.pac"); 995 new MockProxyConfigService("http://foopy/proxy.pac");
950 996
951 BlockableProxyResolver* resolver = new BlockableProxyResolver; 997 BlockableProxyResolver* resolver = new BlockableProxyResolver;
952 998
953 ProxyServiceWithFutures service(config_service, resolver); 999 ProxyServiceWithFutures service(config_service, resolver);
954 1000
955 // Cause requests to pile up, by having them block in the PAC thread. 1001 // Cause requests to pile up, by having them block in the PAC thread.
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
1139 EXPECT_EQ("foopy1:8080", info.proxy_server().ToURI()); 1185 EXPECT_EQ("foopy1:8080", info.proxy_server().ToURI());
1140 1186
1141 net::ProxyConfig config2; 1187 net::ProxyConfig config2;
1142 config2.proxy_rules.ParseFromString("foopy2:8080"); 1188 config2.proxy_rules.ParseFromString("foopy2:8080");
1143 config2.auto_detect = false; 1189 config2.auto_detect = false;
1144 int result = service->ResetConfigService(new MockProxyConfigService(config2)); 1190 int result = service->ResetConfigService(new MockProxyConfigService(config2));
1145 DCHECK(result == 0); 1191 DCHECK(result == 0);
1146 service->ResolveProxy(GURL("http://request2"), &info); 1192 service->ResolveProxy(GURL("http://request2"), &info);
1147 EXPECT_EQ("foopy2:8080", info.proxy_server().ToURI()); 1193 EXPECT_EQ("foopy2:8080", info.proxy_server().ToURI());
1148 } 1194 }
OLDNEW
« no previous file with comments | « net/proxy/proxy_service.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698