| Index: components/data_reduction_proxy/core/common/data_reduction_proxy_params_unittest.cc
|
| diff --git a/components/data_reduction_proxy/core/common/data_reduction_proxy_params_unittest.cc b/components/data_reduction_proxy/core/common/data_reduction_proxy_params_unittest.cc
|
| index 77c9e4eece2e910dd975779017b7c84ea3d2fb21..3fc6bca42e05cb531478ceb8744868323a814a9d 100644
|
| --- a/components/data_reduction_proxy/core/common/data_reduction_proxy_params_unittest.cc
|
| +++ b/components/data_reduction_proxy/core/common/data_reduction_proxy_params_unittest.cc
|
| @@ -5,6 +5,7 @@
|
| #include "components/data_reduction_proxy/core/common/data_reduction_proxy_params.h"
|
|
|
| #include <map>
|
| +#include <vector>
|
|
|
| #include "base/command_line.h"
|
| #include "base/metrics/field_trial.h"
|
| @@ -12,6 +13,7 @@
|
| #include "components/data_reduction_proxy/core/common/data_reduction_proxy_params_test_utils.h"
|
| #include "components/data_reduction_proxy/core/common/data_reduction_proxy_switches.h"
|
| #include "net/proxy/proxy_server.h"
|
| +#include "testing/gmock/include/gmock/gmock.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
|
|
| namespace data_reduction_proxy {
|
| @@ -36,12 +38,43 @@ class DataReductionProxyParamsTest : public testing::Test {
|
| const std::string& expected_alt_origin,
|
| const std::string& expected_alt_fallback_origin,
|
| const std::string& expected_secure_proxy_check_url) {
|
| - EXPECT_EQ(expected_origin, params.origin().ToURI());
|
| - EXPECT_EQ(expected_fallback_origin, params.fallback_origin().ToURI());
|
| - EXPECT_EQ(expected_ssl_origin, params.ssl_origin().ToURI());
|
| - EXPECT_EQ(expected_alt_origin, params.alt_origin().ToURI());
|
| - EXPECT_EQ(expected_alt_fallback_origin,
|
| - params.alt_fallback_origin().ToURI());
|
| + std::vector<net::ProxyServer> proxies_for_http;
|
| + std::vector<net::ProxyServer> proxies_for_https;
|
| + std::vector<net::ProxyServer> alt_proxies_for_http;
|
| + std::vector<net::ProxyServer> alt_proxies_for_https;
|
| + if (!expected_origin.empty()) {
|
| + proxies_for_http.push_back(net::ProxyServer::FromURI(
|
| + expected_origin, net::ProxyServer::SCHEME_HTTP));
|
| + }
|
| +
|
| + if (!expected_fallback_origin.empty()) {
|
| + proxies_for_http.push_back(net::ProxyServer::FromURI(
|
| + expected_fallback_origin, net::ProxyServer::SCHEME_HTTP));
|
| + }
|
| +
|
| + if (!expected_alt_origin.empty()) {
|
| + alt_proxies_for_http.push_back(net::ProxyServer::FromURI(
|
| + expected_alt_origin, net::ProxyServer::SCHEME_HTTP));
|
| + }
|
| +
|
| + if (!expected_alt_fallback_origin.empty()) {
|
| + alt_proxies_for_http.push_back(net::ProxyServer::FromURI(
|
| + expected_alt_fallback_origin, net::ProxyServer::SCHEME_HTTP));
|
| + }
|
| +
|
| + if (!expected_ssl_origin.empty()) {
|
| + alt_proxies_for_https.push_back(net::ProxyServer::FromURI(
|
| + expected_ssl_origin, net::ProxyServer::SCHEME_HTTP));
|
| + }
|
| +
|
| + EXPECT_THAT(proxies_for_http,
|
| + testing::ContainerEq(params.proxies_for_http(false)));
|
| + EXPECT_THAT(proxies_for_https,
|
| + testing::ContainerEq(params.proxies_for_https(false)));
|
| + EXPECT_THAT(alt_proxies_for_http,
|
| + testing::ContainerEq(params.proxies_for_http(true)));
|
| + EXPECT_THAT(alt_proxies_for_https,
|
| + testing::ContainerEq(params.proxies_for_https(true)));
|
| EXPECT_EQ(GURL(expected_secure_proxy_check_url),
|
| params.secure_proxy_check_url());
|
| }
|
| @@ -54,12 +87,9 @@ TEST_F(DataReductionProxyParamsTest, EverythingDefined) {
|
| DataReductionProxyParams::kPromoAllowed,
|
| TestDataReductionProxyParams::HAS_EVERYTHING);
|
| CheckParams(params, true, true, true, false, true);
|
| - CheckValues(params,
|
| - TestDataReductionProxyParams::DefaultDevOrigin(),
|
| + CheckValues(params, TestDataReductionProxyParams::DefaultDevOrigin(),
|
| TestDataReductionProxyParams::DefaultDevFallbackOrigin(),
|
| - TestDataReductionProxyParams::DefaultSSLOrigin(),
|
| - TestDataReductionProxyParams::DefaultAltOrigin(),
|
| - TestDataReductionProxyParams::DefaultAltFallbackOrigin(),
|
| + std::string(), std::string(), std::string(),
|
| TestDataReductionProxyParams::DefaultSecureProxyCheckURL());
|
| }
|
|
|
| @@ -72,12 +102,9 @@ TEST_F(DataReductionProxyParamsTest, NoDevOrigin) {
|
| ~TestDataReductionProxyParams::HAS_DEV_ORIGIN &
|
| ~TestDataReductionProxyParams::HAS_DEV_FALLBACK_ORIGIN);
|
| CheckParams(params, true, true, true, false, true);
|
| - CheckValues(params,
|
| - TestDataReductionProxyParams::DefaultOrigin(),
|
| + CheckValues(params, TestDataReductionProxyParams::DefaultOrigin(),
|
| TestDataReductionProxyParams::DefaultFallbackOrigin(),
|
| - TestDataReductionProxyParams::DefaultSSLOrigin(),
|
| - TestDataReductionProxyParams::DefaultAltOrigin(),
|
| - TestDataReductionProxyParams::DefaultAltFallbackOrigin(),
|
| + std::string(), std::string(), std::string(),
|
| TestDataReductionProxyParams::DefaultSecureProxyCheckURL());
|
| }
|
|
|
| @@ -107,12 +134,10 @@ TEST_F(DataReductionProxyParamsTest, Flags) {
|
| DataReductionProxyParams::kPromoAllowed,
|
| TestDataReductionProxyParams::HAS_EVERYTHING);
|
| CheckParams(params, true, true, true, true, true);
|
| - CheckValues(params,
|
| - TestDataReductionProxyParams::FlagOrigin(),
|
| + CheckValues(params, TestDataReductionProxyParams::FlagOrigin(),
|
| TestDataReductionProxyParams::FlagFallbackOrigin(),
|
| TestDataReductionProxyParams::FlagSSLOrigin(),
|
| - TestDataReductionProxyParams::FlagAltOrigin(),
|
| - TestDataReductionProxyParams::FlagAltFallbackOrigin(),
|
| + TestDataReductionProxyParams::FlagAltOrigin(), std::string(),
|
| TestDataReductionProxyParams::FlagSecureProxyCheckURL());
|
| }
|
|
|
| @@ -530,237 +555,6 @@ TEST_F(DataReductionProxyParamsTest, InvalidConfigurations) {
|
| }
|
| }
|
|
|
| -TEST_F(DataReductionProxyParamsTest, IsDataReductionProxy) {
|
| - const struct {
|
| - net::HostPortPair host_port_pair;
|
| - bool fallback_allowed;
|
| - bool alt_fallback_allowed;
|
| - bool set_dev_origin;
|
| - bool expected_result;
|
| - net::HostPortPair expected_first;
|
| - net::HostPortPair expected_second;
|
| - bool expected_is_fallback;
|
| - bool expected_is_alternative;
|
| - bool expected_is_ssl;
|
| - } tests[] = {
|
| - {
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - true,
|
| - true,
|
| - false,
|
| - true,
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultFallbackOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - false,
|
| - false,
|
| - false
|
| - },
|
| - {
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - false,
|
| - false,
|
| - false,
|
| - true,
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - net::HostPortPair::FromURL(GURL()),
|
| - false,
|
| - false,
|
| - false
|
| - },
|
| - {
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultFallbackOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - true,
|
| - true,
|
| - false,
|
| - true,
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultFallbackOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - net::HostPortPair::FromURL(GURL()),
|
| - true,
|
| - false,
|
| - false
|
| - },
|
| - {
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultFallbackOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - false,
|
| - false,
|
| - false,
|
| - false,
|
| - net::HostPortPair::FromURL(GURL()),
|
| - net::HostPortPair::FromURL(GURL()),
|
| - false,
|
| - false,
|
| - false
|
| - },
|
| - {
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultAltOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - true,
|
| - true,
|
| - false,
|
| - true,
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultAltOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultAltFallbackOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - false,
|
| - true,
|
| - false
|
| - },
|
| - {
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultAltOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - false,
|
| - false,
|
| - false,
|
| - true,
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultAltOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - net::HostPortPair::FromURL(GURL()),
|
| - false,
|
| - true,
|
| - false
|
| - },
|
| - {
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultAltFallbackOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - true,
|
| - true,
|
| - false,
|
| - true,
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultAltFallbackOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - net::HostPortPair::FromURL(GURL()),
|
| - true,
|
| - true,
|
| - false
|
| - },
|
| - {
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultAltFallbackOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - false,
|
| - false,
|
| - false,
|
| - false,
|
| - net::HostPortPair::FromURL(GURL()),
|
| - net::HostPortPair::FromURL(GURL()),
|
| - false,
|
| - false,
|
| - false
|
| - },
|
| - {
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultSSLOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - true,
|
| - true,
|
| - false,
|
| - true,
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultSSLOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - net::HostPortPair::FromURL(GURL()),
|
| - false,
|
| - false,
|
| - true
|
| - },
|
| - {
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultDevOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - true,
|
| - true,
|
| - true,
|
| - true,
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultDevOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultDevFallbackOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - false,
|
| - false,
|
| - false
|
| - },
|
| - {
|
| - net::ProxyServer::FromURI(
|
| - TestDataReductionProxyParams::DefaultOrigin(),
|
| - net::ProxyServer::SCHEME_HTTP).host_port_pair(),
|
| - true,
|
| - true,
|
| - true,
|
| - false,
|
| - net::HostPortPair::FromURL(GURL()),
|
| - net::HostPortPair::FromURL(GURL()),
|
| - false,
|
| - false,
|
| - false
|
| - },
|
| - };
|
| - for (size_t i = 0; i < arraysize(tests); ++i) {
|
| - int flags = DataReductionProxyParams::kAllowed |
|
| - DataReductionProxyParams::kAlternativeAllowed;
|
| - if (tests[i].fallback_allowed)
|
| - flags |= DataReductionProxyParams::kFallbackAllowed;
|
| - if (tests[i].alt_fallback_allowed)
|
| - flags |= DataReductionProxyParams::kAlternativeFallbackAllowed;
|
| - unsigned int has_definitions = TestDataReductionProxyParams::HAS_EVERYTHING;
|
| - if (!tests[i].set_dev_origin) {
|
| - has_definitions &= ~TestDataReductionProxyParams::HAS_DEV_ORIGIN;
|
| - has_definitions &= ~TestDataReductionProxyParams::HAS_DEV_FALLBACK_ORIGIN;
|
| - }
|
| - TestDataReductionProxyParams params(flags, has_definitions);
|
| - DataReductionProxyTypeInfo proxy_type_info;
|
| - EXPECT_EQ(tests[i].expected_result,
|
| - params.IsDataReductionProxy(
|
| - tests[i].host_port_pair, &proxy_type_info)) << i;
|
| - EXPECT_EQ(net::ProxyServer::FromURI(
|
| - tests[i].expected_first.ToString(),
|
| - net::ProxyServer::SCHEME_HTTP).is_valid(),
|
| - proxy_type_info.proxy_servers.first.is_valid()) << i;
|
| - if (proxy_type_info.proxy_servers.first.is_valid()) {
|
| - EXPECT_TRUE(tests[i].expected_first.Equals(
|
| - proxy_type_info.proxy_servers.first.host_port_pair())) << i;
|
| - }
|
| - EXPECT_EQ(net::ProxyServer::FromURI(
|
| - tests[i].expected_second.ToString(),
|
| - net::ProxyServer::SCHEME_HTTP).is_valid(),
|
| - proxy_type_info.proxy_servers.second.is_valid()) << i;
|
| - if (proxy_type_info.proxy_servers.second.is_valid()) {
|
| - EXPECT_TRUE(tests[i].expected_second.Equals(
|
| - proxy_type_info.proxy_servers.second.host_port_pair())) << i;
|
| - }
|
| -
|
| - EXPECT_EQ(tests[i].expected_is_fallback, proxy_type_info.is_fallback) << i;
|
| - EXPECT_EQ(tests[i].expected_is_alternative, proxy_type_info.is_alternative)
|
| - << i;
|
| - EXPECT_EQ(tests[i].expected_is_ssl, proxy_type_info.is_ssl) << i;
|
| - }
|
| -}
|
| -
|
| TEST_F(DataReductionProxyParamsTest, AndroidOnePromoFieldTrial) {
|
| EXPECT_TRUE(DataReductionProxyParams::IsIncludedInAndroidOnePromoFieldTrial(
|
| "google/sprout/sprout:4.4.4/KPW53/1379542:user/release-keys"));
|
| @@ -820,9 +614,8 @@ TEST_F(DataReductionProxyParamsTest, SecureProxyCheckDefault) {
|
| }
|
|
|
| TEST_F(DataReductionProxyParamsTest, PopulateConfigResponse) {
|
| - DataReductionProxyParams params(
|
| - DataReductionProxyParams::kAllowed |
|
| - DataReductionProxyParams::kAlternativeAllowed);
|
| + DataReductionProxyParams params(DataReductionProxyParams::kAllowed |
|
| + DataReductionProxyParams::kFallbackAllowed);
|
| scoped_ptr<base::DictionaryValue> values(new base::DictionaryValue());
|
| params.PopulateConfigResponse(values.get());
|
| base::DictionaryValue* proxy_config;
|
| @@ -834,15 +627,17 @@ TEST_F(DataReductionProxyParamsTest, PopulateConfigResponse) {
|
| EXPECT_TRUE(proxy_servers->GetDictionary(0, &server));
|
| std::string host;
|
| int port;
|
| + const std::vector<net::ProxyServer>& proxies_for_http =
|
| + params.proxies_for_http(false);
|
| EXPECT_TRUE(server->GetString("host", &host));
|
| EXPECT_TRUE(server->GetInteger("port", &port));
|
| - EXPECT_EQ(params.origin().host_port_pair().host(), host);
|
| - EXPECT_EQ(params.origin().host_port_pair().port(), port);
|
| + EXPECT_EQ(proxies_for_http[0].host_port_pair().host(), host);
|
| + EXPECT_EQ(proxies_for_http[0].host_port_pair().port(), port);
|
| EXPECT_TRUE(proxy_servers->GetDictionary(1, &server));
|
| EXPECT_TRUE(server->GetString("host", &host));
|
| EXPECT_TRUE(server->GetInteger("port", &port));
|
| - EXPECT_EQ(params.fallback_origin().host_port_pair().host(), host);
|
| - EXPECT_EQ(params.fallback_origin().host_port_pair().port(), port);
|
| + EXPECT_EQ(proxies_for_http[1].host_port_pair().host(), host);
|
| + EXPECT_EQ(proxies_for_http[1].host_port_pair().port(), port);
|
| }
|
|
|
| } // namespace data_reduction_proxy
|
|
|