summaryrefslogtreecommitdiffstats
path: root/net/proxy/proxy_config_service_common_unittest.cc
diff options
context:
space:
mode:
authorarindam@chromium.org <arindam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-14 05:23:30 +0000
committerarindam@chromium.org <arindam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-14 05:23:30 +0000
commit87a102b1bd6d2e450f10ed0931c09ffcfef9a51c (patch)
tree6877259bfdf9ec82c9952a1f66d9d450c037f331 /net/proxy/proxy_config_service_common_unittest.cc
parent565243e032009b7022b49c085b1157c3fb4986d4 (diff)
downloadchromium_src-87a102b1bd6d2e450f10ed0931c09ffcfef9a51c.zip
chromium_src-87a102b1bd6d2e450f10ed0931c09ffcfef9a51c.tar.gz
chromium_src-87a102b1bd6d2e450f10ed0931c09ffcfef9a51c.tar.bz2
Whenever proxy configurations contain socks and http/https/ftp proxies, socks configuration over rid the other proxies. Fixes the issue. Attached test cases.
BUG=15738 TEST=unittest (ProxyConfigTest.ParseProxyRules, ProxyServiceTest.DefaultProxyFallbackToSOCKS) Review URL: http://codereview.chromium.org/149191 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20605 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/proxy/proxy_config_service_common_unittest.cc')
-rw-r--r--net/proxy/proxy_config_service_common_unittest.cc29
1 files changed, 22 insertions, 7 deletions
diff --git a/net/proxy/proxy_config_service_common_unittest.cc b/net/proxy/proxy_config_service_common_unittest.cc
index 06f1c6a..1a61468 100644
--- a/net/proxy/proxy_config_service_common_unittest.cc
+++ b/net/proxy/proxy_config_service_common_unittest.cc
@@ -16,19 +16,26 @@ ProxyConfig::ProxyRules MakeProxyRules(
const char* single_proxy,
const char* proxy_for_http,
const char* proxy_for_https,
- const char* proxy_for_ftp) {
+ const char* proxy_for_ftp,
+ const char* socks_proxy) {
ProxyConfig::ProxyRules rules;
rules.type = type;
- rules.single_proxy = ProxyServer::FromURI(single_proxy);
- rules.proxy_for_http = ProxyServer::FromURI(proxy_for_http);
- rules.proxy_for_https = ProxyServer::FromURI(proxy_for_https);
- rules.proxy_for_ftp = ProxyServer::FromURI(proxy_for_ftp);
+ rules.single_proxy = ProxyServer::FromURI(single_proxy,
+ ProxyServer::SCHEME_HTTP);
+ rules.proxy_for_http = ProxyServer::FromURI(proxy_for_http,
+ ProxyServer::SCHEME_HTTP);
+ rules.proxy_for_https = ProxyServer::FromURI(proxy_for_https,
+ ProxyServer::SCHEME_HTTP);
+ rules.proxy_for_ftp = ProxyServer::FromURI(proxy_for_ftp,
+ ProxyServer::SCHEME_HTTP);
+ rules.socks_proxy = ProxyServer::FromURI(socks_proxy,
+ ProxyServer::SCHEME_SOCKS4);
return rules;
}
ProxyConfig::ProxyRules MakeSingleProxyRules(const char* single_proxy) {
return MakeProxyRules(ProxyConfig::ProxyRules::TYPE_SINGLE_PROXY,
- single_proxy, "", "", "");
+ single_proxy, "", "", "", "");
}
ProxyConfig::ProxyRules MakeProxyPerSchemeRules(
@@ -36,7 +43,15 @@ ProxyConfig::ProxyRules MakeProxyPerSchemeRules(
const char* proxy_https,
const char* proxy_ftp) {
return MakeProxyRules(ProxyConfig::ProxyRules::TYPE_PROXY_PER_SCHEME,
- "", proxy_http, proxy_https, proxy_ftp);
+ "", proxy_http, proxy_https, proxy_ftp, "");
+}
+ProxyConfig::ProxyRules MakeProxyPerSchemeRules(
+ const char* proxy_http,
+ const char* proxy_https,
+ const char* proxy_ftp,
+ const char* socks_proxy) {
+ return MakeProxyRules(ProxyConfig::ProxyRules::TYPE_PROXY_PER_SCHEME,
+ "", proxy_http, proxy_https, proxy_ftp, socks_proxy);
}
std::string FlattenProxyBypass(const BypassList& proxy_bypass) {