| Index: net/proxy/proxy_service_unittest.cc
|
| diff --git a/net/proxy/proxy_service_unittest.cc b/net/proxy/proxy_service_unittest.cc
|
| index 609067145b5ac42e39026c7f284dd5a6fb32aee1..dfb53da181ffbc498b38c59b4890b3d329e9eeeb 100644
|
| --- a/net/proxy/proxy_service_unittest.cc
|
| +++ b/net/proxy/proxy_service_unittest.cc
|
| @@ -1576,6 +1576,39 @@ TEST_F(ProxyServiceTest, ProxyBypassList) {
|
| EXPECT_EQ("foopy1:8080", info[1].proxy_server().ToURI());
|
| }
|
|
|
| +TEST_F(ProxyServiceTest, MarkProxiesAsBadTests) {
|
| + ProxyConfig config;
|
| + config.proxy_rules().ParseFromString(
|
| + "http=foopy1:8080;http=foopy2:8080;http=foopy3.8080;http=foopy4:8080");
|
| + config.set_auto_detect(false);
|
| +
|
| + ProxyList proxy_list;
|
| + std::vector<ProxyServer> additional_bad_proxies;
|
| + for (const ProxyServer& proxy_server :
|
| + config.proxy_rules().proxies_for_http.GetAll()) {
|
| + proxy_list.AddProxyServer(proxy_server);
|
| + if (proxy_server == config.proxy_rules().proxies_for_http.Get())
|
| + continue;
|
| +
|
| + additional_bad_proxies.push_back(proxy_server);
|
| + }
|
| +
|
| + EXPECT_EQ(3u, additional_bad_proxies.size());
|
| +
|
| + ProxyService service(new MockProxyConfigService(config), nullptr, NULL);
|
| + ProxyInfo proxy_info;
|
| + proxy_info.UseProxyList(proxy_list);
|
| + const ProxyRetryInfoMap& retry_info = service.proxy_retry_info();
|
| + service.MarkProxiesAsBadUntil(proxy_info, base::TimeDelta::FromSeconds(1),
|
| + additional_bad_proxies, BoundNetLog());
|
| + ASSERT_EQ(4u, retry_info.size());
|
| + for (const ProxyServer& proxy_server :
|
| + config.proxy_rules().proxies_for_http.GetAll()) {
|
| + ProxyRetryInfoMap::const_iterator i =
|
| + retry_info.find(proxy_server.host_port_pair().ToString());
|
| + ASSERT_TRUE(i != retry_info.end());
|
| + }
|
| +}
|
|
|
| TEST_F(ProxyServiceTest, PerProtocolProxyTests) {
|
| ProxyConfig config;
|
|
|